:root{
  --bg:#13151b;
  --panel:#11131a;
  --card:#141826;
  --text:#e9ecf1;
  --muted:#aab1c3;
  --line:rgba(255,255,255,.10);
  --primary:#7c5cff;
  --primary2:#27c6ff;
  --good:#22c55e;
  --warn:#f59e0b;
  --bad:#ef4444;
  --shadow: 0 12px 30px rgba(0,0,0,.35);
  --border:rgba(255,255,255,.14);
  --radius:16px;
  /* 1080p bruker 353-bredden som grunnlag, mens hele sideflaten skaleres
   * likt i begge akser av viewport-stage: 0,85x ved 1080p og 1,15x over 1080p. */
  --site-shell-width:1840px;
  --site-shell-padding-x:16px;
  --site-ui-scale:1;
}


@view-transition{
  navigation:auto;
}

::view-transition-old(root){
  animation:none;
}

::view-transition-new(root){
  animation:app-view-reveal .16s ease-out both;
}

@keyframes app-view-reveal{
  from{opacity:.995}
  to{opacity:1}
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  background-color:var(--bg);
  background-image:radial-gradient(1000px 500px at 15% 0%, rgba(124,92,255,.20), transparent 60%),
                   radial-gradient(900px 600px at 95% 0%, rgba(39,198,255,.18), transparent 55%);
  background-repeat:no-repeat;
  background-position:top left, top right;
  background-size:100% 100%, 100% 100%;
  background-attachment:fixed;
  color:var(--text);
  min-width:0;
  min-height:100vh;
  min-height:100dvh;
  overflow-x:auto;
}



body.theme-dark{color-scheme:dark;}
body.theme-light{
  color-scheme:light;
  --bg:#edece8;
  --panel:#f6f5f2;
  --card:#ffffff;
  --text:#1f2224;
  --muted:#5e6366;
  --line:#d7d4ce;
  --border:#d7d4ce;
  --primary:#be4227;
  --primary2:#a63820;
  --shadow:0 10px 26px rgba(31,34,36,.12);
  background-color:var(--bg);
  background-image:none;
}
body.theme-light .topbar,
body.theme-light .noticebar,
body.theme-light .hero,
body.theme-light .card,
body.theme-light .shop-top-search,
body.theme-light .global-search-results,
body.theme-light .hc-card,
body.theme-light .footer-editor-card,
body.theme-light .embed-browser,
body.theme-light .embed-browser-toolbar,
body.theme-light .messenger-thread-card,
body.theme-light .messenger-shell > .card,
body.theme-light .search{
  background:rgba(255,255,255,.94);
  border-color:rgba(15,23,42,.12);
  box-shadow:0 16px 40px rgba(15,23,42,.10);
  color:var(--text);
}
body.theme-light .shop-top-search,
body.theme-light .global-search-results,
body.theme-light .search{
  box-shadow:0 14px 32px rgba(15,23,42,.10);
}
body.theme-light .hero,
body.theme-light .card,
body.theme-light .messenger-shell > .card,
body.theme-light .messenger-thread-card{
  background:rgba(255,255,255,.90);
}
body.theme-light .btn,
body.theme-light button,
body.theme-light .tab,
body.theme-light .admin-align-picker label,
body.theme-light .footer-payment-logo,
body.theme-light .pill,
body.theme-light .badge,
body.theme-light .chip,
body.theme-light .msgbox,
body.theme-light details.collapse,
body.theme-light .bulk-bar,
body.theme-light .shop-mode-note,
body.theme-light .search-result-item,
body.theme-light .thumb,
body.theme-light .hc-close,
body.theme-light .hc-help,
body.theme-light .hc-box,
body.theme-light .hc-step-num{
  border-color:rgba(15,23,42,.12);
  background:rgba(15,23,42,.04);
  color:var(--text);
}
body.theme-light .btn:hover,
body.theme-light button:hover,
body.theme-light .tab:hover,
body.theme-light .admin-align-picker label:hover,
body.theme-light .chip:hover,
body.theme-light .search button:hover,
body.theme-light .hc-close:hover{
  background:rgba(15,23,42,.08);
  border-color:rgba(15,23,42,.18);
}
body.theme-light .btn.primary,
body.theme-light .tab.active,
body.theme-light .admin-align-picker input:checked + label,
body.theme-light .chip.active,
body.theme-light .search-result-item:hover,
body.theme-light .search-result-item.is-active{
  background:rgba(124,92,255,.12);
  border-color:rgba(124,92,255,.34);
}
body.theme-light input[type=email],
body.theme-light input[type=text],
body.theme-light input[type=tel],
body.theme-light textarea,
body.theme-light input[type=password],
body.theme-light input[type=number],
body.theme-light input[type=search],
body.theme-light input:not([type]),
body.theme-light select,
body.theme-light .admin-area input[type=email],
body.theme-light .admin-area input[type=text],
body.theme-light .admin-area input:not([type]),
body.theme-light .admin-area input[type=tel],
body.theme-light .admin-area input[type=password],
body.theme-light .admin-area input[type=number],
body.theme-light .admin-area input[type=search],
body.theme-light .admin-area input[type=url],
body.theme-light .admin-area input[type=date],
body.theme-light .admin-area input[type=datetime-local],
body.theme-light .admin-area textarea,
body.theme-light .admin-area select,
body.theme-light .admin-area input[type=file]{
  background:rgba(255,255,255,.96);
  color:var(--text);
  border:1px solid rgba(15,23,42,.16);
}
body.theme-light input::placeholder,
body.theme-light textarea::placeholder,
body.theme-light .shop-top-search input::placeholder{color:#7a8498;}
body.theme-light .shop-search-select{background:#fff;color:#213047;border-color:#ccd3df;}
body.theme-light select:hover,
body.theme-light .search select:hover,
body.theme-light .admin-area select:hover{border-color:rgba(15,23,42,.24);}
body.theme-light select:disabled,
body.theme-light .search select:disabled,
body.theme-light .admin-area select:disabled{background:rgba(15,23,42,.06);color:rgba(24,33,47,.62);}
body.theme-light .admin-area input[type=file]::file-selector-button,
body.theme-light .admin-area input[type=file]::-webkit-file-upload-button{background:rgba(15,23,42,.05);color:var(--text);border-color:rgba(15,23,42,.16);}
body.theme-light .admin-area input[type=file]::file-selector-button:hover,
body.theme-light .admin-area input[type=file]::-webkit-file-upload-button:hover{background:rgba(15,23,42,.10);}
body.theme-light th,
body.theme-light td,
body.theme-light .account-shortcuts,
body.theme-light .footer-editor-card,
body.theme-light .footer-payment-logo,
body.theme-light hr.sep{
  border-color:rgba(15,23,42,.10);
}
body.theme-light .search-result-thumb,
body.theme-light .thumb,
body.theme-light .footer a,
body.theme-light .footer,
body.theme-light .footer-copy,
body.theme-light .badge,
body.theme-light .chip,
body.theme-light .pill,
body.theme-light .search-result-meta,
body.theme-light .search-result-context,
body.theme-light .search-result-snippet,
body.theme-light .account-shortcut-copy,
body.theme-light .account-backlink,
body.theme-light .small,
body.theme-light .brand .sub,
body.theme-light .global-search-state,
body.theme-light .desc,
body.theme-light .search-summary-head p{color:var(--muted);}
body.theme-light .brand h1,
body.theme-light .footer-view-mode-link:hover,
body.theme-light .footer-view-mode-link:focus-visible,
body.theme-light .search-result-title,
body.theme-light .title,
body.theme-light .title a,
body.theme-light .footer-meta,
body.theme-light .account-shortcut .btn,
body.theme-light .theme-toggle-link.is-active{color:var(--text);}
body.theme-light .badge.good{color:#166534;}
body.theme-light .badge.warn{color:#92400e;}
body.theme-light .badge.bad{color:#b91c1c;}
body.theme-light .missing-note{color:#92400e;}
body.theme-light .thumb{background:linear-gradient(135deg, rgba(15,23,42,.06), rgba(15,23,42,.02));color:#64748b;}
body.theme-light .flash{border-color:rgba(34,197,94,.42);background:rgba(34,197,94,.30);color:var(--text);}
body.theme-light .flash.warn{border-color:rgba(245,158,11,.46);background:rgba(245,158,11,.34);}
body.theme-light .flash.bad{border-color:rgba(185,28,28,.46);background:#fee2e2;color:#7f1d1d;}
body.theme-light .app-popup{
  background:rgba(255,255,255,.99);
  border-color:rgba(15,23,42,.16);
  color:var(--text);
  box-shadow:0 24px 76px rgba(15,23,42,.18);
}
body.theme-light .app-popup.good{border-color:rgba(22,101,52,.38);background:#f0fdf4;color:#052e16;}
body.theme-light .app-popup.warn{border-color:rgba(146,64,14,.34);background:#fffbeb;color:#451a03;}
body.theme-light .app-popup.bad{border-color:rgba(185,28,28,.46);background:#fee2e2;color:#7f1d1d;}
body.theme-light .app-popup-close{
  border-color:rgba(15,23,42,.12);
  background:rgba(15,23,42,.04);
  color:var(--text);
}
body.theme-light .app-popup-close:hover,
body.theme-light .app-popup-close:focus-visible{
  background:rgba(15,23,42,.08);
  border-color:rgba(15,23,42,.18);
}
body.theme-light .frontpage-showcase{background:rgba(255,255,255,.92);border-color:rgba(15,23,42,.12);box-shadow:0 16px 40px rgba(15,23,42,.10);}
body.theme-light .frontpage-showcase-card{background:var(--card);border-color:rgba(15,23,42,.12);box-shadow:0 12px 30px rgba(15,23,42,.08);}
body.theme-light .frontpage-showcase-thumb{background:rgba(15,23,42,.035);border-color:rgba(15,23,42,.12);}
body.theme-light .frontpage-showcase-copy > span{color:var(--muted);}
body.theme-light .frontpage-showcase-price-label{color:var(--muted);}
body.theme-light .frontpage-showcase-price-value{color:var(--text);}
body.theme-light .frontpage-marquee-side.is-left{background:linear-gradient(to right, rgba(244,246,251,.94), rgba(244,246,251,0));}
body.theme-light .frontpage-marquee-side.is-right{background:linear-gradient(to left, rgba(244,246,251,.94), rgba(244,246,251,0));}
body.theme-light .frontpage-marquee[data-hover-zone="left"] .frontpage-marquee-side.is-left,
body.theme-light .frontpage-marquee[data-hover-zone="right"] .frontpage-marquee-side.is-right{background-color:rgba(15,23,42,.06);}
body.theme-light .noticebar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
body.theme-light .logo.logo-image{background:rgba(15,23,42,.03);border-color:rgba(15,23,42,.12);}
body.theme-light .footer-payment-logo img{filter:none;}

a{color:inherit}

/* Hele nettsiden skaleres proporsjonalt i både bredde og høyde. CSS zoom brukes
 * på felles viewport-stage slik at layout, tabeller, header, tekst og kontroller
 * får samme endring i begge akser uten å endre komponentene hver for seg. */
.site-viewport-stage{
  width:100%;
  min-width:0;
  margin:0 auto;
  zoom:var(--site-ui-scale);
}
/* 2560×1440 og større skjermer bruker maksimalt samme logiske arbeidsbredde.
 * Over 2560×1440 beholdes 10 % ekstra UI-skala (1,265×), men innholdet skal ikke
 * strekkes for å fylle skjermen. Viewport-stage kompenseres fortsatt for zoom slik
 * at siden bruker nødvendig bredde uten sidebred horisontal scrollbar. */
@media (min-width:2200px){:root{--site-shell-width:2040px;}}
/* CSS zoom over 1 må kompenseres i selve viewport-stage-bredden. Uten denne
 * kompensasjonen blir hele nettstedet bredere enn nettleservinduet og høyresiden
 * klippes av fordi body bevisst ikke har sidebred horisontal scrollbar. */
.site-viewport-stage[data-site-ui-scale="1.15"]{width:86.9565217%;}
.site-viewport-stage[data-site-ui-scale="1.265"]{width:79.0513834%;}

.container{
  width:100%;
  min-width:0;
  max-width:min(var(--site-shell-width), 100%);
  margin:0 auto;
  padding:24px var(--site-shell-padding-x);
}
code{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}
small{color:var(--muted)}

.topbar{
  position:relative;
  z-index:13000;
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border:1px solid var(--line);
  background: rgba(17,19,26,.94);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  overflow:visible;
  border-radius:12px;
  box-shadow: var(--shadow);
}
.brand{display:flex;align-items:center;gap:9px;min-width:0}
.brand-copy{display:grid;gap:2px;min-width:0}
.brand-copy h1,.brand-copy .sub{max-width:100%;overflow-wrap:normal;word-break:normal}
.brand-link{text-decoration:none;color:inherit}
.brand-link:hover{transform:none}
.brand-link:focus-visible{outline:2px solid rgba(124,92,255,.55);outline-offset:4px;border-radius:18px}
.logo{
  width:36px;height:36px;border-radius:10px;
  background: linear-gradient(135deg, var(--primary), var(--primary2));
  box-shadow: 0 10px 20px rgba(124,92,255,.25);
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
}
.logo.logo-image{
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:none;
}
.logo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.brand h1{font-size:14px;margin:0;letter-spacing:.2px}
.brand .sub{font-size:10.5px;color:var(--muted);margin-top:1px}

.nav{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.topbar .btn{min-height:44.9px;padding:9.2px 11.9px;border-radius:13.2px;font-size:15.8px;}
.topbar .btn .nav-icon{width:21px;height:21px;flex-basis:21px;}

.navwrap{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:0}
.nav.nav-user{justify-content:flex-end}
.nav.nav-shop{justify-content:flex-end}
.topbar-admin{grid-template-columns:minmax(220px,auto) minmax(0,1fr);align-items:center}
.topbar-admin .brand{max-width:100%}
.topbar-admin .navwrap{min-width:0;flex-direction:row;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.topbar-admin .nav.nav-shop{order:0;justify-content:flex-end}
.topbar-admin .nav.nav-user{order:1;justify-content:flex-end}
.nav-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:560px;color:var(--muted);font-size:12px;line-height:1.35;justify-content:flex-end;text-align:right}

@media (max-width: 900px){
  .topbar{grid-template-columns:1fr}
  .navwrap{align-items:stretch}
  .nav.nav-user,.nav.nav-shop,.nav-status{justify-content:flex-start;text-align:left}
  .header-theme-toggle-wrap{justify-content:flex-start}
  .topbar-with-utility .shop-utility-bar{width:100%; max-width:none;}
}

body.view-force-mobile:not(.admin-area){
  --site-shell-padding-x:16px;
}
body.view-force-mobile:not(.admin-area) .container{
  max-width:560px;
  padding:16px var(--site-shell-padding-x);
}
body.view-force-mobile:not(.admin-area) .topbar{
  grid-template-columns:1fr;
}
body.view-force-mobile:not(.admin-area) .navwrap{
  align-items:stretch;
}
body.view-force-mobile:not(.admin-area) .nav.nav-user,
body.view-force-mobile:not(.admin-area) .nav.nav-shop,
body.view-force-mobile:not(.admin-area) .nav-status{
  justify-content:flex-start;
  text-align:left;
}
body.view-force-mobile:not(.admin-area) .header-theme-toggle-wrap{
  justify-content:flex-start;
}
body.view-force-mobile:not(.admin-area) .shop-top-search{
  padding-bottom:12px;
}
body.view-force-mobile:not(.admin-area) .shop-top-search .btn{
  width:100%;
}
body.view-force-mobile:not(.admin-area) .global-search-results{
  position:static;
  margin-top:4px;
  max-height:50vh;
  width:100%;
}
body.view-force-mobile:not(.admin-area) .frontpage-hero{
  grid-template-columns:1fr;
}
body.view-force-mobile:not(.admin-area) .frontpage-hero .frontpage-hero-copy{order:1;}
body.view-force-mobile:not(.admin-area) .frontpage-hero .frontpage-hero-media{order:2;}
body.view-force-mobile:not(.admin-area) .frontpage-showcase-card{
  width:260px;
  min-width:260px;
}
body.view-force-mobile:not(.admin-area) .two-col,
body.view-force-mobile:not(.admin-area) .footer-copy-grid,
body.view-force-mobile:not(.admin-area) .footer-editor-grid{
  grid-template-columns:1fr;
}
body.view-force-mobile:not(.admin-area) .footer-copy-left,
body.view-force-mobile:not(.admin-area) .footer-copy-center,
body.view-force-mobile:not(.admin-area) .footer-copy-right{
  grid-column:auto;
}
body.view-force-mobile:not(.admin-area) .footer-copy-align-center,
body.view-force-mobile:not(.admin-area) .footer-copy-align-right{
  text-align:left;
}
body.view-force-mobile:not(.admin-area) .footer-bottom{
  grid-template-columns:1fr;
  align-items:flex-start;
}
body.view-force-mobile:not(.admin-area) .footer-view-mode,
body.view-force-mobile:not(.admin-area) .footer-payments-wrap,
body.view-force-mobile:not(.admin-area) .footer-payment-logos{
  justify-content:flex-start;
}
body.view-force-mobile:not(.admin-area) .footer-payment-logos{
  width:100%;
}
body.view-force-mobile:not(.admin-area) .nav{
  gap:8px;
}
body.view-force-mobile:not(.admin-area) .nav.nav-user .btn,
body.view-force-mobile:not(.admin-area) .nav.nav-shop .btn{
  flex:1 1 calc(50% - 4px);
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:10px 12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  text-decoration:none;
  transition: transform .08s ease, border-color .12s ease, background .12s ease;
  cursor:pointer;
}

.nav-icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
  display:inline-block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.92;
}
.nav-label{min-width:0;line-height:1.1;}
.btn .nav-icon{margin-left:-1px;}
.btn.primary .nav-icon{opacity:1;}
.theme-toggle-link{display:inline-flex;align-items:center;gap:4.5px;}
.theme-toggle-link .nav-icon{width:17px;height:17px;flex-basis:17px;stroke-width:2;}
body.theme-light .nav-icon{opacity:.78;}
body.theme-light .btn.primary .nav-icon{opacity:1;}

.btn:hover{transform: translateY(-1px); border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.07)}
.btn.primary{
  border-color: rgba(124,92,255,.40);
  background: linear-gradient(135deg, rgba(124,92,255,.22), rgba(39,198,255,.16));
}
.btn.primary:hover{border-color: rgba(124,92,255,.70)}
.btn.disabled, .btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;filter:saturate(.2);pointer-events:none;background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.10)}
.shop-mode-note{border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:12px;background:rgba(255,255,255,.03)}
.shop-mode-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn.danger{border-color: rgba(239,68,68,.35); background: rgba(239,68,68,.10)}
.btn.good{border-color: rgba(34,197,94,.35); background: rgba(34,197,94,.10)}

.hero{
  margin-top:16px;
  border-radius: var(--radius);
  border:1px solid var(--line);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  padding:18px 16px;
}
.hero h2{margin:0 0 6px 0;font-size:20px}
.hero p{margin:0;color:var(--muted);line-height:1.4}

.flash{
  margin-top:14px;padding:12px 14px;
  border:1px solid rgba(34,197,94,.35);
  background: rgba(34,197,94,.18);
  border-radius: 14px;
}
.flash.warn{
  border-color: rgba(245,158,11,.35);
  background: rgba(245,158,11,.20);
}
.flash.bad{
  border-color: rgba(239,68,68,.58);
  background: rgba(127,29,29,.72);
  color:#fef2f2;
}

.app-popup-layer[hidden]{display:none!important;}
.app-popup-layer{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  z-index:20000;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
}
.app-popup-layer.show{
  opacity:1;
}
.app-popup-layer:not(.show){pointer-events:none;visibility:hidden;}
.app-popup{
  position:relative;
  width:min(620px, calc(100vw - 28px));
  padding:18px 56px 18px 18px;
  border-radius:18px;
  border:1px solid rgba(34,197,94,.35);
  background:rgba(17,19,26,.96);
  color:var(--text);
  box-shadow:0 24px 76px rgba(0,0,0,.68);
  pointer-events:auto;
  opacity:0;
  transform:translateY(8px) scale(.98);
  transition:opacity .18s ease, transform .18s ease;
  text-align:center;
}
.app-popup.show{
  opacity:1;
  transform:translateY(0) scale(1);
}
.app-popup:not(.show){pointer-events:none;visibility:hidden;}
.app-popup.good{
  border-color:rgba(34,197,94,.58);
  background:#14532d;
  color:#f0fdf4;
}
.app-popup.warn{
  border-color:rgba(245,158,11,.62);
  background:#78350f;
  color:#fffbeb;
}
.app-popup.bad{
  border-color:rgba(239,68,68,.72);
  background:#7f1d1d;
  color:#fef2f2;
}
.app-popup-message{
  font-size:16px;
  line-height:1.45;
  font-weight:600;
}
.app-popup-close{
  position:absolute;
  top:10px;
  right:10px;
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.06);
  color:var(--text);
  font-size:22px;
  line-height:1;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
}
.app-popup-close:hover,
.app-popup-close:focus-visible{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.20);
}
@media (max-width: 640px){
  .app-popup{
    padding:16px 48px 16px 16px;
    border-radius:16px;
  }
  .app-popup-message{
    font-size:15px;
  }
}

.toolbar{
  margin-top:16px;
  display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;
}
.search{
  display:flex;gap:10px;align-items:center;flex:1;min-width:0;
  border:1px solid var(--line);border-radius:14px;
  padding:10px 12px;background: rgba(255,255,255,.04);
}
.search input{
  width:100%;border:0;outline:0;background:transparent;color:var(--text);
  font-size:14px;
}
.search select{
  width:auto;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid var(--line);
  background: rgba(0,0,0,.22);
  color: var(--text);
  font-size:13px;
  outline:none;
}
.search select:hover{border-color: rgba(255,255,255,.22)}
.search select:focus{box-shadow: 0 0 0 3px rgba(124,92,255,.18); border-color: rgba(124,92,255,.55)}
.search select:disabled{background: rgba(0,0,0,.14); color: rgba(233,236,241,.65)}
.search select option{background:#fff; color:#2b2b2b}
.search select option:disabled{color:#8a8a8a}
.search .hint{color:var(--muted);font-size:12px;white-space:nowrap}
.search button{
  padding:8px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor:pointer;
}
.search button:hover{background: rgba(255,255,255,.10)}

.results-count{margin-top:8px}
.search-summary-card{margin-top:14px}
.search-summary-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.search-summary-head h3{margin:0;font-size:18px}
.search-summary-head p{margin:4px 0 0 0;color:var(--muted);font-size:13px}
.search-summary-list{display:grid;gap:8px}

.thumb-link{display:block;color:inherit;text-decoration:none}
.title a{color:inherit;text-decoration:none}
.title a:hover{text-decoration:underline}

.grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap:14px;
}

.card{
  grid-column: span 12;
  border:1px solid var(--line);
  background: rgba(20,24,38,.72);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.card-inner{padding:14px 14px 16px 14px}
.card-head{display:flex;gap:14px;align-items:flex-start}

.missing-note{color:rgba(245,158,11,.95);font-weight:600;font-size:12px}
.thumb .missing-note{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:999px;border:1px solid rgba(245,158,11,.35);background:rgba(245,158,11,.10)}
.thumb{
  width:128px;height:96px;border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  flex:0 0 auto;
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.35);font-size:12px;
}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.title{margin:0;font-size:16px}
.desc{margin:6px 0 0 0;color:var(--muted);font-size:13px;line-height:1.35}
.product-detail-description{font-size:15px;line-height:1.45;color:var(--text);width:100%;max-width:min(100%, 72ch);white-space:normal;overflow-wrap:anywhere;word-break:normal}
.product-line-description{margin:0}
.admin-products-variant-description-preview{margin-top:6px;color:var(--text);font-size:14px;line-height:1.45;max-width:min(100%, 72ch);white-space:normal;overflow-wrap:anywhere;word-break:normal}
.meta{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:999px;
  font-size:12px;border:1px solid var(--line);
  background: rgba(255,255,255,.04);
  color:var(--muted);
}
.badge.good{border-color: rgba(34,197,94,.35); background: rgba(34,197,94,.18); color: #bff4cf}
.badge.warn{border-color: rgba(245,158,11,.35); background: rgba(245,158,11,.20); color: #ffe2b2}
.badge.bad{border-color: rgba(239,68,68,.35); background: rgba(239,68,68,.18); color: #ffc3c3}


/* Kategori-badge (klikkbar) og underkategori-"chips" */
.badge.link{
  color: var(--text);
  text-decoration:none;
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.03);
}
.badge.link:hover{
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.06);
}

.chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  text-decoration:none;
  font-size:13px;
  transition: transform .08s ease, border-color .12s ease, background .12s ease;
}
.chip:hover{
  transform: translateY(-1px);
  border-color: rgba(255,255,255,.24);
  background: rgba(255,255,255,.07);
}
.chip.muted{
  color:#8a8a8a;
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
}
.chip.muted:hover{
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.05);
}
.chip.active{
  border-color: rgba(59,130,246,.45);
  background: rgba(59,130,246,.16);
}
.chip.active:hover{
  border-color: rgba(59,130,246,.55);
  background: rgba(59,130,246,.20);
}


.category-nav-card,
.category-nav-card .card-inner{
  overflow: visible;
}
.category-nav-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px 0;
}
.category-nav-head h3{
  margin:0;
  font-size:18px;
}
.category-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 250px));
  gap:18px;
  max-width:518px;
  justify-content:start;
  align-items:stretch;
  overflow:visible;
}
.category-tile{
  position:relative;
  min-width:0;
  z-index:1;
}
.category-tile.is-preview-open{
  z-index:50;
}
.category-tile-link{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.035));
  color:var(--text);
  text-decoration:none;
  box-shadow:0 10px 26px rgba(0,0,0,.14);
  transition:transform .12s ease, border-color .12s ease, background .12s ease, box-shadow .12s ease;
}
.category-tile-link:hover,
.category-tile-link:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.26);
  background:linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.05));
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  outline:none;
}
.category-tile.is-empty .category-tile-link{
  opacity:.78;
}
.category-tile-copy{
  min-width:0;
  display:grid;
  gap:5px;
}
.category-tile-copy strong{
  font-size:16px;
  line-height:1.2;
}
.category-tile-copy span{
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
}
.category-tile-arrow{
  flex:0 0 auto;
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  font-size:24px;
  line-height:1;
}
.category-preview-overlay{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  width:min(430px, calc(100vw - 32px));
  max-height:390px;
  overflow:hidden;
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .12s ease, transform .12s ease, visibility 0s linear .12s;
  pointer-events:none;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(18,22,28,.97);
  box-shadow:0 24px 70px rgba(0,0,0,.42);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.category-preview-overlay.align-right{
  left:auto;
  right:0;
}
.category-tile.is-preview-open .category-preview-overlay{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  transition:opacity .12s ease, transform .12s ease;
}
.category-preview-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px 0;
}
.category-preview-title strong{
  font-size:14px;
}
.category-preview-title span{
  color:var(--muted);
  font-size:12px;
  white-space:nowrap;
}
.category-preview-products{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:9px;
}
.category-preview-product{
  min-width:0;
  display:grid;
  grid-template-columns:58px minmax(0, 1fr);
  gap:9px;
  align-items:center;
  padding:8px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
}
.category-preview-thumb{
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:var(--muted);
  font-size:10px;
  text-align:center;
  line-height:1.1;
}
.category-preview-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.category-preview-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.category-preview-copy strong{
  min-width:0;
  font-size:12px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.category-preview-copy span,
.category-preview-more,
.category-preview-empty{
  color:var(--muted);
  font-size:11px;
  line-height:1.25;
}
.category-preview-more{
  margin-top:10px;
}
.category-preview-empty{
  padding:12px;
  border-radius:14px;
  border:1px dashed rgba(255,255,255,.14);
}

body.theme-light .category-tile-link{
  border-color:rgba(15,23,42,.12);
  background:linear-gradient(145deg, rgba(255,255,255,.96), rgba(246,248,251,.92));
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}
body.theme-light .category-tile-link:hover,
body.theme-light .category-tile-link:focus-visible{
  border-color:rgba(15,23,42,.22);
  background:linear-gradient(145deg, #fff, #f6f8fb);
  box-shadow:0 14px 30px rgba(15,23,42,.12);
}
body.theme-light .category-tile-arrow{
  border-color:rgba(15,23,42,.12);
  background:rgba(15,23,42,.04);
}
body.theme-light .category-preview-overlay{
  border-color:rgba(15,23,42,.16);
  background:rgba(255,255,255,.98);
  box-shadow:0 24px 70px rgba(15,23,42,.20);
}
body.theme-light .category-preview-product,
body.theme-light .category-preview-thumb{
  border-color:rgba(15,23,42,.10);
  background:rgba(15,23,42,.035);
}

@media (max-width: 640px){
  .category-grid{
    grid-template-columns:minmax(0, 1fr);
    max-width:none;
    gap:14px;
  }
  .category-tile-link{min-height:72px;padding:13px;}
  .category-preview-overlay{width:min(100%, calc(100vw - 28px));}
  .category-preview-products{grid-template-columns:1fr;}
}

/* Admin: reservasjoner – kundemelding + notat */
.msgbox{margin-top:8px;padding:10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.03);color:var(--text);font-size:12px;line-height:1.35}
details.note{margin-top:8px}
details.note summary{cursor:pointer;color:var(--muted);font-size:12px}
.noteform{margin-top:8px;display:grid;gap:8px}
.noteform textarea{min-height:86px}

.card-actions{
  margin-top:12px;
  display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;
}
.small{font-size:12px;color:var(--muted)}

.formline{display:flex;gap:10px;flex-wrap:wrap}
input[type=email], input[type=text], input[type=tel], textarea, input[type=password], input[type=number], input[type=search], input:not([type]){
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: rgba(0,0,0,.22);
  color: var(--text);
  outline: none;
}


body.admin-area{
  --site-shell-padding-x:20px;
  --admin-card-bg:rgba(18,23,35,.96);
  --admin-card-border:rgba(148,163,184,.18);
  --admin-card-soft:rgba(255,255,255,.035);
  --admin-field-bg:rgba(6,10,18,.62);
  --admin-field-border:rgba(148,163,184,.24);
  --admin-field-focus:rgba(39,198,255,.48);
  --admin-table-border:rgba(148,163,184,.16);
  --admin-table-head:rgba(21,28,42,.98);
  --admin-table-row:rgba(255,255,255,.018);
  --admin-table-row-alt:rgba(255,255,255,.036);
  --admin-table-row-hover:rgba(124,92,255,.075);
}
body.theme-light.admin-area{
  --admin-card-bg:rgba(255,255,255,.96);
  --admin-card-border:rgba(100,116,139,.22);
  --admin-card-soft:rgba(15,23,42,.035);
  --admin-field-bg:rgba(255,255,255,.98);
  --admin-field-border:rgba(100,116,139,.26);
  --admin-field-focus:rgba(190,66,39,.40);
  --admin-table-border:rgba(100,116,139,.20);
  --admin-table-head:rgba(247,246,242,.98);
  --admin-table-row:rgba(15,23,42,.018);
  --admin-table-row-alt:rgba(15,23,42,.036);
  --admin-table-row-hover:rgba(190,66,39,.070);
}
body.admin-area.view-force-mobile .container{
  max-width:var(--site-shell-width);
  padding:24px var(--site-shell-padding-x);
}
.admin-area,
.admin-area *{
  box-sizing:border-box;
}
.admin-area .container{
  width:100%;
  max-width:var(--site-shell-width);
}
.admin-area .hero,
.admin-area .card,
.admin-area .card-inner,
.admin-area dialog,
.admin-area .toolbar,
.admin-area .search,
.admin-area .field,
.admin-area .admin-media-panel,
.admin-area .admin-media-picker,
.admin-area .admin-media-page-card{
  min-width:0;
}
.admin-area .card{
  width:100%;
  max-width:100%;
  background:var(--admin-card-bg);
  border-color:var(--admin-card-border);
}
.admin-area .card-inner{
  width:100%;
  padding:16px;
}
.admin-area form{
  min-width:0;
  max-width:100%;
}
.admin-area .field,
.admin-area .form-field,
.admin-area .settings-field{
  display:grid;
  gap:7px;
  min-width:0;
  align-content:start;
}
.admin-area label.small,
.admin-area .form-label{
  color:var(--muted);
  line-height:1.35;
}
.admin-area .checkbox-line{
  display:flex;
  align-items:flex-start;
  gap:10px;
  line-height:1.35;
}
.admin-area .checkbox-line input[type="checkbox"]{
  flex:0 0 auto;
  margin-top:2px;
}
.admin-area input[type=email],
.admin-area input[type=text],
.admin-area input:not([type]),
.admin-area input[type=tel],
.admin-area input[type=password],
.admin-area input[type=number],
.admin-area input[type=search],
.admin-area input[type=url],
.admin-area input[type=date],
.admin-area input[type=datetime-local],
.admin-area textarea,
.admin-area select{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:42px;
  background:var(--admin-field-bg);
  border-color:var(--admin-field-border);
}
.admin-area .search > input,
.admin-area .admin-media-panel input,
.admin-area .admin-media-panel select,
.admin-area .admin-media-panel textarea,
.admin-area dialog input,
.admin-area dialog select,
.admin-area dialog textarea{
  width:100%;
  max-width:100%;
  min-width:0;
}
.admin-area input:focus,
.admin-area select:focus,
.admin-area textarea:focus{
  border-color:var(--admin-field-focus);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--admin-field-focus) 28%,transparent);
}
.admin-area textarea,
.admin-area .small,
.admin-area td,
.admin-area th,
.admin-area label,
.admin-area p{
  overflow-wrap:anywhere;
}
.admin-area .btn,
.admin-area button.btn{
  width:auto;
  max-width:100%;
  min-height:42px;
  white-space:nowrap;
  justify-self:start;
}
.admin-area .btn.danger{
  justify-self:start;
}
.admin-area .formline,
.admin-area .settings-actions,
.admin-area .inventory-actions,
.admin-area .admin-media-actions,
.admin-area .admin-media-page-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  min-width:0;
}
.admin-area .formline > *,
.admin-area .product-action-row > *,
.admin-area .admin-media-actions > *,
.admin-area .admin-media-page-actions > *{
  min-width:0;
}
.admin-area dialog{
  max-width:min(960px,calc(100vw - 24px));
  width:min(960px,calc(100vw - 24px));
}
.admin-area dialog:not([open]){display:none;}

.admin-area .settings-shell{
  display:grid;
  gap:14px;
  width:100%;
  max-width:100%;
}
.admin-area .settings-hero{
  margin-top:10px;
  padding:12px 14px;
}
.admin-area .settings-hero h2{font-size:18px;margin-bottom:3px;}
.admin-area .settings-hero p{font-size:12.5px;line-height:1.35;}
.admin-area .settings-tabs-card{
  margin-top:10px;
}
.admin-area .settings-tabs-card .card-inner{
  padding:10px;
}
.admin-area .settings-card{
  margin-top:10px;
  width:100%;
}
.admin-area .settings-card--narrow,
.admin-area .settings-card--medium,
.admin-area .settings-card--wide{max-width:none;}
.admin-area .settings-card .card-inner{
  display:grid;
  gap:10px;
  padding:12px;
}
.admin-area .settings-title{
  margin:0;
  font-size:1rem;
}
.admin-area .settings-form{
  display:grid;
  gap:8px;
  width:100%;
  max-width:100%;
}
.admin-area .settings-form--chapters{gap:10px;}
.admin-area .settings-stack{
  display:grid;
  gap:8px;
  min-width:0;
}
.admin-area .settings-actions{
  margin-top:0;
}
.admin-area .settings-actions .btn{
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
}
.admin-area .settings-help,
.admin-area .settings-muted{
  color:var(--muted);
  line-height:1.35;
}
.admin-area .settings-notice{
  margin-top:10px;
}
.admin-area .settings-info-grid{
  display:grid;
  gap:8px;
}
.admin-area .settings-inline-form{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:0;
}
.admin-area .settings-test-panel{
  display:grid;
  gap:8px;
  margin-top:0;
}
.admin-area .settings-payment-section{
  display:grid;
  gap:8px;
}

/* Globale innstillinger: kompakte kapitler og tydelige rammer. */
.admin-area .settings-chapter-grid,
.admin-area .settings-test-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  align-items:start;
  min-width:0;
}
.admin-area .settings-chapter:not([hidden]),
.admin-area .settings-subpanel{
  display:grid;
  gap:8px;
  min-width:0;
  margin:0;
  padding:11px;
  border:1px solid var(--admin-card-border);
  border-radius:12px;
  background:var(--admin-card-soft);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.admin-area .settings-chapter--full{grid-column:1/-1;}
.admin-area .settings-chapter--security{
  align-self:stretch;
}
.admin-area .settings-chapter-head,
.admin-area .settings-subchapter-head{
  display:grid;
  gap:2px;
  min-width:0;
  padding-bottom:6px;
  border-bottom:1px solid var(--admin-card-border);
}
.admin-area .settings-chapter-head h4,
.admin-area .settings-subchapter-head h5{
  margin:0;
  color:var(--text);
  font-size:.94rem;
  line-height:1.2;
}
.admin-area .settings-chapter-head span,
.admin-area .settings-subchapter-head span{
  color:var(--muted);
  font-size:11.5px;
  line-height:1.3;
}
.admin-area .settings-fields-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 18px;
  align-items:start;
  min-width:0;
}
.admin-area .settings-fields-grid--wide{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.admin-area .settings-fields-grid--compact{
  grid-template-columns:repeat(2,minmax(10rem,14rem));
  justify-content:start;
}
.admin-area .settings-fields-grid--ids{
  grid-template-columns:minmax(10rem,18rem) minmax(12rem,18rem) minmax(12rem,18rem);
  justify-content:start;
}
.admin-area .settings-fields-grid--identity{
  grid-template-columns:minmax(7rem,9rem) minmax(7rem,9rem) minmax(12rem,20rem);
  justify-content:start;
}
.admin-area .settings-field{
  gap:5px;
  align-self:start;
}
.admin-area .settings-field--check{
  align-content:start;
  min-height:0;
}
.admin-area .settings-field--full{
  grid-column:1/-1;
}
.admin-area .settings-clear-secret{
  margin-top:1px;
  font-size:11.5px;
  color:var(--muted);
}
.admin-area .settings-provider-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  align-items:start;
  min-width:0;
}
.admin-area .settings-subchapter{
  display:grid;
  gap:8px;
  min-width:0;
  padding:10px;
  border:1px solid var(--admin-card-border);
  border-radius:11px;
  background:color-mix(in srgb,var(--admin-card-bg) 72%,transparent);
}
.admin-area .settings-provider-panel .settings-status-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.admin-area .settings-control-strip{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.admin-area .settings-control-strip .settings-chapter-head{
  border-bottom:0;
  padding-bottom:0;
}
.admin-area .settings-save-row{
  padding:2px 0 0;
}
.admin-area .settings-database-note{
  margin-top:0;
}
.admin-area .settings-card input[type=email],
.admin-area .settings-card input[type=text],
.admin-area .settings-card input:not([type]),
.admin-area .settings-card input[type=tel],
.admin-area .settings-card input[type=password],
.admin-area .settings-card input[type=number],
.admin-area .settings-card input[type=search],
.admin-area .settings-card input[type=url],
.admin-area .settings-card input[type=date],
.admin-area .settings-card input[type=datetime-local],
.admin-area .settings-card select{
  min-height:38px;
  padding-top:7px;
  padding-bottom:7px;
}
.admin-area .settings-card textarea{
  min-height:72px;
  padding:8px 10px;
}
.admin-area .settings-card .btn,
.admin-area .settings-card button.btn,
.admin-area .admin-users-card .btn,
.admin-area .admin-users-card button.btn{
  box-sizing:border-box;
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  width:auto;
  min-height:36px;
  height:auto;
  max-height:none;
  padding:7px 10px;
  border-radius:10px;
  font-size:.82rem;
  line-height:1.25;
  white-space:normal;
  text-align:center;
  overflow-wrap:anywhere;
  word-break:break-word;
  text-wrap:wrap;
}
.admin-area .settings-card label,
.admin-area .settings-card .form-label{
  font-size:12px;
}
.admin-area .settings-card code{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media(max-width:1180px){
  .admin-area .settings-fields-grid,
  .admin-area .settings-fields-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .admin-area .settings-fields-grid,
  .admin-area .settings-fields-grid--wide,
  .admin-area .settings-fields-grid--compact,
  .admin-area .settings-fields-grid--ids,
  .admin-area .settings-fields-grid--identity{grid-template-columns:1fr;}
  .admin-area .settings-chapter--full{grid-column:auto;}
  .admin-area .settings-control-strip{grid-template-columns:1fr;}
}
.admin-area .admin-users-card{
  margin-top:14px;
}
.admin-area .admin-users-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.admin-area .admin-users-stack,
.admin-area .admin-users-form{
  display:grid;
  gap:10px;
  min-width:0;
}
.admin-area .admin-users-table-wrap{
  width:100%;
  overflow:auto;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
}
.admin-area .admin-users-table{
  min-width:920px;
}
.admin-area .admin-users-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.admin-area .admin-users-edit-grid{
  display:grid;
  gap:10px;
  min-width:0;
}
.admin-area .admin-users-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.admin-area .admin-users-delete-form{
  margin-top:10px;
}
@media (max-width:900px){
  body.admin-area,
  body.admin-area.view-force-mobile{
    --site-shell-padding-x:14px;
  }
  body.admin-area.view-force-mobile .container{
    padding:16px var(--site-shell-padding-x);
  }
  .admin-area .topbar-admin{
    grid-template-columns:1fr;
  }
  .admin-area .admin-users-grid{
    grid-template-columns:1fr;
  }
  .admin-area .settings-card--narrow,
  .admin-area .settings-card--medium,
  .admin-area .settings-card--wide{
    max-width:none;
  }
}
@media (max-width:760px){
  .admin-area .btn{white-space:normal;}
}

/* Admin: Lager og lagerkorreksjon */
.inventory-shell{display:grid;gap:14px;width:100%;max-width:none;min-width:0}
.inventory-header-note{max-width:980px;font-size:13px;color:var(--muted);line-height:1.45}
.inventory-subtabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.inventory-shell > .card,
.inventory-overview-shell > .card,
.inventory-main-grid > .card,
.inventory-stocktake-grid > .card,
.inventory-batch-shell > .card,
.inventory-batch-grid > .card{grid-column:auto;width:100%;max-width:100%;min-width:0}
.inventory-filter-shell{display:grid;gap:10px}
.inventory-toolbar-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.inventory-toolbar-copy{max-width:760px}
.inventory-list-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.inventory-list-count{font-size:12px;color:var(--muted);white-space:nowrap}
.inventory-overview-shell{display:grid;gap:14px;width:100%;max-width:none;min-width:0}
.inventory-main-grid,.inventory-stocktake-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.45fr) minmax(360px,.95fr);align-items:start}
.inventory-table,.stocktake-table,.history-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}
.inventory-table th,.inventory-table td,.stocktake-table th,.stocktake-table td,.history-table th,.history-table td{padding:9px 10px;border-top:1px solid var(--admin-table-border);vertical-align:top;font-size:13px;word-break:normal;overflow-wrap:anywhere;line-height:1.35}
.inventory-table th,.stocktake-table th,.history-table th{font-size:12px;color:var(--muted);text-align:left;background:var(--admin-table-head)}
.inventory-table tbody tr:nth-child(even) td,.stocktake-table tbody tr:nth-child(even) td,.history-table tbody tr:nth-child(even) td{background:var(--admin-table-row-alt)}
.inventory-table tbody tr:hover td,.stocktake-table tbody tr:hover td,.history-table tbody tr:hover td{background:var(--admin-table-row-hover)}
.inventory-table tbody tr.group-row td,.stocktake-table tbody tr.group-row td,.history-table tbody tr.group-row td{background:linear-gradient(90deg,rgba(124,92,255,.38),rgba(124,92,255,.18))!important;font-weight:800;color:#fff!important;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.10);letter-spacing:.01em;text-transform:none}
.inventory-table tbody tr.group-row:hover td,.stocktake-table tbody tr.group-row:hover td,.history-table tbody tr.group-row:hover td{background:linear-gradient(90deg,rgba(124,92,255,.44),rgba(124,92,255,.22))!important;color:#fff!important}
.stocktake-table tfoot td,.stocktake-table tbody tr.stocktake-total-row td{background:rgba(124,92,255,.14);border-top:2px solid rgba(124,92,255,.35);font-weight:700}
.stocktake-table th,.stocktake-table td{padding:7px 7px;font-size:12px;line-height:1.28}
.stocktake-table th{font-size:11px}
.stocktake-count-invalid{border-color:rgba(239,68,68,.95)!important;background:rgba(239,68,68,.12)!important;color:var(--text)}
.stocktake-red-popup[hidden]{display:none!important}
.stocktake-red-popup{position:fixed;top:22px;right:22px;z-index:10050;width:min(440px,calc(100vw - 44px));padding:14px 16px;border:1px solid rgba(239,68,68,.92);border-radius:16px;background:#7f1d1d;color:#fff;box-shadow:0 18px 44px rgba(0,0,0,.32);font-weight:800;line-height:1.35;transform:translateY(-8px);opacity:0;transition:opacity .16s ease,transform .16s ease}
.stocktake-red-popup.show{opacity:1;transform:translateY(0)}
body.theme-light .stocktake-red-popup{background:#fee2e2;color:#7f1d1d;border-color:rgba(185,28,28,.45);box-shadow:0 18px 44px rgba(127,29,29,.20)}
body.theme-light .stocktake-table tfoot td,body.theme-light .stocktake-table tbody tr.stocktake-total-row td{background:rgba(190,66,39,.10);border-top-color:rgba(190,66,39,.25)}
body.theme-light .inventory-table tbody tr.group-row td,body.theme-light .stocktake-table tbody tr.group-row td,body.theme-light .history-table tbody tr.group-row td{background:linear-gradient(90deg,rgba(190,66,39,.25),rgba(190,66,39,.12))!important;color:#4a1e13!important;border-top:1px solid rgba(190,66,39,.25);border-bottom:1px solid rgba(190,66,39,.18)}
body.theme-light .inventory-table tbody tr.group-row:hover td,body.theme-light .stocktake-table tbody tr.group-row:hover td,body.theme-light .history-table tbody tr.group-row:hover td{background:linear-gradient(90deg,rgba(190,66,39,.30),rgba(190,66,39,.16))!important;color:#4a1e13!important}
.inventory-compact{font-size:12px;color:var(--muted)}
.inventory-muted{color:var(--muted)}
.inventory-note{font-size:12px;color:var(--muted);line-height:1.4}
.inventory-list-wrap{border:1px solid rgba(255,255,255,.06);border-radius:14px;overflow:hidden}
.inventory-list-scroll{max-height:72vh;overflow-y:auto;overflow-x:auto}
.inventory-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:10px}
.inventory-toolbar .field{display:grid;gap:6px;min-width:150px;flex:1}
.inventory-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inventory-row-actions{gap:5px}
.inventory-row-actions .btn{padding:6px 8px;font-size:12px;min-height:34px}
.inventory-inline-panel{border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);padding:12px;margin-top:12px}
.inventory-inline-panel summary{cursor:pointer}
.inventory-inline-panel[open]{display:grid;gap:10px}
.inventory-mini-fields{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}
.inventory-mini-fields .field{display:grid;gap:5px;min-width:0}
.inventory-section-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
.inventory-section-title h3{margin:0}
.inventory-sheet-statusline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:4px;font-size:12px;color:var(--muted)}
.inventory-page-statusline{margin:0 2px 10px}
.inventory-sheet-statusline span{display:inline-flex;gap:4px;align-items:baseline}
.inventory-sheet-statusline strong{color:var(--text);font-weight:700}
.inventory-hidden-form{display:none}
.inventory-inline-post{display:inline-flex;margin:0;gap:6px;align-items:center}
.inventory-sheet-inline-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:6px}
.inventory-sheet-inline-actions .btn{padding:5px 8px;min-height:30px;font-size:12px}
.inventory-help-wrap{position:relative;display:inline-flex;align-items:center;vertical-align:middle}
.inventory-help-icon{width:22px;height:22px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:var(--text);font-weight:700;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:help;padding:0}
.inventory-help-bubble{display:none!important}
.inventory-floating-tooltip{position:fixed;z-index:2147483000;width:max-content;max-width:min(320px,calc(100vw - 20px));padding:9px 10px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:#172033;color:var(--text);box-shadow:var(--shadow);font-size:12px;line-height:1.35;font-weight:400;pointer-events:none;white-space:normal;overflow-wrap:break-word}
.inventory-floating-tooltip[hidden]{display:none!important}
.inventory-th-label{display:flex;align-items:flex-start;gap:5px;min-width:0}
.inventory-th-label .inventory-help-icon{width:18px;height:18px;font-size:11px;flex:0 0 auto;align-self:flex-start}
.inventory-batch-source-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.04);padding:3px 7px;font-size:12px;color:var(--muted)}
.inventory-stack{display:grid;gap:3px}
.inventory-stack .row{display:flex;justify-content:space-between;gap:8px}
.inventory-stack .row .label{color:var(--muted);font-size:12px}
.inventory-selected{background:rgba(255,255,255,.04)}
.inventory-inline-form{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.inventory-inline-form .field{display:grid;gap:6px}
.inventory-facts{display:grid;gap:0;margin-top:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.03);overflow:hidden}
.inventory-fact-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:10px 12px;border-top:1px solid rgba(255,255,255,.08)}
.inventory-fact-row:first-child{border-top:none}
.inventory-fact-label{font-size:12px;color:var(--muted)}
.inventory-fact-value{font-weight:700;text-align:right}
.inventory-month-table{margin-bottom:14px}
.inventory-batch-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);align-items:start}
.inventory-batch-grid .card{margin:0}
.inventory-batch-primary .card-inner,.inventory-batch-secondary .card-inner,.inventory-batch-list-card .card-inner{padding:14px}
.inventory-batch-primary,.inventory-batch-secondary,.inventory-batch-list-card{box-shadow:var(--shadow)}
.inventory-batch-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
.inventory-batch-header h4{margin:0}
.inventory-batch-picker{display:grid;gap:10px;grid-template-columns:minmax(260px,340px);align-items:end}
.inventory-batch-picker .field{display:grid;gap:6px;min-width:0;max-width:340px}
.inventory-batch-workspace{display:grid;gap:12px}
.inventory-batch-toolbar{display:flex;gap:12px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin:0 0 12px}
.inventory-batch-copy{max-width:640px}
.inventory-batch-toolbar-actions{display:grid;gap:10px;grid-template-columns:minmax(260px,340px);align-items:end;justify-content:end}
.inventory-batch-toolbar-actions .field{display:grid;gap:6px;min-width:0;max-width:340px}
.inventory-batch-form-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(180px,1fr))}
.inventory-batch-form-grid .field{display:grid;gap:6px}
.inventory-batch-form-grid .field.span-2{grid-column:1/-1}
.inventory-batch-metrics{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(180px,1fr));margin:12px 0 14px}
.inventory-batch-metric{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.03);padding:10px 12px;min-height:84px;display:flex;flex-direction:column;justify-content:center}
.inventory-batch-metric .k{font-size:12px;color:var(--muted);margin-bottom:4px}
.inventory-batch-metric .v{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}
.inventory-batch-divider{height:1px;background:rgba(255,255,255,.08);margin:14px 0}
.inventory-batch-form-shell{border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);padding:12px}
.inventory-batch-line-head{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;align-items:end;margin-bottom:10px}
.inventory-batch-line-form{display:grid;gap:10px;grid-template-columns:minmax(0,1.8fr) repeat(4,minmax(0,0.78fr));align-items:end;width:100%}
.inventory-batch-line-form > *{min-width:0}
.inventory-batch-line-form .field{display:grid;gap:6px;min-width:0}
.inventory-batch-line-form .field.product-field{grid-column:auto}
.inventory-batch-line-form .field.note-field{grid-column:1 / -1}
.inventory-batch-line-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:10px}
.inventory-batch-list-card .inventory-list-scroll{max-height:320px}
.inventory-batch-list-title{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.inventory-batch-mini{font-size:11px;color:var(--muted)}
.inventory-batch-dialog-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.inventory-batch-dialog-grid > *{min-width:0}
.inventory-batch-dialog-grid .field{display:grid;gap:6px}
.inventory-batch-dialog-grid .field.span-2{grid-column:1 / -1}
.inventory-batch-dialog-grid .inventory-media-picker{grid-column:1 / -1}
.inventory-batch-toggle{display:flex;align-items:center;gap:8px;min-height:42px}
.inventory-batch-primary input,.inventory-batch-primary select,.inventory-batch-primary textarea,.inventory-batch-primary .btn,.inventory-batch-secondary input,.inventory-batch-secondary select,.inventory-batch-secondary textarea,.inventory-batch-secondary .btn,.inventory-dialog-card input,.inventory-dialog-card select,.inventory-dialog-card textarea,.inventory-dialog-card .btn{box-sizing:border-box}
.inventory-batch-primary input,.inventory-batch-primary select,.inventory-batch-primary .btn,.inventory-batch-secondary input,.inventory-batch-secondary select,.inventory-batch-secondary .btn,.inventory-dialog-card input,.inventory-dialog-card select,.inventory-dialog-card .btn{min-height:42px}
.inventory-batch-primary textarea,.inventory-batch-secondary textarea,.inventory-dialog-card textarea{min-height:110px;resize:vertical}
.inventory-batch-line-head .inventory-actions{justify-content:flex-end;flex-wrap:nowrap;align-items:end}
.inventory-batch-line-head .inventory-actions .btn{min-width:170px;justify-content:center}
.inventory-batch-picker .btn,.inventory-batch-line-actions .btn,.inventory-dialog-actions .btn{min-width:170px;justify-content:center}
.inventory-batch-picker select,.inventory-batch-form-grid input,.inventory-batch-form-grid select,.inventory-batch-line-form input,.inventory-batch-line-form select,.inventory-batch-dialog-grid input,.inventory-batch-dialog-grid select,.inventory-batch-dialog-grid textarea{width:100%;min-width:0}
.inventory-batch-line-form .field:not(.product-field):not(.note-field){max-width:130px}
.inventory-session-list{display:grid;gap:8px}
.inventory-stocktake-grid{grid-template-columns:1fr}
.inventory-stocktake-top{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);align-items:start}
.inventory-stocktake-create-column{display:grid;gap:12px;min-width:0}
.inventory-stocktake-create-form{display:grid;gap:10px}
.inventory-year-end-card{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.045)}
body.theme-light .inventory-year-end-card{border-color:rgba(0,0,0,.10);background:rgba(190,66,39,.055)}
.inventory-stocktake-session-panel{display:grid;gap:10px;min-width:0}
.inventory-stocktake-session-title{margin-bottom:0}
.inventory-stocktake-session-title h4{margin:0}
.inventory-stocktake-session-filter{display:grid;gap:10px;grid-template-columns:minmax(180px,1fr) repeat(2,minmax(140px,180px)) auto;align-items:end}
.inventory-stocktake-session-filter .field{display:grid;gap:6px;min-width:0}
.inventory-stocktake-session-filter input{width:100%;min-width:0;box-sizing:border-box}
.inventory-stocktake-session-scroll{max-height:238px;overflow-y:auto;overflow-x:hidden;padding-right:4px}
.stocktake-product-label{display:grid;gap:2px;min-width:0}
.stocktake-product-label--variant{position:relative;margin-left:26px;padding-left:12px;border-left:1px dotted rgba(255,255,255,.25)}
.stocktake-product-label--variant::before{content:"";position:absolute;left:-1px;top:11px;width:10px;border-top:1px dotted rgba(255,255,255,.25)}
body.theme-light .stocktake-product-label--variant{border-left-color:rgba(0,0,0,.24)}
body.theme-light .stocktake-product-label--variant::before{border-top-color:rgba(0,0,0,.24)}
.inventory-session-item{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.03)}
.inventory-session-item .inventory-actions{justify-content:flex-end}
.inventory-positive{color:#bff4cf}
.inventory-negative{color:#fecaca}
.inventory-neutral{color:var(--muted)}
.inventory-history-card .history-table + .history-table{margin-top:14px}
.inventory-table td strong,.stocktake-table td strong,.history-table td strong,.inventory-fact-value{font-variant-numeric:tabular-nums}
.inventory-compact-grid{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr))}
.inventory-table input,.inventory-table select,.history-table input,.history-table select{width:100%;min-width:0;box-sizing:border-box}
.inventory-table td,.history-table td{vertical-align:top}
.inventory-note-input{max-width:220px}
.inventory-dialog{border:none;padding:0;background:transparent;max-width:min(760px,calc(100vw - 24px));width:100%}
.inventory-dialog:not([open]){display:none}
.inventory-dialog-wide{max-width:min(860px,calc(100vw - 24px))}
.inventory-dialog::backdrop{background:rgba(0,0,0,.62)}
.inventory-dialog-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:16px;display:grid;gap:12px;max-height:min(90vh,980px);overflow:auto;overflow-x:hidden;width:100%;min-width:0}
.inventory-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.inventory-dialog-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}
.inventory-dialog-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.inventory-correction-settings{margin-bottom:12px}
.inventory-correction-settings .card-inner{padding:10px 12px}
.inventory-correction-settings .inventory-dialog-form{gap:8px}
.inventory-correction-settings .inventory-dialog-grid{gap:8px;grid-template-columns:repeat(5,minmax(0,1fr))}
.inventory-correction-settings textarea{min-height:46px!important;resize:vertical}
.inventory-correction-summary-card .card-inner{padding:10px 12px}
.inventory-correction-summary{display:grid;gap:8px}
.inventory-correction-summary-main{display:grid;grid-template-columns:minmax(220px,1fr) minmax(130px,auto);gap:10px;align-items:end}
.inventory-correction-summary-batch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}
.inventory-correction-summary-batch>div{display:grid;gap:2px;min-width:0}
.inventory-correction-readonly{min-height:34px;display:flex;align-items:center;padding:6px 9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025);font-size:13px;line-height:1.25}
.inventory-correction-note-readonly{align-items:flex-start;min-height:36px;white-space:pre-wrap}
.inventory-correction-topline{margin-bottom:10px}
.inventory-sheet-searchbar{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(180px,.8fr) minmax(120px,.5fr) auto;gap:8px;align-items:end;margin:0 0 10px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}
.inventory-sheet-searchbar .field{margin:0}
.inventory-sheet-searchbar .inventory-actions{justify-content:flex-end;align-items:end;flex-wrap:nowrap}
.inventory-create-batch-fields[hidden]{display:none!important}
.inventory-batch-vat-panel{grid-column:1 / -1;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);padding:10px;display:grid;gap:10px}
.inventory-batch-vat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.inventory-batch-vat-lines{display:grid;gap:8px}
.inventory-batch-vat-line{display:grid;grid-template-columns:minmax(160px,1fr) minmax(105px,.45fr) minmax(170px,.7fr) auto;gap:8px;align-items:end}
.inventory-batch-vat-line .field{margin:0;display:grid;gap:6px}
.inventory-batch-vat-result,.inventory-batch-vat-total{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.inventory-batch-vat-result{min-height:42px;display:flex;align-items:center;padding:6px 8px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}
.inventory-batch-vat-total{padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(0,0,0,.12)}
.inventory-correction-vat-breakdown{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025);padding:8px;display:grid;gap:4px}
.inventory-correction-vat-breakdown pre{margin:0;white-space:pre-wrap;font:inherit;font-size:12px;line-height:1.35;color:var(--text)}
.inventory-dialog-form{display:grid;gap:12px}
.inventory-dialog-panel{border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);padding:12px;display:grid;gap:10px}
.inventory-dialog-panel h5{margin:0;font-size:14px}
.inventory-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.inventory-history-year-form{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.inventory-history-year-form select{min-height:38px}
.inventory-line-lock{font-size:12px;color:var(--muted)}
.inventory-line-details-row td{background:rgba(255,255,255,.025)}
.inventory-nested-table{background:rgba(0,0,0,.12);border-radius:10px;overflow:hidden}
.inventory-disabled-field{opacity:.55}
.inventory-overview-shell,.inventory-batch-shell{display:grid;gap:14px;width:100%;max-width:100%;min-width:0}
.inventory-overview-shell.stock-update-shell{display:grid;gap:14px;grid-template-columns:minmax(0,1fr);width:100%;max-width:none;min-width:0}
.inventory-filter-card,.inventory-sheet-card,.inventory-history-card{width:100%;max-width:none;min-width:0}
.inventory-sheet-card{grid-column:1 / -1;width:100%;max-width:none;justify-self:stretch}
.inventory-sheet-card .card-inner{padding:14px;width:100%;max-width:none;min-width:0}
.inventory-sheet-form{display:grid;gap:12px;width:100%;max-width:none;min-width:0}
.inventory-sheet-wrap{width:100%;max-width:none;min-width:0;overflow:hidden}
.inventory-sheet-wrap .inventory-list-scroll{max-height:none;overflow-x:auto;overflow-y:visible;width:100%;max-width:none;min-width:0}
.inventory-sheet-table{width:max-content;min-width:100%;table-layout:fixed}
.inventory-sheet-table col.inventory-sheet-col-product{width:310px}
.inventory-sheet-table col.inventory-sheet-col-qty{width:156px}
.inventory-sheet-table col.inventory-sheet-col-stock{width:122px}
.inventory-sheet-table col.inventory-sheet-col-weight{width:238px}
.inventory-sheet-table col.inventory-sheet-col-purchase-basis{width:190px}
.inventory-sheet-table col.inventory-sheet-col-purchase-ex{width:122px}
.inventory-sheet-table col.inventory-sheet-col-purchase-inc{width:122px}
.inventory-sheet-table col.inventory-sheet-col-vat{width:90px}
.inventory-sheet-table col.inventory-sheet-col-sale{width:128px}
.inventory-sheet-table col.inventory-sheet-col-markup{width:98px}
.inventory-sheet-table col.inventory-sheet-col-status{width:150px}
.inventory-sheet-table th{position:sticky;top:0;z-index:3;background:var(--admin-table-head);vertical-align:top}
.inventory-sheet-table input,.inventory-sheet-table select,.inventory-purchase-basis-toggle{min-height:34px;padding:6px 8px;font-size:12px;border-radius:8px}
.inventory-sheet-product-row td{background:rgba(124,92,255,.070)}
.inventory-sheet-line-row td{background:var(--admin-table-row)}

.inventory-sheet-product-title{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-align:left;cursor:pointer}
.inventory-sheet-product-title:hover span:nth-child(2){text-decoration:underline}
.inventory-sheet-caret{display:inline-flex;width:16px;justify-content:center;color:var(--muted);transition:transform .15s ease}
.inventory-sheet-product-title[aria-expanded="true"] .inventory-sheet-caret{transform:rotate(90deg)}
.inventory-sheet-inline-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.inventory-sheet-inline-actions .btn{min-height:28px;padding:5px 8px;font-size:12px}
.inventory-sheet-head-with-action{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.inventory-sheet-header-action,.inventory-row-delete-btn,.inventory-row-variant-btn{min-width:auto!important;min-height:26px!important;padding:4px 7px!important;font-size:11px!important;line-height:1.1}
.inventory-sheet-line-actions{margin-top:4px}
.inventory-sheet-child-row td:first-child{padding-left:22px}
.inventory-row-options{
  display:grid;
  gap:5px;
  margin-top:7px;
  padding:7px 8px;
  border:1px solid var(--admin-card-border);
  border-radius:10px;
  background:var(--admin-card-soft);
  min-width:0;
}
.inventory-row-options .field{margin:0;gap:4px;min-width:0}
.inventory-row-options .inventory-check{margin:0}
.inventory-sheet-sticky-actions{position:sticky;bottom:0;z-index:4;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(17,19,26,.96);box-shadow:var(--shadow)}
body.theme-light .inventory-sheet-sticky-actions{background:rgba(255,255,255,.96)}
.inventory-sheet-pagination{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 10px;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}
.inventory-sheet-pagination-bottom{margin:10px 0 0}
.price-old{text-decoration:line-through;opacity:.75}
.price-new{font-weight:700;color:var(--warn)}
.customer-vat-note{display:inline-flex;align-items:center;gap:3px;font-size:11px;line-height:1.2;color:var(--muted);font-weight:500;opacity:.86;white-space:nowrap;vertical-align:baseline}
.customer-vat-summary{font-size:11px;line-height:1.25;color:var(--muted);font-weight:500;margin-top:2px;overflow-wrap:normal;word-break:normal;hyphens:none}
.customer-vat-payment-note{margin:0;padding:0;line-height:1.3}
.meta .customer-vat-note,.frontpage-showcase-meta .customer-vat-note,.category-preview-copy .customer-vat-note{font-size:10.5px;opacity:.78}
@media (max-width: 1180px){
  .inventory-sheet-searchbar{grid-template-columns:1fr 1fr}
  .inventory-sheet-searchbar .inventory-actions{justify-content:flex-start}
  .inventory-correction-summary-batch{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inventory-main-grid,.inventory-stocktake-grid,.inventory-batch-grid{grid-template-columns:1fr}
  .inventory-stocktake-top{grid-template-columns:1fr}
  .inventory-stocktake-session-filter{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inventory-stocktake-session-filter .inventory-actions{grid-column:1/-1}
  .inventory-list-scroll{max-height:none}
  .inventory-batch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inventory-batch-line-head{grid-template-columns:1fr}
  .inventory-batch-line-head .inventory-actions{justify-content:flex-start}
  .inventory-batch-line-form{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .inventory-batch-line-form .field.product-field{grid-column:1 / -1}.inventory-batch-line-form .field.note-field{grid-column:1 / -1}.inventory-batch-line-form .field:not(.product-field):not(.note-field){max-width:none}
}
@media (max-width: 900px){
  .inventory-correction-summary-main,.inventory-correction-summary-batch,.inventory-sheet-searchbar{grid-template-columns:1fr}
  .inventory-sheet-searchbar .inventory-actions{flex-wrap:wrap}
  .inventory-mini-fields{grid-template-columns:1fr 1fr}
  .inventory-stocktake-session-filter{grid-template-columns:1fr}
  .inventory-stocktake-session-filter .inventory-actions{grid-column:auto}
  .inventory-stocktake-session-scroll{max-height:238px;overflow-y:auto}
  .inventory-table,.stocktake-table,.history-table,.inventory-table tbody,.stocktake-table tbody,.stocktake-table tfoot,.history-table tbody{display:block;width:100%}
  .inventory-table thead,.stocktake-table thead,.history-table thead{display:none}
  .inventory-table tr,.stocktake-table tr,.history-table tr{display:block;padding:10px 12px;border-top:1px solid rgba(255,255,255,.08)}
  .inventory-table tbody tr:first-child,.stocktake-table tbody tr:first-child,.history-table tbody tr:first-child{border-top:none}
  .inventory-table tr.group-row,.stocktake-table tr.group-row,.history-table tr.group-row{padding:0}
  .inventory-table .group-row td,.stocktake-table .group-row td,.history-table .group-row td{display:block;padding:10px 12px}
  .inventory-table td,.stocktake-table td,.history-table td{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:6px 0;border-top:none}
  .inventory-table td::before,.stocktake-table td::before,.history-table td::before{content:attr(data-label);color:var(--muted);font-size:12px;flex:0 0 112px}
  .inventory-table td > *, .stocktake-table td > *, .history-table td > *{min-width:0}
  .stocktake-table input[type="number"],.stocktake-table input[type="text"]{max-width:none;width:100%}
  .inventory-list-scroll{overflow:visible;max-height:none}
  .inventory-batch-metrics,.inventory-batch-form-grid,.inventory-batch-line-form,.inventory-dialog-grid,.inventory-compact-grid,.inventory-dialog-grid-compact,.inventory-batch-dialog-grid{grid-template-columns:1fr}
}
@media (max-width: 760px){
  .inventory-inline-form{grid-template-columns:1fr}
  .inventory-table,.stocktake-table,.history-table{font-size:12px}
  .inventory-fact-row{flex-direction:column;gap:4px}
  .inventory-fact-value{text-align:left}
  .inventory-table td,.stocktake-table td,.history-table td{flex-direction:column;gap:4px}
  .inventory-table td::before,.stocktake-table td::before,.history-table td::before{flex:none}
  .inventory-batch-picker .field{min-width:0;max-width:none}
  .inventory-dialog-card{padding:14px}
}

/* Admin Lagerkorreksjon: produktlisten er en arbeidsflate og skal alltid bruke full bredde. */
.admin-area .stock-update-shell,
.admin-area .stock-update-shell > .inventory-sheet-card,
.admin-area .stock-update-shell .inventory-sheet-form,
.admin-area .stock-update-shell .inventory-sheet-wrap,
.admin-area .stock-update-shell .inventory-list-scroll{
  width:100%;
  max-width:none;
  min-width:0;
}
.admin-area .stock-update-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
}
.admin-area .stock-update-shell .inventory-sheet-card{
  justify-self:stretch;
}
.admin-area .stock-update-shell .inventory-sheet-wrap{
  overflow:hidden;
}
.admin-area .stock-update-shell .inventory-list-scroll{
  overflow-x:auto;
  overflow-y:visible;
  max-height:none;
}
.admin-area .stock-update-shell .inventory-sheet-table{
  width:max-content;
  min-width:100%;
}

/* Select/dropdown: lukket kontroll mørk i dark theme, åpnet valgliste lys for lesbarhet */
select{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: rgba(0,0,0,.22);
  color: var(--text);
  outline:none;
}
select:hover{border-color: rgba(255,255,255,.22)}
select:focus{box-shadow: 0 0 0 3px rgba(124,92,255,.18); border-color: rgba(124,92,255,.55)}
select:disabled{background: rgba(0,0,0,.14); color: rgba(233,236,241,.65)}
select option{background:#fff; color:#2b2b2b}
select option:disabled{color:#8a8a8a}

/* Admin: mørk dropdown-boks (selve listen/valgene beholdes lys for lesbarhet) */
.admin-area select{
  border: 1px solid var(--line);
  background: rgba(0,0,0,.22);
  color: var(--text);
}
.admin-area select:hover{border-color: rgba(255,255,255,.22)}
.admin-area select:focus{
  box-shadow: 0 0 0 3px rgba(124,92,255,.18);
  border-color: rgba(124,92,255,.55);
}
.admin-area select:disabled{background: rgba(0,0,0,.14); color: rgba(233,236,241,.65)}
.admin-area select option{background:#fff; color:#2b2b2b}

/* File input: mørkere bakgrunn (admin) */
.admin-area input[type=file]{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: rgba(0,0,0,.22);
  color: var(--text);
}

/* Unngå hvit "Velg fil"-knapp på noen nettlesere */
.admin-area input[type=file]::file-selector-button{
  padding:8px 10px;
  margin-right:10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor:pointer;
}
.admin-area input[type=file]::file-selector-button:hover{background: rgba(255,255,255,.10)}
.admin-area input[type=file]::-webkit-file-upload-button{
  padding:8px 10px;
  margin-right:10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: var(--text);
  cursor:pointer;
}
.admin-area input[type=file]::-webkit-file-upload-button:hover{background: rgba(255,255,255,.10)}
textarea{width:100%;min-height:120px;resize:vertical}
.contact-form{width:100%;}
.contact-form-fields{
  display:grid;
  gap:10px;
  width:min(100%, 760px);
  margin-inline:auto;
}
.contact-form-fields input[type=email],
.contact-form-fields input[type=text],
.contact-form-fields input[type=tel],
.contact-form-fields input[type=password],
.contact-form-fields input[type=number],
.contact-form-fields input[type=search],
.contact-form-fields input:not([type]),
.contact-form-fields textarea{
  width:100%;
}
.contact-form-fields textarea{
  min-height:160px;
}
.form-option-row{
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
  display:flex;
  align-items:flex-start;
  gap:10px;
  width:100%;
}
.form-option-row input[type="checkbox"]{
  margin-top:2px;
  flex:0 0 auto;
}
.form-option-row label{
  margin:0;
  cursor:pointer;
}
.contact-form-actions{
  width:min(100%, 320px);
}
.contact-form-actions .btn{
  width:100%;
}
.sr-only-field{
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
@media (max-width: 820px){
  .contact-form-fields{
    width:100%;
  }
  .contact-form-actions{
    width:100%;
  }
}
button{
  padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06); color: var(--text);
  cursor:pointer;
}
button:hover{background: rgba(255,255,255,.08)}
table{width:100%;border-collapse:collapse}
th,td{padding:10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:top}
th{color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
hr.sep{border:0;border-top:1px solid var(--line);margin:18px 0}
.footer{margin-top:22px;padding:14px 2px;color: var(--muted);font-size:12px}
.footer-main{display:grid;gap:12px;min-width:0}
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:16px}
.footer-bottom-with-payments{padding-top:4px}
.footer-meta{line-height:1.4;min-width:0;justify-self:start}
.footer-view-mode{display:flex;align-items:flex-end;justify-content:center;min-width:0}
.footer-view-mode-link{display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.footer-payments-wrap{min-width:0;display:flex;justify-content:flex-end;align-items:flex-end}
.footer-payment-logos{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap;max-width:100%;width:min(100%, 360px)}
.footer-payment-logo{display:inline-flex;align-items:center;justify-content:center;min-width:56px;max-width:84px;padding:6px 10px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.footer-payment-logo img{display:block;max-width:64px;max-height:24px;width:auto;height:auto;object-fit:contain;filter:brightness(1.02)}
.footer a{color: var(--muted);text-decoration: underline}
.page-stack{display:grid;gap:14px;align-items:start}
.page-stack > .flash,
.page-stack > .card,
.page-stack > .two-col{margin:0}
.two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px}
.summary-card{width:100%;max-width:none;min-width:0;align-self:start}
@media (max-width: 900px){ .two-col{grid-template-columns:1fr} }
@media (max-width: 900px){ .footer-bottom{grid-template-columns:1fr;align-items:flex-start} .footer-view-mode{justify-content:flex-start} .footer-payments-wrap{justify-content:flex-start} .footer-payment-logos{justify-content:flex-start;width:100%} }

/* Konto / innlogging */
.account-wrap{
  margin-top:14px;
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
  align-items:start;
}
.account-wrap .card{grid-column:auto;}
.account-wrap .card:last-child{grid-column:1 / -1;}
.account-wrap-single{
  grid-template-columns:minmax(0, 720px);
  justify-content:center;
}
.account-shortcuts{
  display:grid;
  gap:12px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
}
.account-shortcut{
  display:grid;
  gap:8px;
}
.account-shortcut-copy,
.account-backlink{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}
.account-backlink{
  margin-top:14px;
}

.header-theme-toggle-wrap{
  display:flex;
  justify-content:flex-end;
  width:auto;
  flex:0 0 auto;
  align-self:stretch;
}
.theme-toggle-segmented{
  --theme-toggle-width:auto;
  --theme-toggle-height:auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  width:var(--theme-toggle-width);
  max-width:100%;
  min-height:var(--theme-toggle-height);
  padding:0;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  overflow:hidden;
  box-shadow:none;
}
.theme-toggle-segmented-header{
  --theme-toggle-width:144px;
  --theme-toggle-height:44.9px;
}
.theme-toggle-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  height:100%;
  padding:9px 5px;
  border:0;
  border-radius:0;
  text-decoration:none;
  color:var(--muted);
  font-weight:600;
  font-size:12.5px;
  line-height:1;
  white-space:nowrap;
  transition:transform .08s ease, background .12s ease, color .12s ease;
}
.theme-toggle-link + .theme-toggle-link{
  border-left:1px solid rgba(255,255,255,.12);
}
.theme-toggle-link:hover,
.theme-toggle-link:focus-visible{
  transform:none;
  background:rgba(255,255,255,.07);
  color:var(--text);
}
.theme-toggle-link.is-active{
  background:linear-gradient(135deg, rgba(124,92,255,.22), rgba(39,198,255,.16));
  color:var(--text);
}
body.theme-light .theme-toggle-segmented{
  background:rgba(15,23,42,.04);
  border-color:rgba(15,23,42,.12);
  box-shadow:none;
}
body.theme-light .theme-toggle-link + .theme-toggle-link{
  border-left-color:rgba(15,23,42,.12);
}
body.theme-light .theme-toggle-link:hover,
body.theme-light .theme-toggle-link:focus-visible{
  background:rgba(15,23,42,.08);
}
body.theme-light .theme-toggle-link.is-active{
  background:linear-gradient(135deg, rgba(124,92,255,.16), rgba(39,198,255,.10));
}
.field-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
@media (max-width: 700px){ .field-two{grid-template-columns:1fr} }

.password-input-wrap{
  position:relative;
  min-width:0;
}
.password-input-wrap > input{
  width:100%;
  padding-right:46px;
}
.password-input-wrap > input::-ms-reveal,
.password-input-wrap > input::-ms-clear{
  display:none;
}
.password-visibility-toggle{
  position:absolute;
  top:50%;
  right:8px;
  transform:translateY(-50%);
  width:34px;
  height:34px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,255,255,.06);
  color:var(--muted);
  cursor:pointer;
  z-index:2;
}
.password-visibility-toggle:hover,
.password-visibility-toggle:focus-visible{
  color:var(--text);
  border-color:rgba(39,198,255,.45);
  background:rgba(255,255,255,.10);
  outline:none;
}
.password-eye{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.password-eye-closed{display:none;}
.password-visibility-toggle.is-visible .password-eye-open{display:none;}
.password-visibility-toggle.is-visible .password-eye-closed{display:block;}
body.theme-light .password-visibility-toggle{
  background:rgba(15,23,42,.04);
  border-color:rgba(15,23,42,.14);
  color:#64748b;
}
body.theme-light .password-visibility-toggle:hover,
body.theme-light .password-visibility-toggle:focus-visible{
  background:rgba(15,23,42,.08);
  border-color:rgba(37,99,235,.30);
  color:#1f2937;
}
.account-postal-city-fields{
  grid-template-columns:minmax(120px,160px) minmax(0,1fr);
}
@media (max-width:700px){
  .account-postal-city-fields{grid-template-columns:minmax(105px,140px) minmax(0,1fr);}
}


.tabs{display:flex;gap:8px;flex-wrap:wrap}
.tab{
  display:inline-flex;align-items:center;justify-content:center;
  padding:9px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  text-decoration:none;
  font-size:13px;
  transition: transform .08s ease, border-color .12s ease, background .12s ease;
}
.tab:hover{transform: translateY(-1px); border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.07)}
.tab.active{
  border-color: rgba(124,92,255,.55);
  background: linear-gradient(135deg, rgba(124,92,255,.22), rgba(39,198,255,.16));
}

.shop-utility-bar{
  width:auto;
  max-width:100%;
  position:relative;
  z-index:230;
  overflow:visible;
}
.topbar-with-utility .shop-utility-bar{
  grid-column:1 / -1;
  justify-self:stretch;
  margin-top:2px;
  width:100%;
}
.shop-top-search{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  min-height:42px;
  border:1px solid var(--line);
  border-radius:6px;
  padding:5px 6px;
  background:#0f131c;
  position:relative;
  flex-wrap:wrap;
}
.shop-top-search input{
  flex:1 1 240px;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--text);
  font-size:13px;
}
.shop-top-search .btn{
  flex:0 0 auto;
  min-height:28px;
  padding:6px 10px;
  border-radius:4px;
  font-size:12px;
}
.shop-search-select{
  flex:0 0 auto;
  min-height:30px;
  padding:6px 9px;
  border-radius:4px;
  border:1px solid var(--line);
  background:rgba(0,0,0,.22);
  color:var(--text);
  font-size:12px;
  outline:none;
}
.shop-search-select:hover{border-color:rgba(255,255,255,.24)}
.shop-search-select:focus{box-shadow:0 0 0 3px rgba(124,92,255,.18);border-color:rgba(124,92,255,.55)}
.shop-search-select option{background:#fff;color:#2b2b2b}
.product-results-meta-row{
  display:flex;
  justify-content:flex-end;
  margin:16px 0 12px;
}
.product-results-meta{
  display:grid;
  justify-items:end;
  gap:8px;
  max-width:100%;
}
.product-results-inline-count{
  margin:0;
  text-align:right;
  color:var(--muted);
  line-height:1.35;
}
.product-results-sortform{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin:0;
}
.product-results-sortselect{
  min-width:220px;
}
.category-back-row{
  display:flex;
  align-items:center;
  margin:10px 0 0 0;
}
.category-back-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.global-search-results{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  z-index:13060;
  border:1px solid rgba(255,255,255,.12);
  border-radius:6px;
  background:#0f131c;
  box-shadow:0 18px 48px rgba(0,0,0,.42);
  padding:6px;
  max-height:min(70vh, 420px);
  overflow:auto;
}
.global-search-results[hidden]{display:none}
.global-search-state{
  padding:10px 12px;
  color:var(--muted);
  font-size:13px;
}
.search-result-list{
  display:grid;
  gap:8px;
}
.search-result-item{
  display:grid;
  grid-template-columns:34px minmax(0, 1fr);
  gap:10px;
  align-items:flex-start;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  color:var(--text);
  text-decoration:none;
}
.search-result-item:hover,
.search-result-item.is-active{
  border-color:rgba(124,92,255,.44);
  background:rgba(124,92,255,.14);
}
.search-result-thumb{
  width:34px;
  height:34px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.82);
  font-size:12px;
  font-weight:700;
}
.search-result-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.search-result-copy{
  display:grid;
  gap:2px;
  min-width:0;
}
.search-result-meta{
  color:var(--muted);
  font-size:11px;
  line-height:1.3;
}
.search-result-title{
  font-size:14px;
  font-weight:700;
  line-height:1.35;
}
.search-result-context,
.search-result-snippet{
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.tabs.subtabs{opacity:.98}

.noticebar{
  position:fixed;left:16px;right:16px;bottom:16px;
  max-width:var(--site-shell-width);margin:0 auto;
  border:1px solid var(--line);
  background: rgba(17,19,26,.92);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 16px;
  padding:12px 12px;
  box-shadow: var(--shadow);
  display:none;
  z-index:9999;
}
.noticebar .row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}


/* Highlight row opened via an admin anchor. */
tr:target td{
  background: rgba(124,92,255,.14);
  box-shadow: inset 0 0 0 1px rgba(124,92,255,.30);
}
tr:target td:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}
tr:target td:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}

.check a{color: var(--text);text-decoration: underline}
.noticebar a{color: var(--text);text-decoration: underline}



/* Admin – Produkter: collapsible batch + bulk actions */
details.collapse { border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; background: rgba(255,255,255,.02); }
details.collapse > summary { cursor: pointer; list-style: none; display:flex; align-items:center; gap:10px; }
details.collapse > summary::-webkit-details-marker { display:none; }
.collapse-title { font-weight: 700; font-size: 18px; }
.collapse-hint { margin-left:auto; }
.collapse-body { margin-top: 10px; }

.bulk-bar { display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; margin: 6px 0 12px 0; padding: 10px 12px; border:1px solid var(--line); border-radius: 12px; background: rgba(0,0,0,.18); }
.bulk-bar .bulk-field { display:flex; flex-direction:column; gap:6px; min-width: 220px; }
.bulk-bar .bulk-field select, .bulk-bar .bulk-field input { width:100%; }
.bulk-bar .bulk-hint { flex: 1 1 auto; min-width: 200px; padding-bottom: 8px; }


/* Admin: standard størrelse på avhukingsbokser. Innstillinger kan sette en lokal, kompakt størrelse via CSS-variabler. */
.admin-area input[type="checkbox"]{
  --admin-checkbox-size:30px;
  --admin-checkbox-radius:8px;
  --admin-checkbox-mark-size:18px;
  -webkit-appearance:none;
  appearance:none;
  width:var(--admin-checkbox-size);
  height:var(--admin-checkbox-size);
  min-width:var(--admin-checkbox-size);
  min-height:var(--admin-checkbox-size);
  border-radius:var(--admin-checkbox-radius);
  border:1px solid var(--line);
  background:rgba(0,0,0,.26);
  cursor:pointer;
  display:inline-block;
  vertical-align:middle;
  box-sizing:border-box;
}
.admin-area input[type="checkbox"]:checked{
  background: rgba(124,92,255,.55);
  border-color: rgba(124,92,255,.75);
  background-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%3E%3Cpath%20fill=%27white%27%20d=%27M9.0%2016.2%204.8%2012l-1.4%201.4L9%2019%2021%207l-1.4-1.4z%27/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:var(--admin-checkbox-mark-size);
}
.admin-area input[type="checkbox"]:focus{
  outline:none;
  box-shadow: 0 0 0 3px rgba(124,92,255,.18);
}
.admin-area input[type="checkbox"]:disabled{
  opacity: .55;
  cursor: not-allowed;
}

.unsaved-note{
  margin-top: 10px;
  font-size: 12px;
  font-weight: 600;
  color: rgba(239,68,68,.95);
}

.admin-unsaved-guard{position:fixed;inset:0;z-index:2400;display:grid;place-items:center;padding:18px;}
.admin-unsaved-guard[hidden]{display:none!important;}
.admin-unsaved-guard__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);}
.admin-unsaved-guard__card{position:relative;z-index:1;width:min(480px,calc(100vw - 32px));display:grid;gap:14px;padding:18px;border-radius:16px;border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);min-width:0;}
.admin-unsaved-guard__card h3{margin:0;font-size:20px;}
.admin-unsaved-guard__card p{margin:0;color:var(--muted);line-height:1.5;}
.admin-unsaved-guard__actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
body.admin-unsaved-guard-open{overflow:hidden;}
@media (max-width:640px){
  .admin-unsaved-guard{padding:14px;}
  .admin-unsaved-guard__card{width:min(100%,calc(100vw - 28px));padding:16px;}
  .admin-unsaved-guard__actions > *{flex:1 1 100%;}
}

/* Admin – Produkter: tabellkolonner (liste) */
.admin-products-table th.col-select,
.admin-products-table td.col-select{width:120px;}
.admin-products-table th.col-status,
.admin-products-table td.col-status{width:190px;}
.admin-products-table th.col-actions,
.admin-products-table td.col-actions{width:240px;}

/* Thumbnail under avhuking */
.admin-products-table .prod-thumb{
  width:92px;
  height:70px;
  margin:10px auto 0;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:12px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.10);
  contain:paint;
  min-width:0;
  min-height:0;
}
.admin-products-table .prod-thumb img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  border:0;
  border-radius:10px;
  background:transparent;
  min-width:0;
  min-height:0;
}

.admin-product-summary{
  display:grid;
  gap:8px;
  margin-top:10px;
  padding:9px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:rgba(255,255,255,.035);
  min-width:0;
}
.admin-product-toggle-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px 8px;
  align-items:center;
}
.admin-product-active-toggle{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
  min-width:0;
}
.admin-product-active-toggle input{flex:0 0 auto;}
.admin-products-line-active-toggle{
  align-self:end;
  min-height:42px;
  padding:10px 0;
}
.admin-product-meta-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
}
.admin-product-meta-grid span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-product-meta-wide{
  grid-column:1 / -1;
}
.admin-product-image-cell{
  display:grid;
  gap:8px;
  min-width:0;
}
.admin-product-image-cell .admin-media-picker{
  padding:8px;
  gap:8px;
}
.admin-product-image-cell .admin-media-picker-head{
  gap:8px;
}
.admin-product-image-cell .admin-media-picker-head > div{
  min-width:0;
}
.admin-product-image-cell .admin-media-selected-item span{
  max-width:96px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.product-secondary-action-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.product-secondary-action-grid .btn{
  width:100%;
  min-width:0;
  justify-content:center;
}
.product-admin-btn{
  min-height:42px;
  height:42px;
  padding:9px 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1.15;
  box-sizing:border-box;
}
.product-action-row .product-admin-btn,
.product-secondary-action-grid .product-admin-btn,
.admin-products-table .col-actions form .product-admin-btn,
.admin-products-table .col-price .product-pricing-link{
  width:100%;
  min-width:0;
}
.product-line-action-btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding-right:28px;
  overflow:visible;
}
.product-line-count-badge{
  position:absolute;
  top:-7px;
  right:-7px;
  display:inline-grid;
  place-items:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:var(--warn);
  color:#111827;
  font-size:12px;
  font-weight:900;
  line-height:1;
  box-shadow:0 0 0 2px var(--card),0 2px 8px rgba(0,0,0,.32);
}
/* Admin → Produkter: én kompakt knappestandard for produktkort.
   Gjelder Lagre, Reverser, Åpne, Lager, Linjer, Kampanje, Slett og Lager / pris. */
.admin-products-table{
  --product-admin-button-width:112px;
  --product-admin-button-height:42px;
}
.admin-products-table .product-action-row,
.admin-products-table .product-secondary-action-grid{
  grid-template-columns:repeat(2,var(--product-admin-button-width));
  justify-content:start;
  align-items:stretch;
}
.admin-products-table .product-delete-form{
  grid-template-columns:var(--product-admin-button-width) minmax(0,1fr);
  justify-content:start;
  align-items:center;
}
.admin-products-table .product-admin-btn,
.admin-products-table .btn.product-admin-btn.primary,
.admin-products-table .btn.product-admin-btn.danger,
.admin-products-table button.product-admin-btn,
.admin-products-table a.product-admin-btn,
.admin-products-table .col-price .product-pricing-link{
  width:var(--product-admin-button-width);
  min-width:var(--product-admin-button-width);
  max-width:var(--product-admin-button-width);
  height:var(--product-admin-button-height);
  min-height:var(--product-admin-button-height);
  max-height:var(--product-admin-button-height);
  padding:9px 10px;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font:inherit;
  font-size:13px;
  font-weight:700;
  line-height:1.15;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  color:var(--text);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  border-radius:12px;
  overflow:visible;
}
.admin-products-table .product-admin-btn:hover,
.admin-products-table .btn.product-admin-btn.primary:hover,
.admin-products-table .btn.product-admin-btn.danger:hover,
.admin-products-table .col-price .product-pricing-link:hover{
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.07);
}
.admin-products-table .product-admin-btn:disabled{
  color:var(--text);
}
body.theme-light .admin-products-table .product-admin-btn,
body.theme-light .admin-products-table .btn.product-admin-btn.primary,
body.theme-light .admin-products-table .btn.product-admin-btn.danger,
body.theme-light .admin-products-table .col-price .product-pricing-link{
  color:var(--text);
  border-color:rgba(15,23,42,.12);
  background:rgba(15,23,42,.04);
}
body.theme-light .admin-products-table .product-admin-btn:hover,
body.theme-light .admin-products-table .btn.product-admin-btn.primary:hover,
body.theme-light .admin-products-table .btn.product-admin-btn.danger:hover,
body.theme-light .admin-products-table .col-price .product-pricing-link:hover{
  border-color:rgba(15,23,42,.18);
  background:rgba(15,23,42,.08);
}
.admin-products-table .product-line-action-btn{
  padding-right:28px;
  position:relative;
}
.admin-products-table .product-line-count-badge{
  top:-8px;
  right:-8px;
}
@media (max-width:760px){
  .product-secondary-action-grid{grid-template-columns:1fr;}
  .admin-products-table .product-action-row,
  .admin-products-table .product-secondary-action-grid,
  .admin-products-table .product-delete-form{grid-template-columns:minmax(0,1fr);}
  .admin-products-table .product-admin-btn,
  .admin-products-table .btn.product-admin-btn.primary,
  .admin-products-table .btn.product-admin-btn.danger,
  .admin-products-table button.product-admin-btn,
  .admin-products-table a.product-admin-btn,
  .admin-products-table .col-price .product-pricing-link{width:100%;min-width:0;max-width:none;}
  .admin-product-toggle-row,
  .admin-product-meta-grid{grid-template-columns:1fr;}
}

/* Strammere prisfelt */
.admin-products-table td.col-price .formline{
  display:grid;
  grid-template-columns:minmax(118px,148px) var(--product-admin-button-width);
  justify-content:start;
  align-items:end;
  gap:8px;
  width:100%;
}
.admin-products-table td.col-price .formline > *{
  min-width:0;
}
.admin-products-table td.col-price .formline select,
.admin-products-table td.col-price .formline .btn{
  position:relative;
  z-index:1;
}
.admin-products-table td.col-price select,
.admin-products-table td.col-price input,
.admin-products-table td.col-price textarea,
.admin-products-table td.col-status select,
.admin-products-table td.col-status input,
.admin-products-table td.col-status textarea{
  position:relative;
  z-index:1;
}
.admin-products-table td.col-price input[name="price"]{width:110px;}
.admin-products-table td.col-price select[name="price_unit"]{width:120px;}
@media (max-width:760px){
  .admin-products-table td.col-price .formline{grid-template-columns:1fr;}
}

/* Status: begrens filfelt */
.admin-products-table td.col-status input[type=file]{
  width:190px;
  max-width:190px;
}

/* Admin products – Lagre/Reverser + disabled-stil */
.admin-products-table .product-action-row{display:grid;grid-template-columns:repeat(2,var(--product-admin-button-width));gap:8px;align-items:stretch;justify-content:start;}
.admin-products-table .product-delete-form{display:grid;grid-template-columns:var(--product-admin-button-width) minmax(0,1fr);gap:8px;margin-top:10px;justify-content:start;align-items:center;}
.admin-products-table .product-delete-form .product-delete-note{grid-column:auto;align-self:center;margin:0;font-size:11px;line-height:1.2;color:var(--muted);white-space:normal;max-width:190px;}
.admin-area .btn:disabled, .admin-area button:disabled{opacity:.55;cursor:not-allowed;filter:saturate(.2);}



/* Meldinger – messenger-lignende visning */
.messenger-shell{
  display:flex;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:6px;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
}
.messenger-shell > .card{
  min-width:0;
  width:auto;
}
.messenger-sidebar{
  flex:0 0 288px;
  width:288px;
  max-width:288px;
  min-width:288px;
}
.messenger-panel{
  flex:1 1 0;
  width:auto;
  max-width:none;
  min-width:0;
}
.messenger-sidebar .card-inner,
.messenger-panel .card-inner{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-height:0;
  padding:4px 4px 6px 4px;
}
.messenger-sidebar-head,
.messenger-head,
.messenger-toolbar{
  display:flex;
  justify-content:space-between;
  gap:4px;
  align-items:flex-start;
  flex-wrap:wrap;
}
.messenger-toolbar{
  align-items:center;
}
.messenger-sidebar-head h3,
.messenger-head h3{
  font-size:14px;
}

.messenger-toolbar > *,
.messenger-head > *,
.messenger-sidebar-head > *{
  min-width:0;
}
.messenger-head-actions,
.messenger-compose-actions,
.messenger-thread-top,
.messenger-thread-meta{
  min-width:0;
}
.messenger-head-actions .btn,
.messenger-compose-actions .btn,
.messenger-bulk-bar .btn,
.messenger-thread-quick-actions .btn{
  flex:0 0 auto;
}
.messenger-bulk-bar{
  margin:0 0 3px 0;
  padding:3px 4px;
  gap:3px;
  align-items:center;
  border-radius:8px;
}
.messenger-bulk-bar .bulk-field{
  min-width:126px;
}
.messenger-bulk-bar .bulk-hint{
  min-width:88px;
  padding-bottom:0;
  font-size:10px;
}
.messenger-thread-list{
  display:flex;
  flex-direction:column;
  gap:0;
  max-height:calc(100vh - 196px);
  overflow:auto;
  padding-right:0;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:#0f131c;
}
.messenger-thread-card{
  display:grid;
  grid-template-columns:14px minmax(0,1fr) 32px;
  gap:3px;
  align-items:center;
  min-width:0;
  padding:0 3px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.messenger-thread-card:last-child{
  border-bottom:0;
}
.messenger-thread-select{
  padding-top:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.messenger-thread-select input[type="checkbox"]{
  -webkit-appearance:none;
  appearance:none;
  width:14px;
  height:14px;
  min-width:14px;
  min-height:14px;
  border-radius:3px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.02);
  box-shadow:none;
}
.messenger-thread-select input[type="checkbox"]:checked{
  border-color:rgba(124,92,255,.75);
  background:rgba(124,92,255,.62);
  background-size:10px 10px;
}
.messenger-thread-select input[type="checkbox"]:focus{
  box-shadow:0 0 0 2px rgba(124,92,255,.14);
}
.messenger-thread{
  display:block;
  text-decoration:none;
  border:0;
  border-radius:0;
  padding:4px 3px;
  background:transparent;
  transition:background .12s ease;
  min-width:0;
}
.messenger-thread-quick-actions{
  padding-top:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.messenger-thread-quick-actions .btn,
.messenger-bulk-bar .btn,
.messenger-head-actions .btn,
.messenger-compose-actions .btn{
  white-space:nowrap;
  padding:3px 5px;
  min-height:22px;
  font-size:10px;
  border-radius:6px;
}
.messenger-thread:hover,
.messenger-thread:focus-visible,
.messenger-thread.active,
.messenger-thread.unread,
.messenger-thread-card.unread .messenger-thread,
.messenger-thread-card.active .messenger-thread{
  background:rgba(124,92,255,.14);
}
.messenger-thread-card.unread .messenger-thread{
  box-shadow:inset 2px 0 0 rgba(245,158,11,.72);
}
.messenger-thread-top,
.messenger-thread-meta,
.messenger-compose-actions,
.messenger-head-actions{
  display:flex;
  justify-content:space-between;
  gap:3px;
  align-items:center;
  flex-wrap:wrap;
}
.messenger-thread-top strong{
  font-size:12px;
  line-height:1.16;
  font-weight:600;
}
.messenger-thread-subject{
  font-size:11px;
  line-height:1.12;
}
.messenger-subtle{
  color:var(--muted);
  margin-top:0;
  font-size:10px;
  line-height:1.08;
}
.messenger-thread-preview{
  margin-top:1px;
  color:var(--text);
  line-height:1.05;
  font-size:10px;
}
.messenger-thread-meta,
.messenger-thread-meta .small,
.messenger-thread .small{
  font-size:9px;
  line-height:1.04;
}
.messenger-stream{
  flex:1;
  min-height:250px;
  max-height:calc(100vh - 262px);
  overflow:auto;
  padding:4px 5px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}
.message-row{
  display:flex;
  margin-bottom:3px;
}
.message-row.mine{ justify-content:flex-end; }
.message-row.theirs{ justify-content:flex-start; }
.message-bubble{
  width:min(89%, 720px);
  border-radius:7px;
  padding:4px 5px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
  box-shadow:0 3px 10px rgba(0,0,0,.12);
}
.message-row.mine .message-bubble{
  background:linear-gradient(135deg, rgba(124,92,255,.18), rgba(39,198,255,.12));
  border-color:rgba(124,92,255,.32);
}
.message-meta,
.message-tags{
  display:flex;
  justify-content:space-between;
  gap:4px;
  align-items:center;
  flex-wrap:wrap;
}
.message-meta{
  margin-bottom:3px;
  color:var(--muted);
  font-size:9px;
  line-height:1.05;
}
.message-tags{
  margin-top:3px;
}
.message-body{
  line-height:1.22;
  font-size:12px;
  white-space:normal;
  overflow-wrap:anywhere;
}
.messenger-compose{
  display:grid;
  gap:3px;
}
.messenger-compose textarea{
  min-height:60px;
}
body.theme-light:not(.admin-area) .messenger-compose textarea{
  background:#fff;
  color:var(--text);
  border-color:#d7d4ce;
}
body.theme-light:not(.admin-area) .messenger-compose textarea::placeholder{
  color:#7a8498;
}
.messenger-sidebar-head .badge,
.messenger-thread-meta .badge,
.messenger-head .badge{
  padding:2px 5px;
  font-size:9px;
  min-height:18px;
}
.messenger-thread .badge{
  border-radius:999px;
}

.messenger-empty{
  min-height:250px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
@media (max-width: 700px){
  .messenger-shell{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
  }
  .messenger-sidebar,
  .messenger-panel{
    width:auto;
    min-width:0;
    max-width:none;
    flex:1 1 auto;
  }
  .messenger-thread-card{
    grid-template-columns:1fr;
  }
  .messenger-thread-select,
  .messenger-thread-quick-actions{
    padding-top:0;
  }
  .messenger-thread-list,
  .messenger-stream{
    max-height:none;
  }
  .message-bubble{
    width:min(92%, 100%);
  }
}


/* Site: Human-check (CAPTCHA + Sikkerhetssjekk) modal + popup */
.hc-overlay{
  position: fixed;
  inset: 0;
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  background: rgba(0,0,0,.55);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}
.hc-overlay[hidden]{ display:none; }
.hc-overlay.show{ animation: hcFade .16s ease; }
@keyframes hcFade{ from{ opacity:0; } to{ opacity:1; } }

.hc-card{
  width: min(560px, 100%);
  border-radius: 18px;
  border: 1px solid var(--border);
  background: rgba(22,22,26,.98);
  box-shadow: 0 18px 60px rgba(0,0,0,.55);
  padding: 14px;
}
.hc-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.hc-kicker{
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 2px;
}
.hc-close{
  width: 38px;
  height: 38px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.04);
  color: var(--text);
  font-size: 22px;
  line-height: 1;
}
.hc-close:hover{ background: rgba(255,255,255,.07); }

.hc-card .btn,
.hc-card button.btn,
.hc-close{
  border-color: rgba(39,198,255,.36);
  background: linear-gradient(135deg, rgba(124,92,255,.20), rgba(39,198,255,.14));
  color: var(--text);
  box-shadow: 0 10px 24px rgba(39,198,255,.08);
}
.hc-card .btn:hover,
.hc-card button.btn:hover,
.hc-close:hover,
.hc-card .btn:focus-visible,
.hc-card button.btn:focus-visible,
.hc-close:focus-visible{
  border-color: rgba(39,198,255,.62);
  background: linear-gradient(135deg, rgba(124,92,255,.26), rgba(39,198,255,.20));
  outline: none;
}
.hc-card .btn.primary{
  border-color: rgba(39,198,255,.70);
  background: linear-gradient(135deg, rgba(124,92,255,.36), rgba(39,198,255,.32));
}
body.theme-light .hc-card .btn,
body.theme-light .hc-card button.btn,
body.theme-light .hc-close{
  border-color: rgba(37,99,235,.26);
  background: linear-gradient(135deg, rgba(124,92,255,.14), rgba(39,198,255,.12));
  box-shadow: 0 10px 24px rgba(37,99,235,.08);
}
body.theme-light .hc-card .btn:hover,
body.theme-light .hc-card button.btn:hover,
body.theme-light .hc-close:hover,
body.theme-light .hc-card .btn:focus-visible,
body.theme-light .hc-card button.btn:focus-visible,
body.theme-light .hc-close:focus-visible{
  border-color: rgba(37,99,235,.42);
  background: linear-gradient(135deg, rgba(124,92,255,.20), rgba(39,198,255,.17));
}

.hc-help{
  margin-top: 10px;
  padding: 10px;
  border-radius: 14px;
  border: 1px dashed rgba(255,255,255,.14);
  background: rgba(255,255,255,.03);
}

.hc-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 12px;
}
@media (max-width: 520px){
  .hc-grid{ grid-template-columns: 1fr; }
}

.hc-box{
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 12px;
  background: rgba(255,255,255,.02);
}
.hc-row{
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
.hc-img{
  height: 60px;
  border-radius: 12px;
  border: 1px solid var(--border);
}
.hc-input{
  margin-top: 10px;
  width: 100%;
}

.hc-step-title{
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  margin-bottom: 10px;
}
.hc-step-num{
  width: 24px;
  height: 24px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--border);
  background: rgba(255,255,255,.06);
  color: var(--text);
  font-size: 12px;
}
.hc-inline{
  display: flex;
  gap: 10px;
  align-items: stretch;
  margin-top: 10px;
}
.hc-inline .hc-input{ margin-top: 0; flex: 1; }

.hc-actions{
  display: flex;
  gap: 10px;
  margin-top: 12px;
}
.hc-actions .btn{
  flex: 1;
}
.hc-actions .btn.primary{
  opacity:1;
  filter:none;
}

.hc-attn{
  outline: 2px solid rgba(245,158,11,.70);
  box-shadow: 0 0 0 6px rgba(245,158,11,.18);
  animation: hcPulse .9s ease-in-out;
}
@keyframes hcPulse{
  0%{ box-shadow: 0 0 0 0 rgba(245,158,11,.05); }
  55%{ box-shadow: 0 0 0 10px rgba(245,158,11,.22); }
  100%{ box-shadow: 0 0 0 6px rgba(245,158,11,.18); }
}


/* Framside */
.frontpage-hero{
  --frontpage-image-size:40%;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:18px;
  align-items:center;
}
.frontpage-hero--image-right,.frontpage-hero--image-left{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.frontpage-hero--image-left .frontpage-hero-media{order:1;justify-self:start;}
.frontpage-hero--image-left .frontpage-hero-copy{order:2;}
.frontpage-hero--image-right .frontpage-hero-copy{order:1;}
.frontpage-hero--image-right .frontpage-hero-media{order:2;justify-self:end;}
.frontpage-hero-copy{
  align-self:stretch;
  min-width:0;
  min-height:240px;
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
}
.frontpage-hero-copy-inner{
  grid-row:var(--frontpage-title-row,1) / 4;
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.frontpage-hero-media{
  width:var(--frontpage-image-size);
  max-width:100%;
  min-width:0;
  border-radius:18px;
  overflow:hidden;
}
.frontpage-hero-copy h2{
  margin:10px 0 8px 0;
  font-size:var(--frontpage-title-size,32px);
  line-height:1.1;
  max-width:100%;
  overflow-wrap:anywhere;
  flex:0 0 auto;
}
.frontpage-hero-intro-region{
  flex:1 1 auto;
  min-width:0;
  min-height:0;
  max-width:100%;
  display:flex;
  flex-direction:column;
  justify-content:var(--frontpage-intro-justify,flex-start);
}
.frontpage-hero-copy p{
  margin:0;
  color:var(--muted);
  font-size:var(--frontpage-intro-size,16px);
  line-height:1.6;
  white-space:pre-line;
  max-width:100%;
  overflow-wrap:anywhere;
}
.frontpage-hero-media img{
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.12);
  display:block;
}
.frontpage-showcase{
  margin-top:18px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(20,24,38,.72);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.frontpage-showcase-head{
  padding:16px 16px 0 16px;
}
.frontpage-showcase-head h3{
  margin:0;
  font-size:20px;
}
.frontpage-marquee{
  position:relative;
  overflow:hidden;
  padding:16px 0;
  -webkit-mask-image:linear-gradient(to right, transparent, black 4%, black 96%, transparent);
  mask-image:linear-gradient(to right, transparent, black 4%, black 96%, transparent);
}
.frontpage-marquee-side{
  position:absolute;
  top:0;
  bottom:0;
  width:112px;
  z-index:3;
  pointer-events:none;
  transition:background-color .18s ease;
}
.frontpage-marquee-side.is-left{
  left:0;
  background:linear-gradient(to right, rgba(15,23,42,.24), rgba(15,23,42,0));
}
.frontpage-marquee-side.is-right{
  right:0;
  background:linear-gradient(to left, rgba(15,23,42,.24), rgba(15,23,42,0));
}
.frontpage-marquee[data-hover-zone="left"] .frontpage-marquee-side.is-left,
.frontpage-marquee[data-hover-zone="right"] .frontpage-marquee-side.is-right{
  background-color:rgba(255,255,255,.04);
}
.frontpage-track{
  display:flex;
  align-items:stretch;
  gap:16px;
  width:max-content;
  padding:0 16px;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.frontpage-track-group{
  display:flex;
  gap:16px;
  flex:none;
}
.frontpage-showcase-card{
  width:260px;
  min-width:260px;
  display:flex;
  flex-direction:column;
  padding:0;
  border:1px solid var(--border, var(--line));
  border-radius:10px;
  background:var(--card);
  text-decoration:none;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.frontpage-showcase-card:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.26);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.frontpage-showcase-thumb{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  border-radius:0;
  overflow:hidden;
  flex:0 0 auto;
  border:0;
  border-bottom:1px solid var(--border, var(--line));
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.04);
}
.frontpage-showcase-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.frontpage-showcase-card:hover .frontpage-showcase-thumb img{transform:scale(1.035);}
.frontpage-showcase-copy{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px;
}
.frontpage-showcase-copy strong{
  font-size:1rem;
  line-height:1.25;
  font-weight:650;
  color:var(--text);
}
.frontpage-showcase-copy > span{
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}
.frontpage-showcase-price-list{
  display:grid;
  gap:5px;
  margin-top:auto;
  color:var(--text);
}
.frontpage-showcase-price-row{
  display:grid;
  grid-template-columns:minmax(66px, auto) minmax(0, 1fr);
  gap:10px;
  align-items:baseline;
  min-width:0;
}
.frontpage-showcase-price-label{
  color:var(--muted);
  font-size:.74rem;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.frontpage-showcase-price-value{
  color:var(--text);
  font-size:.98rem;
  font-weight:750;
  font-variant-numeric:tabular-nums;
  text-align:left;
  min-width:0;
}
.frontpage-showcase-note{
  width:fit-content;
  max-width:100%;
  color:var(--muted);
  font-size:.78rem;
  font-weight:650;
}
@media (max-width: 760px){
  .frontpage-hero,.frontpage-hero--image-left,.frontpage-hero--image-right{grid-template-columns:1fr;}
  .frontpage-hero--image-left .frontpage-hero-media,.frontpage-hero--image-right .frontpage-hero-media{order:2;}
  .frontpage-hero--image-left .frontpage-hero-copy,.frontpage-hero--image-right .frontpage-hero-copy{order:1;}
  .frontpage-showcase-card{width:248px;min-width:248px;}
  .frontpage-showcase-copy{padding:12px;}
  .frontpage-showcase-price-row{grid-template-columns:1fr;gap:2px;}
}
@media (prefers-reduced-motion:reduce){
  .frontpage-showcase-card,.frontpage-showcase-thumb img{transition:none;}
  .frontpage-showcase-card:hover{transform:none;}
}

.group-media-mode select,
[data-group-media-panel="iframe"] input[type="url"]{
  max-width: 100%;
}

.embed-browser{
  margin: 0;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(8,12,18,.96);
  box-shadow: 0 18px 36px rgba(0,0,0,.22);
}

.embed-browser-toolbar{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, auto);
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.embed-browser-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.embed-browser-title-wrap{
  min-width: 0;
  display: flex;
  align-items: center;
}

.embed-browser-title{
  min-width: 0;
  width: 100%;
  text-align: left;
  font-weight: 700;
  letter-spacing: .01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.embed-browser-open-link{
  min-height: 42px;
  white-space: nowrap;
}

.embed-browser-open-link:hover,
.embed-browser-open-link:focus-visible{
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
  outline: none;
}

.embed-browser-frame{
  display: block;
  width: 100%;
  height: 100vh;
  height: 100svh;
  min-height: 320px;
  border: 0;
  background: #fff;
  overscroll-behavior: auto;
}

@media (max-width: 820px){
  .embed-browser-toolbar{
    grid-template-columns: 1fr;
  }

  .embed-browser-actions{
    justify-content: flex-start;
  }
}



@media (max-width: 900px){
  :root{
    --site-shell-padding-x:16px;
  }
  .container{
    padding:16px var(--site-shell-padding-x);
  }
  .brand h1{font-size:15px}
  .shop-top-search{
    width:100%;
    min-width:0;
  }
  .shop-search-select{
    flex:1 1 calc(50% - 4px);
    min-width:140px;
  }
  .toolbar{
    align-items:stretch;
  }
  .toolbar > .btn{
    width:100%;
  }
  .search{
    width:100%;
    flex-wrap:wrap;
  }
  .search input{
    flex:1 1 100%;
  }
  .search select{
    flex:1 1 calc(50% - 5px);
    min-width:140px;
  }
  .search button{
    width:100%;
  }
  .search .hint{
    display:none;
  }
  .results-count{
    width:100%;
    margin-top:0;
  }
  .card-head{
    flex-direction:column;
  }
  .thumb{
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
  }
  .thumb img{
    height:100%;
  }
  .card-actions{
    align-items:stretch;
  }
  .card-actions .btn,
  .card-actions form,
  .card-actions form button,
  .card-actions .formline{
    width:100%;
  }
}


@media (max-width: 560px){
  .nav{
    gap:8px;
  }
  .nav.nav-user .btn,
  .nav.nav-shop .btn{
    flex:1 1 calc(50% - 4px);
  }
  .shop-top-search{
    padding-bottom:12px;
  }
  .shop-top-search .btn{
    width:100%;
  }
  .global-search-results{
    position:static;
    margin-top:4px;
    max-height:50vh;
    width:100%;
  }
}


/* Meldinger: enda strammere venstreliste + lukket tråd */
.messenger-bulk-bar{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:3px;
}
.messenger-bulk-bar .bulk-field{
  flex:1 1 100%;
  min-width:0;
  width:100%;
}
.messenger-bulk-bar .bulk-field label{
  font-size:9px;
  line-height:1;
  margin-bottom:1px;
}
.messenger-bulk-bar select{
  width:100%;
  min-width:0;
  max-width:100%;
  padding:3px 20px 3px 5px;
  font-size:10px;
  min-height:24px;
}
.messenger-thread-card{
  grid-template-columns:12px minmax(0,1fr) 26px;
  gap:2px;
  padding:0 2px;
}
.messenger-thread{
  padding:3px 2px;
}
.messenger-thread-top{
  gap:2px;
}
.messenger-thread-top strong{
  display:block;
  font-size:14px;
  line-height:1.14;
}
.messenger-thread-preview{
  margin-top:0;
  line-height:1;
  font-size:10px;
}
.messenger-thread-subject{
  display:block;
  font-size:13px;
  line-height:1.14;
  font-weight:600;
}
.messenger-thread-quick-actions .btn{
  padding:2px 4px;
  min-height:20px;
  font-size:9px;
}
.messenger-thread-select input[type="checkbox"]{
  width:12px;
  height:12px;
  min-width:12px;
  min-height:12px;
}
.messenger-thread-meta{
  margin-top:1px;
  gap:2px;
}
.messenger-sidebar .card-inner{
  padding:8px;
}
.messenger-sidebar-head{
  margin-bottom:4px;
}
.messenger-sidebar-head h3{
  font-size:16px;
}
.messenger-subtle{
  font-size:12px;
  line-height:1.2;
}
.messenger-thread-meta,
.messenger-thread-meta .small,
.messenger-thread .small{
  font-size:11px;
  line-height:1.16;
}
.messenger-thread .badge{
  font-size:11px;
}
.messenger-thread-quick-actions .btn{
  font-size:8px;
}

.messenger-compose.is-disabled{
  opacity:1;
}
.messenger-compose-closed{
  display:grid;
  gap:2px;
  padding:7px 8px;
  border:1px solid rgba(245,158,11,.28);
  border-radius:8px;
  background:rgba(245,158,11,.09);
  color:var(--text);
  font-size:11px;
  line-height:1.25;
}
.messenger-compose.is-disabled textarea{
  background:rgba(255,255,255,.03);
  color:rgba(255,255,255,.58);
  border-color:rgba(255,255,255,.08);
  cursor:not-allowed;
}
.messenger-compose.is-disabled .btn.primary{
  opacity:.5;
  pointer-events:none;
}
@media (max-width: 700px){
  .messenger-bulk-bar .bulk-field,
  .messenger-bulk-bar .bulk-hint{
    flex:1 1 100%;
  }
}

.notifications-sort-link{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--text);
  text-decoration:none;
  white-space:nowrap;
}
.notifications-sort-link:hover,
.notifications-sort-link:focus-visible{
  color:var(--accent);
}
.notifications-sort-link.active{
  color:var(--accent);
}
.notifications-sort-indicator{
  display:inline-block;
  min-width:10px;
  font-weight:700;
}

/* Varsler: kompakte handlinger og robust bulk-rad */
.notifications-bulk-bar{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:flex-end;
}
.notifications-bulk-field{
  min-width:160px;
  flex:0 1 180px;
}
.notifications-bulk-field label{
  font-size:11px;
}
.notifications-bulk-field select{
  width:100%;
}
.notifications-bulk-count{
  padding-bottom:6px;
}
.notifications-table-wrap{
  width:100%;
  overflow:auto;
}
.notifications-table{
  width:100%;
}
.notifications-select-col{
  width:26px;
  text-align:center;
}
.notifications-select-col input[type="checkbox"]{
  width:14px;
  height:14px;
  min-width:14px;
  min-height:14px;
  border-radius:3px;
}
.notifications-body-cell{
  white-space:pre-wrap;
  color:var(--muted);
  max-width:420px;
  line-height:1.25;
}
.notifications-actions{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  align-items:center;
}
.notifications-action-form{
  margin:0;
}
.notifications-btn{
  padding:2px 5px;
  min-height:22px;
  font-size:10px;
  border-radius:6px;
}


.icon-trash-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(220,38,38,.12);
  color:#ffd7d7;
  cursor:pointer;
  font-size:18px;
}
.icon-trash-btn:hover{
  background:rgba(220,38,38,.18);
  border-color:rgba(248,113,113,.32);
}
.image-inline-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:8px 0 0 0;
}
.image-inline-actions .small{
  margin:0;
}


.footer-copy-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:start;
  width:100%;
  padding-bottom:2px;
}
.footer-copy{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
  white-space:pre-line;
  min-width:0;
}
.footer-copy-left{grid-column:1}
.footer-copy-center{grid-column:2}
.footer-copy-right{grid-column:3}
.footer-copy-empty{min-height:1px}
.footer-copy-align-left{text-align:left}
.footer-copy-align-center{text-align:center}
.footer-copy-align-right{text-align:right}
.footer-payment-logos{
  gap:12px;
  align-self:flex-end;
}
.footer-view-mode-link:hover,
.footer-view-mode-link:focus-visible{
  color:var(--text);
}
.footer-payment-logo{
  min-height:28px;
}
.footer-payment-logo img{
  max-width:86px;
  max-height:30px;
  object-fit:contain;
}
@media (max-width: 760px){
  .footer-copy-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .footer-copy-left,
  .footer-copy-center,
  .footer-copy-right{
    grid-column:auto;
  }
}
.admin-align-picker{
  display:inline-flex;
  flex-wrap:wrap;
  gap:8px;
}
.admin-align-picker input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.admin-align-picker label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:96px;
  padding:8px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
  transition:border-color .12s ease, background .12s ease, transform .08s ease;
}
.admin-align-picker label:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.07)}
.admin-align-picker input:checked + label{
  border-color:rgba(124,92,255,.50);
  background:linear-gradient(135deg, rgba(124,92,255,.20), rgba(39,198,255,.14));
}
.footer-editor-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.footer-editor-card{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.03);
}
.footer-editor-card textarea{min-height:150px}
.footer-editor-card textarea.align-left{text-align:left}
.footer-editor-card textarea.align-center{text-align:center}
.footer-editor-card textarea.align-right{text-align:right}
@media (max-width: 900px){
  .footer-copy-grid,
  .footer-editor-grid{grid-template-columns:1fr}
  .footer-copy-left,
  .footer-copy-center,
  .footer-copy-right{grid-column:auto}
  .footer-copy-align-center,
  .footer-copy-align-right{text-align:left}
  .footer-view-mode,
  .footer-payments-wrap{justify-content:flex-start}
  .footer-payment-logos{justify-content:flex-start;width:100%}
}

.price-old{text-decoration:line-through;opacity:.72}
.price-new{font-weight:700;color:var(--warn)}

/* Admin: felles bildebibliotek */
body.admin-media-open{overflow:hidden;}
.admin-media-picker{display:grid;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.035);}
.admin-media-picker-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;}
.admin-media-picker-label{font-weight:700;color:var(--text);}
.admin-media-picker-help{color:var(--muted);line-height:1.35;max-width:680px;}
.admin-media-selected{display:flex;gap:8px;flex-wrap:wrap;align-items:center;min-height:38px;}
.admin-media-picker-actions{display:flex;gap:8px;align-items:center;justify-content:flex-start;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.08);padding-top:8px;min-width:0;}
.admin-product-image-cell .admin-media-picker-actions .image-inline-actions{margin:0;}
.admin-product-image-cell .admin-media-picker-actions .small{color:var(--muted);}
.admin-media-selected-item{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:var(--muted);font-size:12px;}
.admin-media-selected-item img{display:block;width:34px;height:34px;max-width:34px;max-height:34px;object-fit:contain;object-position:center;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.18);min-width:0;min-height:0;}
.admin-media-empty{color:var(--muted);}
.admin-media-modal{position:fixed;inset:0;z-index:3600;display:grid;place-items:center;padding:18px;}
.admin-media-panel{position:relative;z-index:1;width:min(1120px,96vw);max-height:88vh;overflow:auto;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:var(--card);box-shadow:0 24px 70px rgba(0,0,0,.55);padding:18px;display:grid;gap:14px;}
.admin-media-upload-panel{width:min(620px,96vw);}
.admin-media-panel-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.10);padding-bottom:12px;}
.admin-media-panel-head h2{margin:0;font-size:24px;}
.admin-media-panel-head p{margin:4px 0 0;color:var(--muted);line-height:1.4;}
.admin-media-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center;}
.admin-media-status{min-height:20px;color:var(--muted);}
.admin-media-status.bad{color:#fecaca;}
.admin-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:10px;align-items:stretch;}
.admin-media-card{appearance:none;text-align:left;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045);color:var(--text);padding:8px;display:grid;gap:6px;cursor:pointer;min-width:0;overflow:hidden;}
.admin-media-card:hover,.admin-media-card:focus{border-color:rgba(255,255,255,.24);outline:none;background:rgba(255,255,255,.075);}
.admin-media-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 32%, transparent);}
.admin-media-card-thumb{height:112px;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:rgba(0,0,0,.22);padding:6px;box-sizing:border-box;min-width:0;min-height:0;}
.admin-media-card-thumb img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;border:0;background:transparent;min-width:0;min-height:0;}
.admin-media-card-name{font-weight:700;font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.admin-media-card-meta{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.admin-media-card-actions{display:flex;gap:6px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:2px;}
.admin-media-card-actions .btn{padding:7px 9px;font-size:12px;}
.admin-media-empty-state{grid-column:1/-1;border:1px dashed rgba(255,255,255,.16);border-radius:16px;padding:18px;color:var(--muted);text-align:center;}
.admin-media-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.10);padding-top:12px;}
.admin-media-upload-fields[hidden]{display:none!important;}
.admin-media-upload-fields{display:grid;gap:12px;}
.admin-media-upload-fields label{display:grid;gap:6px;}
@media (max-width:760px){.admin-media-modal{padding:8px;}.admin-media-panel{max-height:94vh;padding:12px;border-radius:16px;}.admin-media-panel-head,.admin-media-picker-head{display:grid;}.admin-media-toolbar{grid-template-columns:1fr;}.admin-media-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));}.admin-media-actions{justify-content:stretch;}.admin-media-actions .btn{width:100%;}}

/* Admin – Varegrupper: ryddigere kollapset innholdsoppsett */
.group-create-layout{display:grid;gap:12px;min-width:0;}
.group-create-fields{display:grid;gap:10px;min-width:0;}
.group-create-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.10);padding-top:12px;margin-top:2px;}
.group-create-actions .small{flex:1 1 280px;color:var(--muted);}
.admin-groups-table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-radius:16px;
}
.admin-groups-table{
  min-width:1120px;
}
.admin-groups-table th.col-select,
.admin-groups-table td:first-child{width:72px;}
.admin-groups-table th.col-category,
.admin-groups-table td:nth-child(2){width:210px;}
.admin-groups-table th.col-usage,
.admin-groups-table td:nth-child(3){width:220px;}
.admin-groups-table th.col-update,
.admin-groups-table td:nth-child(4){min-width:640px;width:auto;}
.admin-groups-table td{vertical-align:top;}
.admin-groups-table .group-basic-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:8px;
  align-items:center;
}
.admin-groups-table .group-basic-row select,
.admin-groups-table .group-basic-row input[type="text"]{min-width:0;width:100%;}
.admin-groups-table .group-basic-row input[type="number"]{width:100%;max-width:none;}
.admin-groups-table .group-basic-row label.small{
  min-height:42px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:rgba(255,255,255,.035);
}
.admin-groups-table .group-basic-row .btn{min-height:42px;}
.group-content-details{
  margin-top:10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.025);
  padding:10px;
  min-width:0;
}
.group-content-details[open]{background:rgba(255,255,255,.035);}
.group-content-summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  gap:8px 12px;
  flex-wrap:wrap;
  min-width:0;
}
.group-content-summary::-webkit-details-marker{display:none;}
.group-content-summary-title{
  font-weight:700;
  color:var(--text);
}
.group-content-summary-hint{
  color:var(--muted);
  font-size:12px;
}
.group-content-summary::after{
  content:'Åpne';
  margin-left:auto;
  font-size:12px;
  color:var(--muted);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:4px 8px;
}
.group-content-details[open] > .group-content-summary::after{content:'Lukk';}
.group-content-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:10px;
  align-items:start;
  margin-top:10px;
}
.group-content-card{
  min-width:0;
  display:grid;
  gap:8px;
  align-content:start;
  padding:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(0,0,0,.16);
}
.group-content-card-head{
  display:grid;
  gap:3px;
}
.group-content-card-head strong{
  color:var(--text);
  font-size:14px;
}
.group-content-card-head span,
.group-content-help{
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
}
.group-content-check{
  display:flex;
  gap:8px;
  align-items:center;
  min-height:42px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:rgba(255,255,255,.035);
  color:var(--text);
  font-size:13px;
}
.group-content-card textarea{
  min-height:88px;
}
.group-content-card input[type="url"],
.group-content-card input[type="text"],
.group-content-card select,
.group-content-card textarea{
  width:100%;
  max-width:100%;
  min-width:0;
}
.group-content-card .admin-media-picker{
  padding:8px;
  gap:8px;
}
.group-content-card .admin-media-picker-head{
  gap:8px;
}
.group-content-card .admin-media-picker-help{
  max-width:none;
}
.group-content-card .admin-media-selected-item{
  max-width:100%;
}
.group-content-card .image-inline-actions{
  margin-top:2px;
}
.group-content-card-warning{
  grid-column:1 / -1;
}
@media (max-width: 760px){
  .admin-groups-table{min-width:920px;}
  .admin-groups-table th.col-update,
  .admin-groups-table td:nth-child(4){min-width:520px;}
  .group-content-grid{grid-template-columns:1fr;}
  .group-content-summary::after{margin-left:0;}
}

/* Produktresultater: kompakt rutenett */
.grid.product-results-grid{
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  max-width:none;
  justify-content:start;
  align-items:stretch;
  gap:18px;
}
.grid.product-results-grid > .product-result-card{
  grid-column:auto;
  width:100%;
  height:100%;
}
.product-result-card .card-inner{
  height:100%;
  display:flex;
  flex-direction:column;
}
.product-result-card .card-head{
  height:100%;
}
@media (max-width: 760px){
  .grid.product-results-grid{
    grid-template-columns:minmax(0, 1fr);
    max-width:none;
    gap:14px;
  }
  .category-back-row{
    align-items:stretch;
    flex-direction:column;
  }
  .product-results-meta-row{
    justify-content:stretch;
  }
  .product-results-meta{
    width:100%;
    justify-items:stretch;
  }
  .product-results-inline-count{
    text-align:right;
  }
  .product-results-sortform{
    width:100%;
    justify-content:flex-end;
  }
  .product-results-sortselect{
    flex:0 1 100%;
    min-width:0;
  }
}


/* Lagerkorreksjon skal ikke gjøres om til smale mobilkort; den skal være et bredt arbeidsark med horisontal navigering. */
.admin-area .stock-update-shell .inventory-sheet-table,
.admin-area .stock-update-shell .inventory-sheet-table thead,
.admin-area .stock-update-shell .inventory-sheet-table tbody,
.admin-area .stock-update-shell .inventory-sheet-table tr,
.admin-area .stock-update-shell .inventory-sheet-table th,
.admin-area .stock-update-shell .inventory-sheet-table td{
  display:revert;
}
.admin-area .stock-update-shell .inventory-sheet-table{
  display:table;
  border-collapse:collapse;
}
.admin-area .stock-update-shell .inventory-sheet-table thead{
  display:table-header-group;
}
.admin-area .stock-update-shell .inventory-sheet-table tbody{
  display:table-row-group;
}
.admin-area .stock-update-shell .inventory-sheet-table tr{
  display:table-row;
  padding:0;
}
.admin-area .stock-update-shell .inventory-sheet-table th,
.admin-area .stock-update-shell .inventory-sheet-table td{
  display:table-cell;
}
.admin-area .stock-update-shell .inventory-sheet-table td::before{
  content:none;
  display:none;
}

.admin-area .settings-sep{margin:14px 0;}
.admin-area .settings-inline-warning{margin:0;}
.admin-area .admin-users-checkbox{margin-top:10px;}
.admin-area .admin-users-delete-note{margin-top:10px;}

/* Lagerkorreksjon: kompakte antallsfelt med enhetsvalg. */
.inventory-purchase-basis-picker{position:relative;min-width:0}
.inventory-purchase-basis-toggle{width:100%;min-width:0;display:flex;align-items:flex-start;justify-content:flex-start;text-align:left;line-height:1.2;white-space:normal;overflow-wrap:normal;word-break:normal;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:var(--text);cursor:pointer}
.inventory-purchase-basis-toggle:disabled{opacity:.6;cursor:not-allowed}
.inventory-purchase-basis-menu{position:fixed;z-index:2147483200;display:grid;gap:4px;padding:6px;border:1px solid rgba(245,158,11,.30);border-radius:12px;background:var(--card);box-shadow:var(--shadow);max-width:min(380px,calc(100vw - 16px))}
.inventory-purchase-basis-menu[hidden]{display:none!important}
.inventory-purchase-basis-option{display:block;width:100%;min-height:34px;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;font-size:12px;line-height:1.25;white-space:normal;overflow-wrap:normal;word-break:normal;cursor:pointer}
.inventory-purchase-basis-option:hover,.inventory-purchase-basis-option[aria-selected="true"]{background:rgba(245,158,11,.16)}
.inventory-unit-row{display:grid;grid-template-columns:minmax(68px,1fr) minmax(54px,auto);gap:6px;align-items:start;min-width:118px}
.inventory-unit-row input,.inventory-unit-row select{width:100%;min-width:0}
.inventory-sheet-table [data-label="Innkjøp eks"] .inventory-compact,
.inventory-sheet-table [data-label="Innkjøp inkl"] .inventory-compact,
.inventory-sheet-table [data-label="Påslag %"] .inventory-compact{
  display:inline-flex;
  min-height:34px;
  align-items:center;
}
.inventory-unit-stack{display:grid;gap:6px;min-width:104px}
.inventory-unit-stack label{display:grid;gap:3px;margin:0;font-size:11px;color:var(--muted)}
.inventory-unit-stack label span{font-size:11px;color:var(--muted)}
.inventory-unit-stack select{width:100%;min-width:0}
.inventory-sheet-table [data-inventory-kg-price]{margin-top:5px;min-height:16px;line-height:1.25;color:var(--muted)}
.inventory-sheet-table [data-inventory-kg-price]:not(:empty){color:var(--text);font-weight:650}

.inventory-sheet-stock-expanded{display:none}
.inventory-sheet-product-row.inventory-sheet-lines-open .inventory-sheet-stock-collapsed{display:none}
.inventory-sheet-product-row.inventory-sheet-lines-open .inventory-sheet-stock-expanded{display:block}
.inventory-sheet-line-row .badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#334155;font-weight:700}
.inventory-sheet-stock-text{display:inline;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}
.inventory-sheet-table .inventory-price-cluster{background-color:rgba(255,255,255,.018);box-shadow:inset 0 1px rgba(245,158,11,.16),inset 0 -1px rgba(245,158,11,.16)}
.inventory-sheet-table .inventory-price-cluster-start{border-left:1px solid rgba(245,158,11,.26)}
.inventory-sheet-table .inventory-price-cluster-end{border-right:1px solid rgba(245,158,11,.26)}
.inventory-sheet-table th.inventory-price-cluster{background-color:color-mix(in srgb,var(--card) 88%,rgba(245,158,11,.22));box-shadow:inset 0 1px rgba(245,158,11,.26),inset 0 -1px rgba(245,158,11,.20)}

.inventory-sheet-line-row[hidden]{display:none!important}

.admin-products-line-active-form{
  margin:8px 0 0 0;
  display:inline-flex;
  align-items:center;
  width:auto;
}
.admin-products-line-active-form .admin-products-line-active-toggle{
  align-self:auto;
  min-height:0;
  padding:0;
}

.admin-products-line-main{
  min-width:0;
  display:grid;
  gap:4px;
}
.admin-products-line-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.admin-products-line-title-row > strong{
  min-width:0;
}
.admin-products-line-title-row .admin-products-line-active-form{
  flex:0 0 auto;
  margin:0;
}
.admin-products-line-active-form .admin-products-line-active-toggle,
.admin-products-add-line-form .admin-products-line-active-toggle{
  min-height:0;
  padding:0;
  white-space:nowrap;
  font-size:12px;
  line-height:1.15;
}
.admin-products-add-line-form .admin-products-line-active-toggle{
  align-self:center;
}

.admin-products-line-description-field{grid-column:1 / -1;}
.admin-products-line-description-field textarea{min-height:96px;resize:vertical;width:100%;}
.product-result-card .meta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
}
.product-result-card .meta .badge,
.product-result-card .meta a.badge,
.frontpage-showcase-price-list,
.frontpage-showcase-note{
  width:fit-content;
  max-width:100%;
}

.admin-products-line-image-preview{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:6px;
  color:var(--muted);
}
.admin-products-line-image-preview img{
  width:52px;
  height:44px;
  object-fit:cover;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
}
.cart-product-card .thumb{
  flex:0 0 auto;
}

.admin-area .settings-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:8px 0}
.admin-area .settings-status-card{border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:8px 9px;box-shadow:none;font-size:12px;line-height:1.35}
.admin-area .settings-subtitle{margin:12px 0 6px;font-size:.94rem}

.message-file-input,
.form-file-row{
  display:grid;
  gap:6px;
  margin-top:8px;
  color:var(--text);
}
.message-file-input input,
.form-file-row input{
  width:100%;
  padding:10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface-2);
  color:var(--text);
}
.form-file-row small,
.message-file-input small{
  color:var(--muted);
}
.message-attachments{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}
.message-attachment{
  border:1px solid var(--border);
  background:rgba(255,255,255,.06);
  color:var(--text);
  border-radius:12px;
  text-decoration:none;
  overflow:hidden;
}
.message-attachment.image{
  display:block;
  width:min(220px, 100%);
}
.message-attachment.image img{
  display:block;
  width:100%;
  max-height:180px;
  object-fit:cover;
}
.message-attachment.file{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:4px 8px;
  min-width:min(240px, 100%);
  max-width:100%;
  padding:10px 12px;
}
.message-attachment.file small{
  grid-column:2;
  color:var(--muted);
}
.message-attachment-icon{font-size:18px;line-height:1;}
.message-delete-form{display:inline-flex;margin:0;}
.btn.tiny{font-size:12px;line-height:1.1;min-height:0;padding:6px 8px;border-radius:9px;}
body.theme-light .message-attachment{background:rgba(15,23,42,.04);}

.message-selected-attachments{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:8px;
}
.message-selected-attachments[hidden]{display:none!important;}
.message-selected-attachments-head,
.message-selected-attachments-note{
  width:100%;
  color:var(--muted);
  font-size:12px;
  line-height:1.3;
}
.message-selected-attachment{
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:100%;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:var(--text);
  padding:6px 6px 6px 10px;
}
.message-selected-attachment-name{
  min-width:0;
  max-width:min(360px, calc(100vw - 120px));
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
}
.message-selected-attachment-remove{
  width:24px;
  height:24px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(239,68,68,.16);
  color:var(--text);
  cursor:pointer;
  font-weight:800;
  line-height:1;
}
.message-selected-attachment-remove:hover,
.message-selected-attachment-remove:focus-visible{
  background:rgba(239,68,68,.28);
  outline:none;
}
.message-attachment.file.pdf{
  border-color:rgba(96,165,250,.45);
  background:rgba(59,130,246,.12);
}
body.theme-light .message-selected-attachment{background:rgba(15,23,42,.04);}
body.theme-light .message-selected-attachment-remove{border-color:rgba(15,23,42,.12);background:rgba(239,68,68,.10);color:#7f1d1d;}
body.theme-light .message-attachment.file.pdf{background:rgba(59,130,246,.08);}


/* Tilgjengelighet/webhint: faste klasser for tidligere inline-stil og gyldige ARIA-mønstre. */
.muted-text{color:var(--muted);}
.stack-gap-top{margin-top:14px;}
.stack-gap-top-small{margin-top:12px;}
.group-intro-image{width:100%;height:auto;border-radius:14px;border:1px solid rgba(255,255,255,.10);}
.group-intro-text{margin-top:12px;color:var(--muted);line-height:1.45;overflow-wrap:anywhere;}
.group-name-filter{margin-top:12px;}
.group-name-filter-label{margin:0 0 8px 0;color:var(--muted);}
.privacybar-text{max-width:800px;color:var(--muted);font-size:12px;line-height:1.35;}
.hc-title{margin:0;}
.hc-nowrap{white-space:nowrap;}
.hc-status{color:var(--muted);margin-top:8px;}
.hc-noscript-warning{margin-top:10px;color:var(--danger,#ff6b6b);}
.admin-media-field-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.admin-media-option{display:flex;gap:6px;align-items:center;}
.admin-media-actions-compact{padding-top:0;border-top:none;}
.admin-products-line-note{overflow-wrap:anywhere;word-break:break-word;}

@media (max-width: 760px){.inventory-batch-vat-line{grid-template-columns:1fr}.inventory-batch-vat-head{display:grid}.inventory-batch-vat-head .btn{width:100%}}


/* Admin Lager → Historikk: ryddig, kompakt regnskapsvisning uten skjulte data */
.inventory-history-summary-panel{margin-bottom:12px}
.inventory-history-summary-panel>.card-inner{padding:12px 14px}
.inventory-history-summary-head{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:12px;align-items:end;margin-bottom:10px}
.inventory-history-summary-title h4{margin:0;font-size:15px;line-height:1.25}
.inventory-history-filter-row{display:flex;align-items:end;justify-content:flex-end;gap:7px;flex-wrap:nowrap;margin:0;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}
.inventory-history-date-range{display:inline-flex;align-items:end;gap:8px;flex:0 0 auto;white-space:nowrap}
.inventory-history-date-field{display:inline-flex;align-items:center;gap:5px;margin:0;color:var(--muted);font-size:11px;line-height:1;white-space:nowrap}
.inventory-history-date-field input{width:136px;min-height:32px;padding:5px 8px;border-radius:9px;font-size:12px}
.inventory-history-filter-row .btn{min-height:32px;padding:5px 10px;border-radius:9px;font-size:12px;white-space:nowrap;flex:0 0 auto}
.inventory-history-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:7px;min-width:0}
.inventory-history-metric{min-width:0;padding:7px 9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025)}
.inventory-history-metric-label{display:block;color:var(--muted);font-size:11px;line-height:1.2;margin-bottom:2px;overflow-wrap:anywhere}
.inventory-history-metric-label-help{display:flex;align-items:center;gap:5px;min-width:0}
.inventory-history-metric-label-help .inventory-help-icon{width:16px;height:16px;font-size:10px;flex:0 0 auto}
.inventory-history-metric-value{display:block;font-size:13px;line-height:1.25;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.inventory-history-summary-metrics{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}
.inventory-history-control-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px 0;padding:7px 9px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.02);flex-wrap:wrap}
.inventory-history-control-row .inventory-actions{gap:6px;flex-wrap:wrap}
.inventory-history-control-row .btn{min-height:30px;padding:5px 9px;border-radius:8px;font-size:12px;white-space:nowrap}
.inventory-history-card-stack{display:grid;gap:10px;margin-bottom:14px}
.inventory-history-correction-card{box-shadow:none;border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.018)}
.inventory-history-correction-card>.card-inner{padding:11px 12px}
.inventory-history-correction-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;min-width:0}
.inventory-history-correction-title{min-width:0;flex:1 1 auto}
.inventory-history-correction-title h4{margin:0;font-size:14px;line-height:1.25;overflow-wrap:anywhere}
.inventory-history-correction-meta{margin-top:2px;color:var(--muted);font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.inventory-history-correction-head .btn{min-height:30px;padding:5px 10px;border-radius:8px;font-size:12px;white-space:nowrap}
.inventory-history-correction-metrics{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px;margin:8px 0 10px}
.inventory-history-correction-metrics .inventory-history-metric{padding:6px 8px;border-radius:9px;background:rgba(255,255,255,.022)}
.inventory-history-correction-metrics .inventory-history-metric-label{font-size:10.5px;margin-bottom:1px}
.inventory-history-correction-metrics .inventory-history-metric-value{font-size:12px}
.inventory-history-correction-card .inventory-list-wrap{border-radius:10px;background:rgba(0,0,0,.06)}
.inventory-history-correction-card .inventory-list-scroll{max-height:none;overflow-x:auto;overflow-y:visible}
.inventory-history-line-table{table-layout:fixed;min-width:820px}
.inventory-history-line-table th,.inventory-history-line-table td{padding:6px 8px;font-size:12px;line-height:1.32;vertical-align:top}
.inventory-history-line-table th:nth-child(1){width:32%}
.inventory-history-line-table th:nth-child(2){width:14%}
.inventory-history-line-table th:nth-child(3){width:15%}
.inventory-history-line-table th:nth-child(4){width:20%}
.inventory-history-line-table th:nth-child(5){width:19%}
.inventory-history-line-table td strong{font-size:12.5px;line-height:1.25;overflow-wrap:anywhere}
.inventory-history-line-table .inventory-compact{font-size:11.5px;line-height:1.25;overflow-wrap:anywhere}
.inventory-history-correction-card>.card-inner>.inventory-note{margin-top:8px!important;font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.inventory-history-correction-card .badge{margin-top:3px}
@media (max-width: 980px){
  .inventory-history-summary-head{grid-template-columns:1fr;align-items:start}
  .inventory-history-filter-row{justify-content:flex-start}
  .inventory-history-correction-head{flex-wrap:wrap}
}
@media (max-width: 640px){
  .inventory-history-summary-panel>.card-inner,.inventory-history-correction-card>.card-inner{padding:10px}
  .inventory-history-date-field input{width:128px}
  .inventory-history-metric-grid{grid-template-columns:1fr 1fr}
  .inventory-history-summary-metrics{grid-template-columns:1fr}
  .inventory-history-line-table{min-width:0}
}

/* Kundevendt produktside: produktinnholdet reduseres 20 % på desktop uten å
 * påvirke header, nettbutikkmeny eller sidebaren. Ytre ramme gir 80 % fysisk
 * bredde; innholdet zoomes samtidig til 80 % slik at typografi, kontroller og
 * innvendige mål reduseres tilsvarende uten å påvirke menyene. */
.product-detail-scale-frame{
  width:100%;
  min-width:0;
  margin-inline:auto;
}
.product-detail-scale-content{
  width:100%;
  min-width:0;
}
@media (min-width:901px){
  .product-detail-scale-frame{width:80%;}
  .product-detail-scale-content{width:100%;zoom:.8;}
}

/* Kundevendt produktside: hovedprodukt og varianter vises som like kort i én liste. */
body:not(.admin-area) .pdp-list{
  max-width:none;
  margin:16px 0 0;
  display:grid;
  gap:clamp(16px,2.4vw,28px);
}
body:not(.admin-area) .pdp,
body:not(.admin-area) .pdp--product,
body:not(.admin-area) .pdp--variant{
  width:100%;
  max-width:none;
  margin:0;
  background:var(--card);
  border:1px solid var(--border,var(--line));
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
body.theme-light:not(.admin-area) .pdp,
body.theme-light:not(.admin-area) .pdp--product,
body.theme-light:not(.admin-area) .pdp--variant{box-shadow:0 10px 28px rgba(15,23,42,.08)}
body:not(.admin-area) .pdp-topp,
body:not(.admin-area) .pdp-topp--variant{
  display:grid;
  gap:0;
  align-items:start;
  padding:clamp(14px,2vw,22px);
  border-top:0;
}
@media(min-width:1024px){
  body:not(.admin-area) .pdp-topp,
  body:not(.admin-area) .pdp-topp--variant{
    grid-template-columns:minmax(280px,46%) minmax(320px,1fr);
    gap:clamp(18px,2.4vw,30px);
  }
}
body:not(.admin-area) .pdp-media{
  min-width:0;
  position:relative;
  align-self:start;
}
body:not(.admin-area) .pdp-image-stage{
  position:relative;
  overflow:hidden;
  border-radius:8px;
}
body:not(.admin-area) .pdp-bilete{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  display:block;
  background:#fff;
  border:1px solid var(--border,var(--line));
  border-radius:8px;
}
body:not(.admin-area) .pdp-bilete--tom{
  display:flex;
  align-items:center;
  justify-content:center;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.06) 14px,rgba(255,255,255,.02) 14px,rgba(255,255,255,.02) 28px);
  color:var(--muted);
  font-size:.8125rem;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body:not(.admin-area) .pdp-kampanje{
  position:absolute;
  left:12px;
  top:12px;
  z-index:2;
  max-width:calc(100% - 24px);
  display:grid;
  gap:2px;
  padding:7px 9px;
  border:1px solid rgba(245,158,11,.55);
  border-radius:10px;
  background:rgba(11,12,16,.82);
  color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
}
body.theme-light:not(.admin-area) .pdp-kampanje{
  background:rgba(255,255,255,.90);
  color:var(--text);
  box-shadow:0 10px 24px rgba(15,23,42,.14);
}
body:not(.admin-area) .pdp-kampanje strong{font-size:.8125rem;line-height:1.15}
body:not(.admin-area) .pdp-kampanje span{font-size:.75rem;line-height:1.2;color:rgba(255,255,255,.82)}
body.theme-light:not(.admin-area) .pdp-kampanje span{color:var(--muted)}
body:not(.admin-area) .pdp-cart-badge{
  position:absolute;
  right:12px;
  top:12px;
  z-index:3;
  max-width:min(58%, 260px);
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:10px;
  background:rgba(11,12,16,.78);
  color:#fff;
  font-size:.75rem;
  font-weight:700;
  line-height:1.2;
  box-shadow:0 10px 24px rgba(0,0,0,.22);
  backdrop-filter:blur(8px);
}
body.theme-light:not(.admin-area) .pdp-cart-badge{
  background:rgba(255,255,255,.90);
  color:var(--text);
  border-color:rgba(15,23,42,.14);
  box-shadow:0 10px 24px rgba(15,23,42,.12);
}
body:not(.admin-area) .pdp-gallery-arrow{
  position:absolute;
  top:50%;
  z-index:4;
  transform:translateY(-50%);
  width:42px;
  height:56px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:12px;
  background:rgba(11,12,16,.62);
  color:#fff;
  font-size:2rem;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  opacity:0;
  pointer-events:none;
  transition:opacity .16s ease, background .16s ease;
  backdrop-filter:blur(8px);
}
body:not(.admin-area) .pdp-image-stage:hover .pdp-gallery-arrow,
body:not(.admin-area) .pdp-image-stage:focus-within .pdp-gallery-arrow{
  opacity:1;
  pointer-events:auto;
}
body:not(.admin-area) .pdp-gallery-arrow[hidden]{display:none!important}
body:not(.admin-area) .pdp-gallery-arrow--prev{left:10px}
body:not(.admin-area) .pdp-gallery-arrow--next{right:10px}
body:not(.admin-area) .pdp-gallery-arrow:hover{background:rgba(11,12,16,.82)}
body.theme-light:not(.admin-area) .pdp-gallery-arrow{
  background:rgba(255,255,255,.86);
  color:var(--text);
  border-color:rgba(15,23,42,.16);
}
body.theme-light:not(.admin-area) .pdp-gallery-arrow:hover{background:#fff}
body:not(.admin-area) .pdp-thumbs{
  display:flex;
  gap:8px;
  margin-top:8px;
  overflow-x:auto;
  padding:2px 2px 4px;
  scrollbar-width:thin;
}
body:not(.admin-area) .pdp-thumb{
  flex:0 0 auto;
  width:64px;
  height:48px;
  border:1px solid var(--border,var(--line));
  border-radius:8px;
  padding:0;
  overflow:hidden;
  background:var(--card);
  cursor:pointer;
  opacity:.68;
}
body:not(.admin-area) .pdp-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
body:not(.admin-area) .pdp-thumb.is-active{
  opacity:1;
  border-color:var(--accent,#7c5cff);
  box-shadow:0 0 0 2px rgba(124,92,255,.22);
}
body:not(.admin-area) .pdp-variants{
  display:grid;
  gap:clamp(16px,2.4vw,28px);
}
body:not(.admin-area) .pdp-kjop{
  min-width:0;
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
body:not(.admin-area) .pdp-eyebrow{
  font-size:.8125rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ok,#2E7D4F);
  margin-bottom:10px;
}
body:not(.admin-area) .pdp-tittel,
body:not(.admin-area) .pdp--variant .pdp-tittel{
  font-family:var(--font-display,Georgia,serif);
  font-weight:620;
  font-size:clamp(1.65rem,3vw,2.25rem);
  line-height:1.12;
  letter-spacing:-.02em;
  margin:0;
}
body:not(.admin-area) .pdp-format{
  margin:10px 0 0;
  font-size:1.02rem;
  font-weight:500;
  color:var(--muted);
  line-height:1.45;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.pdp-format span{
  color:var(--muted);
  font-weight:700;
  margin-right:6px;
}

body:not(.admin-area) .pdp-pris{
  margin-top:18px;
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}
body:not(.admin-area) .pdp-pris-tal{
  font-family:var(--font-display,Georgia,serif);
  font-weight:700;
  font-size:clamp(1.85rem,2.8vw,2.35rem);
  line-height:1.05;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
}
body:not(.admin-area) .pdp-pris-eining{
  font-size:1.02rem;
  font-weight:500;
  color:var(--muted);
}
body:not(.admin-area) .pdp-pris-gammal{
  font-size:1.05rem;
  color:var(--muted);
  text-decoration:line-through;
  font-variant-numeric:tabular-nums;
}
body:not(.admin-area) .pdp-estimat{
  margin:6px 0 0;
  font-size:1rem;
  color:var(--muted);
  font-variant-numeric:tabular-nums;
}
body:not(.admin-area) .pdp-mva{
  margin:4px 0 0;
  font-size:.9rem;
  color:var(--muted);
}
body:not(.admin-area) .pdp-lager{
  margin:16px 0 0;
  display:flex;
  align-items:center;
  gap:9px;
  font-size:1.02rem;
  font-weight:600;
}
body:not(.admin-area) .pdp-lager::before{
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:currentColor;
  flex:none;
}
body:not(.admin-area) .pdp-lager.er-inne{color:var(--ok,#2E7D4F)}
body:not(.admin-area) .pdp-lager.er-ute{color:var(--muted)}
body:not(.admin-area) .pdp-reservert{
  margin:4px 0 0;
  font-size:.9rem;
  color:var(--muted);
}
body:not(.admin-area) .pdp-skjema{margin-top:auto;padding-top:20px;display:block;width:100%;max-width:420px}
body:not(.admin-area) .pdp-antal-merke{
  display:block;
  font-size:.9rem;
  font-weight:600;
  color:var(--muted);
  margin-bottom:8px;
}
body:not(.admin-area) .pdp-antal{
  display:inline-flex;
  border:1px solid var(--border,var(--line));
  border-radius:6px;
  overflow:hidden;
  background:rgba(255,255,255,.03);
}
body.theme-light:not(.admin-area) .pdp-antal{background:rgba(15,23,42,.03)}
body:not(.admin-area) .pdp-antal-knapp{
  width:46px;
  height:46px;
  border:0;
  background:transparent;
  cursor:pointer;
  font-size:1.25rem;
  line-height:1;
  color:var(--text);
}
body:not(.admin-area) .pdp-antal-knapp:hover{background:rgba(255,255,255,.08)}
body.theme-light:not(.admin-area) .pdp-antal-knapp:hover{background:rgba(15,23,42,.06)}
body:not(.admin-area) .pdp-antal-felt{
  width:64px;
  height:46px;
  text-align:center;
  border:0;
  border-inline:1px solid var(--border,var(--line));
  font-size:1.08rem;
  font-variant-numeric:tabular-nums;
  background:transparent;
  color:var(--text);
  -moz-appearance:textfield;
  appearance:textfield;
}
body:not(.admin-area) .pdp-antal-felt::-webkit-outer-spin-button,
body:not(.admin-area) .pdp-antal-felt::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body:not(.admin-area) .pdp-cta,
body.theme-light:not(.admin-area) .pdp-cta,
body.theme-dark:not(.admin-area) .pdp-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:52px;
  margin-top:14px;
  padding-inline:22px;
  border:1px solid rgba(124,92,255,.46);
  border-radius:10px;
  background:linear-gradient(135deg, rgba(124,92,255,.30), rgba(39,198,255,.18));
  color:#fff;
  cursor:pointer;
  font-family:inherit;
  font-size:1.02rem;
  font-weight:650;
  letter-spacing:.02em;
  line-height:1;
  box-shadow:0 10px 22px rgba(0,0,0,.18);
}
body.theme-light:not(.admin-area) .pdp-cta{
  color:var(--text);
  background:linear-gradient(135deg, rgba(124,92,255,.16), rgba(39,198,255,.12));
  box-shadow:0 10px 22px rgba(15,23,42,.08);
}
body:not(.admin-area) .pdp-cta:hover{background:linear-gradient(135deg, rgba(124,92,255,.42), rgba(39,198,255,.24));color:#fff;border-color:rgba(124,92,255,.70)}
body.theme-light:not(.admin-area) .pdp-cta:hover{color:var(--text);background:linear-gradient(135deg, rgba(124,92,255,.24), rgba(39,198,255,.18))}
body:not(.admin-area) .pdp-cta:active{transform:translateY(1px)}
body:not(.admin-area) .pdp-cta--av{background:rgba(160,160,160,.35);color:var(--muted);cursor:not-allowed}
body:not(.admin-area) .pdp-cta:focus-visible,
body:not(.admin-area) .pdp-antal-knapp:focus-visible,
body:not(.admin-area) .pdp-antal-felt:focus-visible{outline:2px solid var(--text);outline-offset:3px}
body:not(.admin-area) .pdp-varenr{margin:12px 0 0;font-size:.875rem;color:var(--muted);opacity:.8}
body:not(.admin-area) .pdp-kropp{max-width:none;margin-top:0;padding:0 clamp(14px,2vw,22px) clamp(14px,2vw,22px)}
body:not(.admin-area) .pdp-bolk{padding-block:18px;border-top:1px solid var(--line)}
body:not(.admin-area) .pdp-bolk:first-child{border-top:0;padding-top:18px}
body:not(.admin-area) .pdp-bolk h2{
  font-family:var(--font-display,Georgia,serif);
  font-weight:620;
  font-size:1.25rem;
  letter-spacing:-.015em;
  margin:0 0 8px;
}
body:not(.admin-area) .pdp-bolk p{margin:0;font-size:1.05rem;line-height:1.6;max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:normal}
body:not(.admin-area) .pdp-bolk--svak p{font-size:1rem;color:var(--muted)}
@media(max-width:1023px){body:not(.admin-area) .pdp-kjop{padding-top:14px}}
@media(max-width:640px){
  body:not(.admin-area) .pdp-list{margin-top:12px;gap:14px}
  body:not(.admin-area) .pdp-topp,
  body:not(.admin-area) .pdp-topp--variant{gap:0;padding:12px}
  body:not(.admin-area) .pdp-bilete{aspect-ratio:3/2}
  body:not(.admin-area) .pdp-kjop{padding-top:12px;max-width:none}
  body:not(.admin-area) .pdp-format{margin-top:8px}
  body:not(.admin-area) .pdp-pris{margin-top:14px}
  body:not(.admin-area) .pdp-lager{margin-top:12px}
  body:not(.admin-area) .pdp-skjema{margin-top:0;padding-top:16px;max-width:none}
  body:not(.admin-area) .pdp-antal{width:100%}
  body:not(.admin-area) .pdp-antal-felt{flex:1;width:auto;height:44px}
  body:not(.admin-area) .pdp-antal-knapp{width:44px;height:44px}
  body:not(.admin-area) .pdp-cta,
  body.theme-light:not(.admin-area) .pdp-cta,
  body.theme-dark:not(.admin-area) .pdp-cta{min-height:48px;font-size:1rem}
  body:not(.admin-area) .pdp-kropp{padding-inline:12px;padding-bottom:12px}
  body:not(.admin-area) .pdp-bolk{padding-block:14px}
  body:not(.admin-area) .pdp-bolk p{font-size:1rem}
  body:not(.admin-area) .pdp-cart-badge{right:8px;top:8px;max-width:64%;font-size:.7rem;padding:6px 7px}
  body:not(.admin-area) .pdp-kampanje{left:8px;top:8px;max-width:52%;font-size:.72rem}
  body:not(.admin-area) .pdp-gallery-arrow{opacity:1;pointer-events:auto;width:36px;height:48px;font-size:1.7rem}
  body:not(.admin-area) .pdp-thumb{width:58px;height:44px}
}
@media (prefers-reduced-motion:reduce){
  body:not(.admin-area) .pdp-cta,
  body:not(.admin-area) .pdp-antal-knapp{transition:none}
  body:not(.admin-area) .pdp-cta:active{transform:none}
}
.pdp-fast{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:50;
  display:none;
  align-items:center;
  gap:12px;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));
  background:var(--card);
  border-top:1px solid var(--border,var(--line));
  box-shadow:0 -4px 18px rgba(0,0,0,.18);
}
@media(max-width:640px){.pdp-fast.er-synleg{display:flex}}
.pdp-fast-pris{flex:1;min-width:0;line-height:1.2}
.pdp-fast-tal{display:block;font-family:var(--font-display,Georgia,serif);font-weight:700;font-size:1.25rem;font-variant-numeric:tabular-nums}
.pdp-fast-eining{display:block;font-size:.8125rem;color:var(--muted)}
body:not(.admin-area) .pdp-fast .pdp-cta,
body.theme-light:not(.admin-area) .pdp-fast .pdp-cta,
body.theme-dark:not(.admin-area) .pdp-fast .pdp-cta{width:auto;flex:0 0 auto;margin-top:0;min-height:44px;padding-inline:22px;font-size:1rem}
@media (prefers-reduced-motion:no-preference){.pdp-fast{transition:transform 220ms cubic-bezier(.33,1,.68,1)}.pdp-fast:not(.er-synleg){transform:translateY(100%)}}

/* Produktlister: ryddig kortstil fra referansevisningen (Gamle Skeimo), tilpasset prosjektets dark/light-tema. */
body:not(.admin-area) .grid.product-results-grid{
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
  max-width:none;
  justify-content:start;
  align-items:stretch;
  gap:18px;
}
body:not(.admin-area) .grid.product-results-grid > .product-result-card{
  grid-column:auto;
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:0;
  background:var(--card);
  border:1px solid var(--border,var(--line));
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.theme-light:not(.admin-area) .grid.product-results-grid > .product-result-card{
  box-shadow:0 12px 30px rgba(15,23,42,.08);
}
body:not(.admin-area) .product-results-grid .product-result-card:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.26);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}
body.theme-light:not(.admin-area) .product-results-grid .product-result-card:hover{
  border-color:rgba(15,23,42,.24);
  box-shadow:0 16px 34px rgba(15,23,42,.13);
}
body:not(.admin-area) .product-results-grid .card-inner{
  display:flex;
  flex-direction:column;
  flex:1;
  height:100%;
  padding:0;
  gap:0;
}
body:not(.admin-area) .product-results-grid .card-head{
  display:flex;
  flex-direction:column;
  flex:1;
  height:100%;
  gap:0;
  padding:0;
}
body:not(.admin-area) .product-results-grid .thumb{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  flex:none;
  border:0;
  border-radius:0;
  border-bottom:1px solid var(--border,var(--line));
  background:rgba(255,255,255,.04);
  overflow:hidden;
  position:relative;
}
body.theme-light:not(.admin-area) .product-results-grid .thumb{
  background:rgba(15,23,42,.035);
}
body:not(.admin-area) .product-results-grid .thumb-link{display:block;width:100%;height:100%;}
body:not(.admin-area) .product-results-grid .thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
body:not(.admin-area) .product-result-card:hover .thumb img{transform:none;}
body:not(.admin-area) .product-results-grid .missing-note{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:0;
  padding:12px;
  background:repeating-linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.06) 12px, rgba(255,255,255,.025) 12px, rgba(255,255,255,.025) 24px);
  color:var(--muted);
  font-size:.6875rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
}
body.theme-light:not(.admin-area) .product-results-grid .missing-note{
  background:repeating-linear-gradient(135deg,#F6F5F2,#F6F5F2 12px,#F1EFEA 12px,#F1EFEA 24px);
}
body:not(.admin-area) .product-results-grid .card-head > div:not(.thumb){
  display:flex;
  flex-direction:column;
  flex:1;
  min-width:0;
  padding:16px;
}
body:not(.admin-area) .product-results-grid .title{
  margin:0 0 6px 0;
  font-size:1.05rem;
  font-weight:650;
  line-height:1.25;
}
body:not(.admin-area) .product-results-grid .title a{color:var(--text);text-decoration:none;}
body:not(.admin-area) .product-results-grid .title a:hover{text-decoration:underline;}
body:not(.admin-area) .product-results-grid .meta,
body:not(.admin-area) .product-result-card .meta{
  display:flex;
  flex-wrap:wrap;
  flex-direction:row;
  align-items:center;
  gap:7px;
  margin:0 0 10px 0;
}
body:not(.admin-area) .product-results-grid .badge.link{
  width:auto;
  background:transparent;
  border:0;
  padding:0;
  font-size:.6875rem;
  font-weight:750;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--good);
  text-decoration:none;
}
body:not(.admin-area) .product-results-grid .badge.link:hover{text-decoration:underline;}
body:not(.admin-area) .product-results-grid .badge:not(.link):not(.good):not(.bad):not(.warn){
  width:auto;
  background:transparent;
  border:0;
  padding:0;
  font-weight:750;
  font-size:1.18rem;
  letter-spacing:-.01em;
  font-variant-numeric:tabular-nums;
  color:var(--text);
}
body:not(.admin-area) .product-results-grid .badge.good,
body:not(.admin-area) .product-results-grid .badge.bad{
  width:auto;
  background:transparent;
  border:0;
  padding:0;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.8125rem;
  font-weight:650;
}
body:not(.admin-area) .product-results-grid .badge.good{color:var(--good);}
body:not(.admin-area) .product-results-grid .badge.bad{color:var(--muted);}
body:not(.admin-area) .product-results-grid .badge.good::before,
body:not(.admin-area) .product-results-grid .badge.bad::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  flex:none;
}
body:not(.admin-area) .product-results-grid .badge.warn{
  width:auto;
  max-width:100%;
}
body:not(.admin-area) .product-results-grid .card-actions{
  margin-top:auto;
  padding-top:12px;
}
body:not(.admin-area) .product-results-grid .card-actions button[type=submit],
body:not(.admin-area) .product-results-grid .card-actions .btn,
body.theme-light:not(.admin-area) .product-results-grid .card-actions button[type=submit],
body.theme-dark:not(.admin-area) .product-results-grid .card-actions button[type=submit]{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:44px;
  border-radius:7px;
  box-shadow:none;
  font-weight:650;
  font-size:.8125rem;
  letter-spacing:.045em;
  text-transform:uppercase;
  line-height:1.1;
}
body:not(.admin-area) .product-results-grid .card-actions input[type=email],
body:not(.admin-area) .product-results-grid .card-actions input[type=number]{
  min-height:40px;
  border-radius:7px;
}

/* Felles kompakt lager-varsel i produktkort og på produktsiden. */
body:not(.admin-area) .product-waitlist{
  width:100%;
  max-width:280px;
}
body:not(.admin-area) .product-waitlist-message{
  margin:2px 0 8px;
  color:var(--muted);
  line-height:1.35;
}
body:not(.admin-area) .product-waitlist-next{
  display:block;
  margin-top:4px;
}
body:not(.admin-area) .product-waitlist-form{
  display:grid;
  gap:8px;
  width:100%;
}
body:not(.admin-area) .product-waitlist-controls{
  display:grid;
  gap:8px;
  width:100%;
}
body:not(.admin-area) .product-waitlist-controls input[type=email],
body:not(.admin-area) .product-waitlist-controls button[type=submit]{
  width:100%;
  box-sizing:border-box;
}
body:not(.admin-area) .product-waitlist-controls input[type=email]{
  min-height:40px;
  border-radius:7px;
}
body:not(.admin-area) .product-waitlist-controls button[type=submit],
body.theme-light:not(.admin-area) .product-waitlist-controls button[type=submit],
body.theme-dark:not(.admin-area) .product-waitlist-controls button[type=submit]{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:7px;
  box-shadow:none;
  font-weight:650;
  font-size:.8125rem;
  letter-spacing:.045em;
  text-transform:uppercase;
  line-height:1.1;
}
body:not(.admin-area) .product-waitlist-consent{
  display:flex;align-items:flex-start;gap:8px;margin:0;line-height:1.4;font-size:.9rem;
}
body:not(.admin-area) .product-waitlist-consent input{flex:0 0 20px;width:20px;height:20px;margin-top:2px;}
.product-waitlist-submit{position:relative;display:block;min-width:0;}
.product-waitlist-tooltip{display:none;margin-top:8px;padding:12px 14px;border:2px solid var(--primary);border-radius:9px;background:var(--panel);color:var(--text);font-size:1rem;font-weight:700;line-height:1.5;}
.is-consent-missing .product-waitlist-submit:hover .product-waitlist-tooltip,
.is-consent-missing .product-waitlist-submit:focus-within .product-waitlist-tooltip,
.show-consent-help .product-waitlist-tooltip{display:block;}
.product-waitlist-form [aria-disabled="true"]{opacity:.65;cursor:not-allowed;}
.frontpage-marquee[hidden], [data-showcase-error][hidden]{display:none!important;}

body:not(.admin-area) .product-waitlist--pdp{
  margin-top:18px;
}
@media(max-width:760px){
  body:not(.admin-area) .grid.product-results-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
  }
  body:not(.admin-area) .product-results-grid .card-head > div:not(.thumb){padding:12px;}
  body:not(.admin-area) .product-results-grid .title{font-size:.9rem;line-height:1.2;}
  body:not(.admin-area) .product-results-grid .badge:not(.link):not(.good):not(.bad):not(.warn){font-size:1.02rem;}
  body:not(.admin-area) .product-results-grid .badge.good,
  body:not(.admin-area) .product-results-grid .badge.bad{font-size:.75rem;}
  body:not(.admin-area) .product-results-grid .badge.link{font-size:.625rem;}
  body:not(.admin-area) .product-results-grid .card-actions button[type=submit],
  body:not(.admin-area) .product-results-grid .card-actions .btn,
  body.theme-light:not(.admin-area) .product-results-grid .card-actions button[type=submit],
  body.theme-dark:not(.admin-area) .product-results-grid .card-actions button[type=submit]{
    min-height:42px;
    font-size:.6875rem;
    letter-spacing:.04em;
    padding-inline:6px;
  }
}
@media(max-width:420px){
  body:not(.admin-area) .grid.product-results-grid{grid-template-columns:minmax(0,1fr);}
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-area) .product-results-grid .product-result-card,
  body:not(.admin-area) .product-results-grid .thumb img{transition:none;}
  body:not(.admin-area) .product-result-card:hover{transform:none;}
}

/* Admin bildebibliotek: mappevisning og fleropplasting */
.admin-media-browser{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px;align-items:start;min-width:0;}
.admin-media-tree-wrap{border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.035);padding:10px;min-width:0;}
.admin-media-tree-head{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:8px;}
.admin-media-tree-head-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:0;}
.admin-media-tree{display:grid;gap:3px;max-height:54vh;overflow:auto;padding-right:2px;}
.admin-media-tree-item{appearance:none;border:0;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;border-radius:10px;padding:7px 10px;font-size:13px;cursor:pointer;min-width:0;}
.admin-media-tree-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.admin-media-tree-item em{font-style:normal;color:var(--muted);font-size:11px;min-width:20px;text-align:right;}
.admin-media-tree-item:hover,.admin-media-tree-item:focus{outline:none;background:rgba(255,255,255,.07);}
.admin-media-tree-item.active{background:color-mix(in srgb, var(--primary) 18%, transparent);box-shadow:inset 3px 0 0 var(--primary);}
.admin-media-folder-form{display:grid;gap:8px;margin-bottom:10px;padding:9px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(0,0,0,.12);}
.admin-media-folder-form[hidden]{display:none!important;}
.admin-media-folder-form label{display:grid;gap:4px;}
.admin-media-folder-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap;}




.small-btn{padding:6px 9px;font-size:12px;line-height:1.15;}
@media (max-width:760px){
  .admin-media-tree{max-height:240px;}
}

/* 2026-08-15: Bildebibliotek – nummerert bildevalg og ryddet fleropplasting.
   Selve mappetreet defineres samlet i den kompakte bildebibliotek-komponenten nedenfor. */
.admin-media-card-thumb{position:relative;}
.admin-media-select-order,
.admin-media-selected-thumb b{
  position:absolute;
  top:5px;
  right:5px;
  z-index:2;
  min-width:24px;
  height:24px;
  padding:0 6px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--accent);
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:800;
  box-shadow:0 2px 9px rgba(0,0,0,.35);
}
.admin-media-selected-thumb{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  min-width:34px;
}
.admin-media-selected-thumb img{
  display:block;
  width:34px;
  height:34px;
  max-width:34px;
  max-height:34px;
  object-fit:contain;
  object-position:center;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
  min-width:0;
  min-height:0;
}
.admin-media-selected-thumb b{
  top:-5px;
  right:-5px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  font-size:10px;
}
.admin-media-selected-item--ordered{padding-left:5px;}
.admin-media-selected-item--ordered > img{display:none;}

.admin-media-upload-preview{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:10px;
  min-width:0;
}
.admin-media-upload-preview[hidden]{display:none!important;}
.admin-media-upload-preview-card{
  display:grid;
  gap:8px;
  min-width:0;
  padding:9px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.04);
}
.admin-media-upload-preview-thumb{
  height:110px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:11px;
  background:rgba(0,0,0,.24);
  color:var(--muted);
  min-width:0;
}
.admin-media-upload-preview-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.admin-media-upload-preview-name{
  display:grid;
  gap:5px;
  min-width:0;
}
.admin-media-upload-preview-name input{width:100%;min-width:0;}
.admin-media-upload-original{
  color:var(--muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-media-tree-item .admin-media-tree-folder-icon{overflow:visible;text-overflow:clip;white-space:normal;}

/* Framside/nettbutikk splitt: dedikert forside og egen nettbutikkvisning */
body.frontpage-home-page{min-height:100vh;min-height:100dvh;}
body.frontpage-home-page .container{
  display:flex;
  flex-direction:column;
}
/*
 * Når hele framsiden faktisk kan få plass i synlig viewport aktiverer index.php
 * frontpage-fit-viewport etter å ha målt toppfelt, knapper og footer. Da fyller
 * siden nøyaktig skjermen uten vertikal scroll. På små/lave skjermer aktiveres
 * ikke modusen, og siden ruller normalt i stedet for å klippe innhold.
 */
body.frontpage-home-page.frontpage-fit-viewport{
  overflow-y:hidden;
}
body.frontpage-home-page.frontpage-fit-viewport .container{
  height:var(--frontpage-viewport-height,100vh);
  min-height:0;
  max-height:var(--frontpage-viewport-height,100dvh);
  overflow:hidden;
}
body.frontpage-home-page .frontpage-home-hero{
  min-height:0;
}
body.frontpage-home-page.frontpage-fit-viewport .frontpage-home-hero{
  flex:1 1 0;
  height:var(--frontpage-fit-hero-height,auto);
  overflow:hidden;
}
body.frontpage-home-page.frontpage-fit-viewport .frontpage-hero-copy,
body.frontpage-home-page.frontpage-fit-viewport .frontpage-hero-media{
  min-height:0;
}
body.frontpage-home-page.frontpage-fit-viewport .frontpage-hero-media{
  height:min(100%,560px);
  max-height:min(100%,560px);
  display:flex;
  align-items:center;
  border-radius:18px;
  overflow:hidden;
}
body.frontpage-home-page.frontpage-fit-viewport .frontpage-hero-media img{
  width:100%;
  height:auto;
  max-height:100%;
  object-fit:contain;
}
.frontpage-home-hero{margin-top:14px;}
.frontpage-admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 0;}
.frontpage-admin-panel{display:none;gap:14px;}
.frontpage-admin-panel.is-active{display:grid;}

body.shop-dedicated-page .topbar{margin-bottom:14px;}
.shop-dedicated-layout{
  display:grid;
  grid-template-columns:minmax(220px,280px) minmax(0,1fr);
  gap:18px;
  align-items:stretch;
}
.shop-dedicated-sidebar{
  position:relative;
  top:auto;
  z-index:3;
  min-width:0;
  align-self:stretch;
}
.shop-sidebar-card{
  border:1px solid var(--border,var(--line));
  border-radius:18px;
  background:var(--card);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  padding:12px;
  display:grid;
  gap:10px;
  height:100%;
  align-content:start;
}
body.theme-light .shop-sidebar-card{box-shadow:0 14px 34px rgba(15,23,42,.08);}
.shop-sidebar-title{
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
  font-size:.82rem;
  color:var(--muted);
}
.shop-sidebar-search{display:grid;gap:8px;position:relative;}
.shop-sidebar-search input[type=search]{width:100%;min-width:0;}
.shop-sidebar-all,
.shop-sidebar-link{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 9px;
  border-radius:10px;
  color:var(--text);
  text-decoration:none;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.045);
  line-height:1.18;
  min-width:0;
}
.shop-sidebar-all{font-weight:750;}
body.theme-light .shop-sidebar-all,
body.theme-light .shop-sidebar-link{background:rgba(15,23,42,.04);border-color:rgba(15,23,42,.08);}
.shop-sidebar-nav{min-width:0;}
.shop-sidebar-link{font-size:.9rem;overflow-wrap:anywhere;}
.shop-sidebar-menu-image{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:7px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
}
.shop-sidebar-menu-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
}
.shop-sidebar-link-label{min-width:0;overflow-wrap:anywhere;}
body.theme-light .shop-sidebar-menu-image{border-color:rgba(15,23,42,.10);background:rgba(15,23,42,.035);}
.shop-sidebar-branch-row{display:block;min-width:0;position:relative;}
.shop-sidebar-link-branch{width:100%;padding-right:38px;}
.shop-sidebar-branch-caret{
  position:absolute;
  top:1px;
  right:1px;
  bottom:1px;
  width:34px;
  padding:0;
  border:0;
  border-radius:0 9px 9px 0;
  background:transparent;
  display:grid;
  place-items:center;
  color:var(--muted);
  font:inherit;
  font-size:1rem;
  line-height:1;
  cursor:pointer;
  transition:transform .16s ease,color .16s ease,background .16s ease;
}
.shop-sidebar-branch-caret:hover,
.shop-sidebar-branch-caret:focus-visible{color:var(--text);background:rgba(255,255,255,.06);outline:none;}
body.theme-light .shop-sidebar-branch-caret:hover,
body.theme-light .shop-sidebar-branch-caret:focus-visible{background:rgba(15,23,42,.055);}
.shop-sidebar-node.is-expanded > .shop-sidebar-branch-row .shop-sidebar-branch-caret{transform:rotate(90deg);}
.shop-sidebar-all:hover,
.shop-sidebar-link:hover,
.shop-sidebar-all.active,
.shop-sidebar-link.active{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.16);
}
.shop-sidebar-link.is-parent-active{
  background:rgba(96,165,250,.10);
  border-color:rgba(96,165,250,.18);
  color:rgba(226,232,240,.88);
  font-weight:720;
}
.shop-sidebar-link.is-current,
.shop-sidebar-all.active{
  background:linear-gradient(135deg, rgba(96,165,250,.28), rgba(34,197,94,.14));
  border-color:rgba(96,165,250,.45);
  color:var(--text);
  font-weight:820;
}
body.theme-light .shop-sidebar-all:hover,
body.theme-light .shop-sidebar-link:hover,
body.theme-light .shop-sidebar-all.active,
body.theme-light .shop-sidebar-link.active{
  background:rgba(15,23,42,.07);
  border-color:rgba(15,23,42,.14);
}
body.theme-light .shop-sidebar-link.is-parent-active{background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.16);color:rgba(15,23,42,.78);}
body.theme-light .shop-sidebar-link.is-current,body.theme-light .shop-sidebar-all.active{background:linear-gradient(135deg, rgba(37,99,235,.14), rgba(22,163,74,.10));border-color:rgba(37,99,235,.30);color:var(--text);}
.shop-sidebar-tree{list-style:none;margin:0;padding:0;display:grid;gap:3px;}
.shop-sidebar-tree .shop-sidebar-tree{margin:3px 0 3px 12px;padding-left:10px;border-left:1px solid rgba(255,255,255,.10);}
body.theme-light .shop-sidebar-tree .shop-sidebar-tree{border-left-color:rgba(15,23,42,.12);}
.shop-sidebar-children[hidden]{display:none!important;}
.shop-sidebar-node{min-width:0;}
.shop-sidebar-node.is-active-path > .shop-sidebar-branch-row .shop-sidebar-link{font-weight:760;}
.shop-dedicated-main{min-width:0;display:grid;gap:14px;min-height:100%;}
.shop-landing-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-end;
  padding:14px 0 2px;
}
.shop-landing-head h2{margin:0;font-size:clamp(1.55rem,2.6vw,2.2rem);}
.shop-landing-head p{margin:6px 0 0;color:var(--muted);max-width:62ch;}
@media (max-height:700px){
  body.frontpage-home-page:not(.frontpage-fit-viewport) .frontpage-hero-media img{max-height:none;}
}

@media(max-width:900px){
  .shop-dedicated-layout{grid-template-columns:1fr;align-items:start;}
  .shop-dedicated-sidebar{position:static;}
  .shop-sidebar-card{border-radius:14px;height:auto;}
  .shop-sidebar-tree{display:grid;grid-template-columns:1fr;}
  .shop-sidebar-tree .shop-sidebar-tree{grid-column:1/-1;margin-left:10px;}
}


.campaign-ticker{
  width:100%;
  min-height:0;
  display:flex;
  justify-content:center;
  margin:6px 0 0;
}
.campaign-ticker-below-header{position:relative;z-index:20;}
.campaign-ticker-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  max-width:min(100%, 980px);
  padding:6px 12px;
  border:1px solid rgba(245,158,11,.34);
  border-radius:999px;
  background:rgba(245,158,11,.10);
  color:var(--text);
  text-decoration:none;
  line-height:1.2;
  box-shadow:0 10px 24px rgba(0,0,0,.14);
  transition:opacity .36s ease, transform .36s ease, border-color .16s ease, background .16s ease;
}
.campaign-ticker-link:hover,
.campaign-ticker-link:focus-visible{border-color:rgba(245,158,11,.70);background:rgba(245,158,11,.16);outline:none;}
.campaign-ticker.is-fading .campaign-ticker-link{opacity:0;transform:translateY(-4px);}
.campaign-ticker-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(127,29,29,.92);
  color:#fff;
  font-size:.72rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.campaign-ticker-text{font-size:.88rem;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.theme-light .campaign-ticker-link{background:rgba(245,158,11,.13);box-shadow:0 10px 22px rgba(15,23,42,.08);}
@media(max-width:760px){.campaign-ticker{justify-content:flex-start}.campaign-ticker-link{max-width:100%;}.campaign-ticker-text{font-size:.8rem;}}

/* Framsideknapper / leietakerknapper */
.frontpage-action-heading{
  margin:4px 0 10px;
  text-align:center;
  font-size:var(--frontpage-action-heading-size, 24px);
  font-weight:700;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.frontpage-action-links{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:14px;
  margin:18px 0 6px;
}
.frontpage-action-card{
  height:132px;
  width:max-content;
  max-width:min(100%, 520px);
  flex:0 0 auto;
  display:grid;
  grid-template-columns:96px max-content;
  gap:14px;
  align-items:center;
  padding:16px 20px 16px 16px;
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
  color:var(--text);
  text-decoration:none;
  box-shadow:0 16px 38px rgba(0,0,0,.20);
  transition:transform .16s ease, border-color .16s ease, background .16s ease;
}
.frontpage-action-card:hover,
.frontpage-action-card:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(245,158,11,.55);
  background:linear-gradient(145deg, rgba(245,158,11,.14), rgba(255,255,255,.04));
  outline:none;
}
.frontpage-action-card--shop{border-color:rgba(245,158,11,.45);}
.frontpage-action-image{
  width:96px;
  height:96px;
  display:grid;
  place-items:center;
  border-radius:20px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.frontpage-action-image img{width:100%;height:100%;object-fit:contain;padding:8px;display:block;}
.frontpage-action-image--text{font-size:42px;font-weight:900;color:var(--accent);}
.frontpage-action-text{min-width:0;display:grid;gap:5px;align-content:center;}
.frontpage-action-text strong{font-size:clamp(20px, 2.3vw, 28px);line-height:1.1;overflow-wrap:anywhere;max-width:22ch;}
.frontpage-action-text small{color:var(--muted);font-size:14px;line-height:1.3;max-width:28ch;}

.frontpage-image-admin-field{display:grid;gap:10px;}
.frontpage-image-admin-grid{
  display:grid;
  grid-template-columns:minmax(260px,520px) minmax(180px,260px);
  gap:14px;
  align-items:start;
}
.frontpage-image-admin-media{display:grid;gap:10px;min-width:0;}
.frontpage-image-admin-preview{
  width:min(480px,100%);
  height:auto;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  display:block;
}
.frontpage-image-layout-settings{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  align-items:start;
  padding:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.035);
}
.frontpage-image-layout-settings label{display:grid;gap:6px;min-width:0;}
.frontpage-image-size-field{display:flex;align-items:center;gap:8px;}
.frontpage-image-size-field input{max-width:100px;}
.frontpage-text-layout-settings{
  display:grid;
  grid-template-columns:minmax(150px,220px) minmax(170px,240px);
  gap:12px;
  align-items:end;
}
.frontpage-text-layout-settings label{display:grid;gap:6px;min-width:0;}
body.theme-light .frontpage-image-layout-settings{background:rgba(15,23,42,.035);border-color:rgba(15,23,42,.10);}
@media(max-width:760px){.frontpage-image-admin-grid{grid-template-columns:1fr;}.frontpage-image-layout-settings{max-width:320px;}.frontpage-text-layout-settings{grid-template-columns:1fr;}}

.frontpage-button-admin-section{
  display:grid;
  gap:12px;
  margin-top:10px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.08);
}
.frontpage-button-admin-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.frontpage-button-fixed-preview{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  padding:10px 12px;
  border:1px solid rgba(245,158,11,.25);
  border-radius:14px;
  background:rgba(245,158,11,.08);
}
.frontpage-button-admin-list{
  display:grid;
  gap:12px;
}
.frontpage-button-admin-row{
  display:grid;
  grid-template-columns:minmax(260px, 1.1fr) minmax(260px, .9fr) auto;
  gap:12px;
  align-items:start;
  padding:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.frontpage-button-admin-fields{
  display:grid;
  gap:10px;
  min-width:0;
}
.frontpage-button-admin-fields label:not(.frontpage-button-enabled),
.frontpage-button-media-picker{
  min-width:0;
}
.frontpage-button-admin-fields label:not(.frontpage-button-enabled){
  display:grid;
  gap:6px;
}
.frontpage-button-admin-fields input[type="text"]{
  width:100%;
  min-width:0;
}
.frontpage-button-enabled{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
}
.frontpage-button-admin-actions{
  display:flex;
  justify-content:flex-end;
}

@media (max-width:760px){
  .frontpage-action-card{grid-template-columns:76px minmax(0,1fr);width:100%;height:auto;min-height:104px;padding:12px;}
  .frontpage-action-image{width:76px;height:76px;border-radius:16px;}
  .frontpage-button-admin-row{grid-template-columns:1fr;}
  .frontpage-button-admin-actions{justify-content:flex-start;}
}

.frontpage-button-admin-list{
  display:grid;
  gap:10px;
}
.frontpage-button-admin-row{display:block;padding:0;border:0;background:transparent;border-radius:0;}
.frontpage-button-admin-row[hidden],
.frontpage-button-admin-row[data-frontpage-button-template]{display:none;}
.frontpage-button-admin-card{
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.frontpage-button-admin-card-image{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  color:var(--muted);
  font-size:12px;
  text-align:center;
}
.frontpage-button-admin-card-image img{width:100%;height:100%;object-fit:contain;padding:5px;display:block;}
.frontpage-button-admin-card-copy{min-width:0;display:grid;gap:3px;}
.frontpage-button-admin-card-copy strong{overflow-wrap:anywhere;}
.frontpage-button-admin-card-copy small{overflow-wrap:anywhere;}
.frontpage-button-admin-card-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;}
.frontpage-button-dialog{border:none;padding:0;background:transparent;max-width:min(760px,calc(100vw - 24px));width:min(760px,calc(100vw - 24px));z-index:2200;}
.frontpage-button-dialog:not([open]){display:none;}
.frontpage-button-dialog::backdrop{background:rgba(0,0,0,.62);}
.frontpage-button-dialog-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:16px;display:grid;gap:12px;max-height:min(90vh,820px);overflow:auto;}
.frontpage-button-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.frontpage-button-dialog-grid{display:grid;gap:12px;grid-template-columns:1fr;}
.frontpage-button-dialog-grid label{display:grid;gap:6px;min-width:0;}
.frontpage-button-dialog-grid input[type="text"]{width:100%;min-width:0;}
.frontpage-button-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.frontpage-button-dialog-error{padding:10px 12px;border:1px solid rgba(239,68,68,.45);border-radius:12px;background:rgba(239,68,68,.12);color:#fecaca;}
body.theme-light .frontpage-button-dialog-error{background:#fef2f2;color:#7f1d1d;border-color:rgba(185,28,28,.25);}
body.theme-light .frontpage-button-admin-card{background:rgba(15,23,42,.035);border-color:rgba(15,23,42,.10);}
body.theme-light .frontpage-button-admin-card-image{background:rgba(15,23,42,.04);border-color:rgba(15,23,42,.10);}
@media (max-width:760px){
  .frontpage-button-admin-card{grid-template-columns:52px minmax(0,1fr);}
  .frontpage-button-admin-card-actions{grid-column:1/-1;justify-content:flex-start;}
}

/* Felles kundevendt prisvisning for produktkort og produktskroll. */
.product-listing-price{
  display:grid;
  gap:4px;
  margin:8px 0 0 0;
  color:var(--text);
  min-width:0;
}
.product-listing-price-row{
  display:grid;
  grid-template-columns:minmax(62px,auto) minmax(0,1fr);
  gap:9px;
  align-items:baseline;
  min-width:0;
}
.product-listing-price-label{
  color:var(--muted);
  font-size:.72rem;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.product-listing-price-value{
  color:var(--text);
  font-variant-numeric:tabular-nums;
  min-width:0;
}
.product-listing-price-row-main .product-listing-price-value{
  font-size:1.14rem;
  font-weight:780;
  letter-spacing:-.01em;
}
.product-listing-price-row-sub .product-listing-price-label,
.product-listing-price-row-sub .product-listing-price-value,
.product-listing-amount-label{
  font-size:.78rem;
  font-weight:650;
  color:var(--muted);
}
.product-listing-amount-label{
  display:block;
  margin-top:1px;
  line-height:1.25;
}
.product-card-price-wrap{margin:0 0 10px 0;}
.frontpage-showcase-copy .product-listing-price,
.frontpage-showcase-price-list.product-listing-price{
  margin-top:auto;
  width:100%;
  max-width:100%;
}
.frontpage-showcase-copy .product-listing-price-row{
  grid-template-columns:minmax(58px,auto) minmax(0,1fr);
}
.frontpage-showcase-copy .product-listing-price-row-main .product-listing-price-value{font-size:1rem;}
.frontpage-showcase-discount{
  position:absolute;
  top:8px;
  left:8px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:26px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(127,29,29,.88);
  color:#fff;
  font-size:.82rem;
  font-weight:850;
  line-height:1;
  box-shadow:0 8px 18px rgba(0,0,0,.26);
}
body.theme-light .frontpage-showcase-discount{background:#b91c1c;color:#fff;border-color:rgba(255,255,255,.65);}

.product-card-discount{
  position:absolute;
  top:8px;
  left:8px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:26px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(127,29,29,.90);
  color:#fff;
  font-size:.82rem;
  font-weight:850;
  line-height:1;
  box-shadow:0 8px 18px rgba(0,0,0,.26);
  pointer-events:none;
}
body.theme-light .product-card-discount{background:#b91c1c;color:#fff;border-color:rgba(255,255,255,.65);}
.category-preview-thumb{position:relative;}
@media(max-width:760px){
  .product-listing-price-row{grid-template-columns:1fr;gap:1px;}
  .product-listing-price-row-main .product-listing-price-value{font-size:1.02rem;}
  .frontpage-showcase-copy .product-listing-price-row{grid-template-columns:1fr;gap:1px;}
}


/* Lys modus: roligere Gamle Skeimo-inspirert butikkflate, men uten mørk header. */
body.theme-light:not(.admin-area) .topbar{
  background:rgba(255,255,255,.96);
  border-color:#d7d4ce;
  box-shadow:0 8px 22px rgba(31,34,36,.08);
}
body.theme-light:not(.admin-area) .card,
body.theme-light:not(.admin-area) .pdp,
body.theme-light:not(.admin-area) .shop-sidebar-card,
body.theme-light:not(.admin-area) .frontpage-showcase-card,
body.theme-light:not(.admin-area) .category-tile-link,
body.theme-light:not(.admin-area) .category-preview-overlay{
  background:#fff;
  border-color:#d7d4ce;
  box-shadow:0 8px 22px rgba(31,34,36,.08);
}
body.theme-light:not(.admin-area) .btn,
body.theme-light:not(.admin-area) button,
body.theme-light:not(.admin-area) input,
body.theme-light:not(.admin-area) select,
body.theme-light:not(.admin-area) textarea{
  border-color:#d7d4ce;
}
body.theme-light:not(.admin-area) .btn.primary,
body.theme-light:not(.admin-area) .pdp-cta,
body.theme-light:not(.admin-area) button[type=submit]{
  background:#be4227;
  border-color:#be4227;
  color:#fff;
}
body.theme-light:not(.admin-area) .btn.primary:hover,
body.theme-light:not(.admin-area) .pdp-cta:hover,
body.theme-light:not(.admin-area) button[type=submit]:hover{
  background:#a63820;
  border-color:#a63820;
}


/* Admin lesbarhet: fler-vindu-/skjemaflater skal ikke flyte over hverandre. */
.admin-area .toolbar,
.admin-area .search,
.admin-area .bulk-bar,
.admin-area .inventory-sheet-searchbar,
.admin-area .inventory-sheet-pagination,
.admin-area .group-content-card,
.admin-area .admin-product-summary,
.admin-area .admin-media-page-card,
.admin-area .notifications-bulk-bar,
.admin-area .settings-status-card{
  background:var(--admin-card-soft);
  border-color:var(--admin-card-border);
}
.admin-area table{
  border-collapse:separate;
  border-spacing:0;
}
.admin-area th,
.admin-area td{
  border-color:var(--admin-table-border);
}
.admin-area td > *,
.admin-area th > *{
  max-width:100%;
  min-width:0;
}
.admin-area .card-inner > table:not(.inventory-sheet-table):not(.inventory-table):not(.stocktake-table):not(.history-table),
.admin-area .settings-card table:not(.inventory-sheet-table):not(.inventory-table):not(.stocktake-table):not(.history-table){
  display:block;
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.admin-products-table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--admin-table-border);
  border-radius:16px;
  background:var(--admin-card-soft);
}
.admin-products-table{
  min-width:1160px;
  border-collapse:separate;
  border-spacing:0;
}
.admin-products-table th,
.admin-products-table td{
  padding:10px 12px;
  border-color:var(--admin-table-border);
  overflow-wrap:anywhere;
  line-height:1.35;
}
.admin-products-table th{
  background:var(--admin-table-head);
}
.admin-products-table tbody tr:nth-child(even) td{
  background:var(--admin-table-row-alt);
}
.admin-products-table tbody tr:hover td{
  background:var(--admin-table-row-hover);
}
.admin-products-table textarea{
  min-height:110px;
  line-height:1.4;
}
.admin-products-line-main,
.admin-products-line-title-row,
.admin-products-line-title-row > strong,
.admin-products-table .col-product,
.admin-products-table .col-price,
.admin-products-table .col-status,
.admin-products-table .col-actions{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.admin-products-dialog-card{
  background:var(--admin-card-bg);
  border-color:var(--admin-card-border);
}
.admin-products-dialog-grid,
.admin-products-line-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  min-width:0;
}
.admin-groups-table-wrap{
  border:1px solid var(--admin-table-border);
  background:var(--admin-card-soft);
}
.admin-groups-table th,
.admin-groups-table td{
  padding:10px 12px;
  border-color:var(--admin-table-border);
  overflow-wrap:anywhere;
  line-height:1.35;
}
.admin-groups-table th{
  background:var(--admin-table-head);
}
.admin-groups-table tbody tr:nth-child(even) td{
  background:var(--admin-table-row-alt);
}
.admin-groups-table tbody tr:hover td{
  background:var(--admin-table-row-hover);
}
.group-content-card,
.group-content-check,
.group-content-details{
  border-color:var(--admin-card-border);
}
.inventory-list-wrap,
.inventory-sheet-wrap,
.admin-users-table-wrap,
.notifications-table-wrap{
  border:1px solid var(--admin-table-border);
  border-radius:16px;
  background:var(--admin-card-soft);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.inventory-sheet-table th,
.inventory-sheet-table td{
  padding:9px 10px;
  line-height:1.32;
}
.inventory-sheet-table input,
.inventory-sheet-table select,
.inventory-purchase-basis-toggle{
  width:100%;
  max-width:100%;
}
.inventory-sheet-product-title span,
.inventory-compact,
.inventory-note,
.inventory-muted{
  overflow-wrap:anywhere;
}
.inventory-sheet-table .inventory-price-cluster{
  background-color:rgba(245,158,11,.035);
  box-shadow:inset 1px 0 rgba(245,158,11,.18), inset -1px 0 rgba(245,158,11,.10);
}
body.theme-light .inventory-sheet-table .inventory-price-cluster{
  background-color:rgba(190,66,39,.038);
  box-shadow:inset 1px 0 rgba(190,66,39,.16), inset -1px 0 rgba(190,66,39,.10);
}
body.theme-light .admin-area .card,
body.theme-light .admin-area .hero{
  background:var(--admin-card-bg);
  border-color:var(--admin-card-border);
}
body.theme-light .admin-area input[type=email],
body.theme-light .admin-area input[type=text],
body.theme-light .admin-area input:not([type]),
body.theme-light .admin-area input[type=tel],
body.theme-light .admin-area input[type=password],
body.theme-light .admin-area input[type=number],
body.theme-light .admin-area input[type=search],
body.theme-light .admin-area input[type=url],
body.theme-light .admin-area input[type=date],
body.theme-light .admin-area input[type=datetime-local],
body.theme-light .admin-area textarea,
body.theme-light .admin-area select{
  background:var(--admin-field-bg);
  border-color:var(--admin-field-border);
}
/* Lagerkorreksjon: manglende obligatoriske data skal alltid være synlig røde, også i lyst admin-tema. */
.admin-area .inventory-sheet-table .inventory-completion-required-missing{background:transparent;box-shadow:none;border-radius:0;}
.admin-area .inventory-sheet-table .inventory-completion-required-missing input,
.admin-area .inventory-sheet-table .inventory-completion-required-missing select{
  border-color:rgba(255,104,104,.72);
  background:rgba(255,104,104,.08);
}
.admin-area .inventory-sheet-table .inventory-completion-row-missing td:first-child{box-shadow:none;}
@media (max-width:760px){
  .admin-products-table{min-width:980px;}
  .admin-products-table th,
  .admin-products-table td,
  .admin-groups-table th,
  .admin-groups-table td{padding:9px 10px;}
}

/* Lager -> Kampanje. */
.inventory-discount-card{
  width:min(100%, 1680px);
  max-width:1680px;
  margin-inline:auto;
}
.inventory-discount-card > .card-inner{
  display:grid;
  gap:12px;
}
.inventory-discount-heading{
  margin:0;
  font-size:1rem;
}
.inventory-discount-wrap{
  width:100%;
}
.inventory-discount-scroll{
  max-height:78vh;
  overflow:auto;
}
.inventory-discount-table{
  table-layout:auto;
  min-width:1180px;
}
.inventory-discount-table th:nth-child(1){width:28%;}
.inventory-discount-table th:nth-child(2){width:12%;}
.inventory-discount-table th:nth-child(3){width:14%;}
.inventory-discount-table th:nth-child(4){width:16%;}
.inventory-discount-table th:nth-child(5){width:30%;}
.inventory-discount-row td{
  vertical-align:middle;
}
.inventory-discount-product-row td{
  background:rgba(255,255,255,.035);
  border-top-color:rgba(255,255,255,.16);
}
.inventory-discount-variant-row td{
  background:rgba(255,255,255,.018);
}
.inventory-discount-variant-row td:first-child{
  padding-left:32px;
  box-shadow:inset 18px 0 0 rgba(96,165,250,.07);
}
.inventory-discount-item{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-width:0;
}
.inventory-discount-item-variant{
  grid-template-columns:40px minmax(0,1fr);
}
.inventory-discount-thumb{
  width:46px;
  height:46px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(0,0,0,.22);
  overflow:hidden;
  display:grid;
  place-items:center;
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
}
.inventory-discount-item-variant .inventory-discount-thumb{
  width:40px;
  height:40px;
  border-radius:9px;
}
.inventory-discount-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.inventory-discount-thumb-empty{
  background:rgba(255,255,255,.045);
}
.inventory-discount-item-copy{
  min-width:0;
  display:grid;
  gap:2px;
}
.inventory-discount-item-copy strong,
.inventory-discount-number{
  overflow-wrap:anywhere;
}
.inventory-discount-form{
  display:grid;
  grid-template-columns:minmax(190px,1.25fr) minmax(82px,.55fr) minmax(164px,1fr) minmax(164px,1fr) auto;
  align-items:end;
  gap:8px;
}
.inventory-discount-form .field{
  min-width:0;
}
.inventory-discount-form select,
.inventory-discount-form input{
  width:100%;
  min-width:0;
}
.inventory-discount-percent-field input{
  max-width:110px;
}
.inventory-discount-form .btn{
  white-space:nowrap;
}
body.theme-light .inventory-discount-product-row td{
  background:rgba(190,66,39,.055);
  border-top-color:rgba(15,23,42,.14);
}
body.theme-light .inventory-discount-variant-row td{
  background:rgba(15,23,42,.018);
}
body.theme-light .inventory-discount-variant-row td:first-child{
  box-shadow:inset 18px 0 0 rgba(37,99,235,.06);
}
body.theme-light .inventory-discount-thumb{
  border-color:rgba(15,23,42,.12);
  background:rgba(15,23,42,.04);
}
@media(max-width:1250px){
  .inventory-discount-form{
    grid-template-columns:minmax(180px,1.4fr) minmax(82px,.6fr) minmax(150px,1fr) minmax(150px,1fr);
  }
  .inventory-discount-form .btn{
    grid-column:1/-1;
    width:max-content;
  }
}
@media(max-width:900px){
  .campaign-ticker{justify-content:center!important;}
  .inventory-discount-table{min-width:0;}
  .inventory-discount-variant-row td:first-child{padding-left:0;box-shadow:none;}
  .inventory-discount-form{grid-template-columns:1fr;}
  .inventory-discount-form .btn{grid-column:auto;width:100%;}
}

/* Kampanjetickeren ligger som egen kompakt rad rett under headeren. */
.campaign-ticker-below-header{
  max-width:100%;
  text-align:center;
}
.campaign-ticker-below-header .campaign-ticker-link{
  width:max-content;
  max-width:min(100%,980px);
  margin-inline:auto;
}
@media (max-width:760px){
  .campaign-ticker-below-header .campaign-ticker-link{width:100%;}
}

.admin-area .inventory-discount-card{
  grid-column:1/-1;
  width:100%;
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}
.admin-area .inventory-discount-card > .card-inner{
  width:100%;
  max-width:none;
}
.admin-area .inventory-discount-wrap,
.admin-area .inventory-discount-scroll{
  width:100%;
  max-width:none;
}
.admin-area .inventory-discount-scroll{
  overflow:auto;
}
.admin-area .inventory-discount-table{
  width:max-content;
  min-width:0;
  max-width:none;
  table-layout:auto;
}
.admin-area .inventory-discount-table th:nth-child(1),
.admin-area .inventory-discount-table th:nth-child(2),
.admin-area .inventory-discount-table th:nth-child(3),
.admin-area .inventory-discount-table th:nth-child(4),
.admin-area .inventory-discount-table th:nth-child(5){width:auto;}
.admin-area .inventory-discount-table th,
.admin-area .inventory-discount-table td{
  white-space:nowrap;
}
.admin-area .inventory-discount-table td:first-child{
  white-space:normal;
}
.admin-area .inventory-discount-item{
  width:max-content;
  max-width:420px;
}
.admin-area .inventory-discount-item-copy{
  max-width:340px;
}
.admin-area .inventory-discount-form{
  display:inline-grid;
  width:max-content;
  max-width:none;
  grid-template-columns:240px 96px 178px 178px max-content;
}
.admin-area .inventory-discount-form select{
  min-width:0;
}
.admin-area .inventory-discount-form input[type="datetime-local"]{
  min-width:0;
}
.admin-area .inventory-discount-item-copy .inventory-compact{
  overflow-wrap:anywhere;
}
@media(max-width:1250px){
  .admin-area .inventory-discount-form{
    grid-template-columns:220px 92px 164px 164px max-content;
  }
}
@media(max-width:900px){
  .admin-area .inventory-discount-table{
    width:100%;
    min-width:0;
  }
  .admin-area .inventory-discount-form{
    display:grid;
    width:100%;
    grid-template-columns:1fr;
  }
}

/* 2026-08-17: Nettbutikkmeny: kampanje som fast punkt nummer 2 */
.shop-sidebar-campaign{position:relative;}
.shop-sidebar-campaign::before{content:"";width:.48rem;height:.48rem;border-radius:999px;background:var(--warn);box-shadow:0 0 0 3px rgba(245,158,11,.14);flex:0 0 auto;}
.shop-sidebar-campaign{display:flex;align-items:center;gap:.55rem;}
.campaign-results-grid .product-result-card .badge.warn{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.30);color:var(--warn);}

/* 2026-08-17: Produktresultatkontroll til venstre og mer robust visning i vanlige skjermoppløsninger. */
.product-results-meta-row{
  justify-content:flex-start;
  margin-top:10px;
}
.product-results-meta{
  justify-items:start;
  align-items:start;
}
.product-results-inline-count{
  text-align:left;
}
.product-results-sortform{
  justify-content:flex-start;
}
.product-results-sortselect{
  max-width:100%;
}

/* Temavelgeren i admin/globale innstillinger følger den større headerknappen og
 * har nok bredde til ikon + Mørk/Lys uten tekst-overflyt. */
.admin-area .theme-toggle-segmented-header{
  --theme-toggle-width:144px;
  --theme-toggle-height:44.9px;
}
.admin-area .theme-toggle-link{
  padding-inline:5px;
}

/* Responsiv robusthet: hindre at admin- og butikkflater flyter over hverandre i 4K, 1080p, 780p og smalere bredder. */
.topbar,
.navwrap,
.nav,
.card,
.card-inner,
.shop-dedicated-layout,
.shop-dedicated-sidebar,
.shop-dedicated-main,
.admin-area main,
.admin-area .card,
.admin-area .card-inner{
  min-width:0;
}

@media (max-width: 1500px){
  .topbar-admin{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .topbar-admin .navwrap{
    flex-direction:column;
    align-items:stretch;
  }
  .topbar-admin .nav.nav-user{order:0;}
  .topbar-admin .nav.nav-shop{order:1;}
  .topbar-admin .nav.nav-user,
  .topbar-admin .nav.nav-shop{
    justify-content:flex-start;
  }
}

@media (max-width: 1180px){
  /* Nettbrett: vanlige sideflater skal aldri bli bredere enn viewporten. Bevisst
   * brede arbeids-tabeller beholder egne scroll-wrappere og berøres ikke. */
  .site-viewport-stage,
  .container,
  .container > *,
  .two-col > *,
  .grid > *,
  .shop-dedicated-main > *,
  .card,
  .card-inner,
  .hero,
  .toolbar,
  .page-stack,
  .two-col,
  .tabs,
  .nav,
  form{
    min-width:0;
    max-width:100%;
  }
  input,
  select,
  textarea,
  img,
  video,
  canvas,
  iframe{
    max-width:100%;
  }
  body.shop-dedicated-page .topbar:not(.topbar-admin){
    grid-template-columns:1fr;
  }
  body.shop-dedicated-page .navwrap{
    align-items:stretch;
  }
  body.shop-dedicated-page .nav.nav-user,
  body.shop-dedicated-page .nav.nav-shop{
    justify-content:flex-start;
  }
}

@media (max-width: 1060px){
  .shop-dedicated-layout{
    grid-template-columns:1fr;
    align-items:start;
  }
  .shop-sidebar-card{
    height:auto;
  }
}

@media (max-width: 820px){
  :root{--site-shell-padding-x:12px;}
  .container{padding-top:14px;padding-bottom:14px;}
  .nav{gap:8px;}
  .btn{padding:9px 10px;}
  .brand{align-items:flex-start;}
  .brand h1{font-size:15px;}
  .brand .sub{font-size:11px;}
  .product-results-meta-row{
    margin-top:8px;
  }
  .product-results-sortform,
  .product-results-sortselect{
    width:100%;
  }
}

@media (max-width: 560px){
  :root{--site-shell-padding-x:10px;}
  .topbar{padding:8px 10px;gap:9px;border-radius:12px;}
  .logo{width:36px;height:36px;border-radius:10px;}
  .nav.nav-user .btn,
  .nav.nav-shop .btn{
    flex:1 1 calc(50% - 4px);
  }
  .theme-toggle-segmented-header{
    width:100%;
  }
  .campaign-ticker-link{
    width:100%;
  }
}

.admin-area .tabs,
.admin-area .frontpage-admin-tabs,
.admin-area .nav{
  min-width:0;
}
.admin-area .tabs,
.admin-area .frontpage-admin-tabs{
  overflow-x:auto;
  scrollbar-width:thin;
}
.admin-area input,
.admin-area select,
.admin-area textarea{
  max-width:100%;
}
.admin-area .admin-table-wrap,
.admin-area .admin-products-table-wrap,
.admin-area .admin-groups-table-wrap,
.admin-area .notifications-table-wrap,
.admin-area .inventory-discount-scroll,
.admin-area .inventory-sheet-scroll,
.admin-area .inventory-history-list,
.admin-area .table-scroll{
  min-width:0;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

/* Globale innstillinger bruker samme temaknapp som resten av headeren. */
body.global-admin-direct .nav.nav-user{
  align-items:stretch;
}
body.global-admin-direct .nav.nav-user .header-theme-toggle-inline{
  width:auto;
  flex:0 0 auto;
  align-self:stretch;
  justify-content:flex-end;
}
body.global-admin-direct .nav.nav-user .theme-toggle-segmented-header{
  --theme-toggle-width:144px;
  --theme-toggle-height:44.9px;
  width:var(--theme-toggle-width);
  min-height:var(--theme-toggle-height);
}
body.global-admin-direct .nav.nav-user .theme-toggle-link{
  padding:9px 5px;
  gap:4.5px;
  font-size:12.5px;
  letter-spacing:0;
  overflow:hidden;
}
body.global-admin-direct .nav.nav-user .theme-toggle-link .nav-icon{
  display:inline-block;
  width:17px;
  height:17px;
  flex-basis:17px;
}
body.global-admin-direct .nav.nav-user .theme-toggle-link .nav-label{
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:clip;
  white-space:nowrap;
}

/* 2026-08-17: Innstillinger: faner gruppert etter ansvar slik at avanserte systemvalg er tydelig adskilt. */
.admin-area .settings-tab-groups{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
}
.admin-area .settings-tab-group{
  display:grid;
  gap:7px;
  align-content:start;
  min-width:0;
  padding:9px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.035);
}
.admin-area .settings-tab-group.is-active{
  border-color:rgba(124,92,255,.42);
  background:linear-gradient(135deg, rgba(124,92,255,.10), rgba(39,198,255,.055));
}
.admin-area .settings-tab-group-head{
  display:grid;
  gap:2px;
  min-width:0;
}
.admin-area .settings-tab-group-head strong{
  font-size:12px;
  letter-spacing:.02em;
}
.admin-area .settings-tab-group-head span{
  color:var(--muted);
  font-size:10.5px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.admin-area .settings-tab-group .tabs.subtabs{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
}
.admin-area .settings-tab-group .tab{
  white-space:normal;
  text-align:center;
  min-height:32px;
  padding:6px 8px;
  font-size:11.5px;
  border-radius:9px;
}
body.theme-light.admin-area .settings-tab-group{
  background:rgba(255,255,255,.72);
  border-color:rgba(15,23,42,.12);
}
body.theme-light.admin-area .settings-tab-group.is-active{
  background:linear-gradient(135deg, rgba(124,92,255,.10), rgba(39,198,255,.08));
  border-color:rgba(124,92,255,.32);
}
@media(max-width:980px){
  .admin-area .settings-tab-groups{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:720px){
  body:not(.admin-area) .checkout-payment-source-choice,
  body:not(.admin-area) .checkout-bank-transfer-details{grid-template-columns:1fr;}
  .admin-area .settings-tab-groups{grid-template-columns:1fr;}
}

/* 2026-08-18: Lager -> Kampanje og Historikk skal ha samme kompakte tabellpreg som Varetelling/Lagerkorreksjon. */
.admin-area .inventory-discount-table,
.admin-area .inventory-history-line-table{
  border-collapse:separate;
  border-spacing:0;
  border:1px solid var(--admin-table-border);
  border-radius:12px;
  background:var(--admin-table-row);
  box-shadow:inset 0 1px rgba(255,255,255,.035);
  overflow:hidden;
}
.admin-area .inventory-discount-table th,
.admin-area .inventory-history-line-table th{
  background:var(--admin-table-head);
  color:var(--muted);
  font-weight:800;
  border-top:0;
  border-bottom:1px solid var(--admin-table-border);
}
.admin-area .inventory-discount-table td,
.admin-area .inventory-history-line-table td{
  border-top:1px solid var(--admin-table-border);
}
.admin-area .inventory-discount-table tbody tr:first-child td,
.admin-area .inventory-history-line-table tbody tr:first-child td{
  border-top:0;
}
.admin-area .inventory-discount-table tbody tr:nth-child(even) td,
.admin-area .inventory-history-line-table tbody tr:nth-child(even) td{
  background:var(--admin-table-row-alt);
}
.admin-area .inventory-discount-table tbody tr:hover td,
.admin-area .inventory-history-line-table tbody tr:hover td{
  background:var(--admin-table-row-hover);
}
.admin-area .inventory-discount-product-row td,
.admin-area .inventory-discount-variant-row td{
  border-top-color:var(--admin-table-border);
}
.admin-area .inventory-discount-variant-row td:first-child{
  box-shadow:inset 18px 0 0 rgba(96,165,250,.10);
}
body.theme-light .admin-area .inventory-discount-variant-row td:first-child{
  box-shadow:inset 18px 0 0 rgba(37,99,235,.08);
}

/* 2026-08-18: Lager -> Kampanje/Historikk: ekte varegrupperader og variantinnrykk som Varetelling/Lagerkorreksjon. */
.admin-area .inventory-discount-table tbody tr.inventory-discount-product-row td,
.admin-area .inventory-history-line-table tbody tr.inventory-history-product-row td{
  background:rgba(124,92,255,.070);
}
.admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row td,
.admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row td{
  background:var(--admin-table-row);
}
.admin-area .inventory-discount-table tbody tr.inventory-discount-product-row:hover td,
.admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row:hover td,
.admin-area .inventory-history-line-table tbody tr.inventory-history-product-row:hover td,
.admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row:hover td{
  background:var(--admin-table-row-hover);
}
.admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row td:first-child,
.admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row td:first-child{
  padding-left:32px;
  box-shadow:inset 18px 0 0 rgba(96,165,250,.10);
}
.inventory-history-line-label{
  display:grid;
  gap:2px;
  min-width:0;
}
.inventory-history-line-label--variant{
  position:relative;
  margin-left:8px;
  padding-left:12px;
  border-left:1px dotted rgba(255,255,255,.25);
}
.inventory-history-line-label--variant::before{
  content:"";
  position:absolute;
  left:-1px;
  top:11px;
  width:10px;
  border-top:1px dotted rgba(255,255,255,.25);
}
body.theme-light .admin-area .inventory-discount-table tbody tr.inventory-discount-product-row td,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-product-row td{
  background:rgba(190,66,39,.055);
}
body.theme-light .admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row td,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row td{
  background:var(--admin-table-row);
}
body.theme-light .admin-area .inventory-discount-table tbody tr.inventory-discount-product-row:hover td,
body.theme-light .admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row:hover td,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-product-row:hover td,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row:hover td{
  background:var(--admin-table-row-hover);
}
body.theme-light .admin-area .inventory-discount-table tbody tr.inventory-discount-variant-row td:first-child,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-variant-row td:first-child{
  box-shadow:inset 18px 0 0 rgba(37,99,235,.08);
}
body.theme-light .inventory-history-line-label--variant{
  border-left-color:rgba(0,0,0,.24);
}
body.theme-light .inventory-history-line-label--variant::before{
  border-top-color:rgba(0,0,0,.24);
}

/* 2026-08-19: Lager -> Historikk: økonomikolonner, FIFO-sum og oppgjort lagerkorreksjon. */
.admin-area .inventory-history-line-table{
  min-width:1220px;
}
.admin-area .inventory-history-line-table th:nth-child(1){width:21%;}
.admin-area .inventory-history-line-table th:nth-child(2){width:10%;}
.admin-area .inventory-history-line-table th:nth-child(3){width:13%;}
.admin-area .inventory-history-line-table th:nth-child(4){width:12%;}
.admin-area .inventory-history-line-table th:nth-child(5){width:12%;}
.admin-area .inventory-history-line-table th:nth-child(6){width:12%;}
.admin-area .inventory-history-line-table th:nth-child(7){width:10%;}
.admin-area .inventory-history-line-table th:nth-child(8){width:10%;}
.admin-area .inventory-history-line-table tfoot td{
  background:rgba(124,92,255,.14)!important;
  border-top:2px solid rgba(124,92,255,.35);
  font-weight:700;
  vertical-align:top;
}
.admin-area .inventory-history-total-row .inventory-compact{
  font-weight:500;
}
.admin-area .inventory-history-correction-card-settled{
  position:relative;
  border-color:rgba(34,197,94,.40)!important;
  background:linear-gradient(135deg,rgba(34,197,94,.13),rgba(255,255,255,.018) 46%,rgba(34,197,94,.055))!important;
  box-shadow:0 0 0 1px rgba(34,197,94,.12), inset 0 0 0 9999px rgba(34,197,94,.035);
}
.admin-area .inventory-history-correction-card-settled>.card-inner{
  position:relative;
  z-index:1;
}
.admin-area .inventory-history-settled-badge{
  margin-left:8px;
  vertical-align:middle;
  font-size:11px;
  letter-spacing:.01em;
}
.admin-area .inventory-history-line-table tbody tr.inventory-history-line-settled td,
.admin-area .inventory-history-line-table tbody tr.inventory-history-line-settled:hover td{
  background:rgba(34,197,94,.16)!important;
  border-top-color:rgba(34,197,94,.30)!important;
  border-bottom-color:rgba(34,197,94,.22)!important;
}
.inventory-history-result-value{
  display:inline-block;
  font-variant-numeric:tabular-nums;
}
.inventory-history-result-negative{
  display:inline-block!important;
  padding:3px 7px;
  border:1px solid rgba(239,68,68,.88);
  border-radius:7px;
  background:rgba(127,29,29,.30)!important;
  color:#fecaca!important;
  box-shadow:0 0 0 1px rgba(239,68,68,.10);
}
body.theme-light .admin-area .inventory-history-line-table tfoot td{
  background:rgba(190,66,39,.10)!important;
  border-top-color:rgba(190,66,39,.25);
}
body.theme-light .admin-area .inventory-history-correction-card-settled{
  border-color:rgba(22,163,74,.36)!important;
  background:linear-gradient(135deg,rgba(22,163,74,.14),rgba(255,255,255,.74) 46%,rgba(22,163,74,.07))!important;
  box-shadow:0 0 0 1px rgba(22,163,74,.12), inset 0 0 0 9999px rgba(22,163,74,.025);
}
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-line-settled td,
body.theme-light .admin-area .inventory-history-line-table tbody tr.inventory-history-line-settled:hover td{
  background:rgba(22,163,74,.14)!important;
  border-top-color:rgba(22,163,74,.26)!important;
  border-bottom-color:rgba(22,163,74,.20)!important;
}
body.theme-light .inventory-history-result-negative{
  border-color:rgba(220,38,38,.78);
  background:rgba(254,226,226,.92)!important;
  color:#991b1b!important;
}

.inventory-history-result-pending{
  display:inline-block;
  max-width:140px;
  color:var(--muted);
}
.inventory-history-sales-details{
  margin-top:10px;
  border:1px solid var(--admin-table-border);
  border-radius:12px;
  background:rgba(255,255,255,.025);
  overflow:hidden;
}
.inventory-history-sales-details>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  padding:10px 12px;
  user-select:none;
}
.inventory-history-sales-details>summary::marker{
  color:var(--muted);
}
.inventory-history-sales-count{
  color:var(--muted);
  font-size:11.5px;
  font-weight:700;
  white-space:nowrap;
}
.inventory-history-sales-body{
  padding:0 10px 10px;
}
.admin-area .inventory-history-sales-table{
  min-width:1040px;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid var(--admin-table-border);
  border-radius:10px;
  overflow:hidden;
}
.admin-area .inventory-history-sales-table th{
  background:var(--admin-table-head);
  color:var(--muted);
  font-size:11.5px;
  font-weight:800;
  padding:6px 8px;
  border-bottom:1px solid var(--admin-table-border);
}
.admin-area .inventory-history-sales-table td{
  padding:6px 8px;
  font-size:12px;
  line-height:1.3;
  vertical-align:top;
  border-top:1px solid var(--admin-table-border);
}
.admin-area .inventory-history-sales-table tbody tr:first-child td{
  border-top:0;
}
body.theme-light .inventory-history-sales-details{
  background:rgba(15,23,42,.018);
}
@media(max-width:640px){
  .inventory-history-sales-details>summary{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .admin-area .inventory-history-sales-table{
    min-width:0;
  }
}
@media(max-width:640px){
  .admin-area .inventory-history-line-table{min-width:0;}
}

/* 2026-08-19: Bildebibliotek – én robust dialogkomponent i hele admin */
.admin-media-launch-card{max-width:680px;margin-top:12px;}
.admin-media-launch-card .card-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.admin-media-launch-card p{margin:3px 0 0;color:var(--muted);}

body.admin-media-open{overflow:hidden;}
dialog.admin-media-modal{
  position:fixed;
  inset:0;
  display:block;
  place-items:unset;
  width:min(1040px,calc(100vw - 32px));
  height:min(680px,calc(100vh - 40px));
  max-width:none;
  max-height:none;
  margin:auto;
  padding:0;
  border:1px solid color-mix(in srgb,var(--border) 88%,transparent);
  border-radius:16px;
  background:var(--card);
  color:var(--text);
  box-shadow:0 28px 90px rgba(0,0,0,.58);
  overflow-x:hidden;
  overflow-y:auto;
  scrollbar-gutter:stable;
}
dialog.admin-media-modal:not([open]){display:none;}
dialog.admin-media-modal::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(3px);}
dialog.admin-media-modal::-webkit-scrollbar{width:12px;height:12px;}
dialog.admin-media-modal::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 55%,transparent);border:3px solid transparent;background-clip:padding-box;border-radius:999px;}
.admin-media-panel{
  width:100%;min-height:100%;height:auto;max-height:none;overflow:visible;padding:10px;
  display:grid;grid-template-rows:auto auto auto auto auto auto;grid-auto-rows:auto;gap:7px;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.admin-media-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 7px;border-bottom:1px solid rgba(255,255,255,.09);}
.admin-media-panel-title{min-width:0;}
.admin-media-panel-head h2{margin:0;font-size:24px;line-height:1.1;}
.admin-media-panel-head p{margin:2px 0 0;font-size:12px;color:var(--muted);}
.admin-media-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) auto auto;gap:6px;align-items:center;}
.admin-media-toolbar .search{min-height:34px;padding:7px 10px;}
.admin-media-status{min-height:18px;font-size:12px;line-height:1.35;color:var(--muted);}
.admin-media-status.bad{color:#fecaca;}

.admin-media-upload-fields{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:6px;align-items:end;padding:7px;border:1px solid rgba(255,255,255,.10);border-radius:10px;background:rgba(255,255,255,.025);}
.admin-media-upload-fields[hidden]{display:none!important;}
.admin-media-upload-fields label{display:grid;gap:3px;min-width:0;}
.admin-media-upload-fields input,.admin-media-upload-fields select{min-width:0;}
.admin-media-upload-preview{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:6px;max-height:175px;overflow:auto;}
.admin-media-upload-preview[hidden]{display:none!important;}
.admin-media-upload-preview-card{padding:5px;border-radius:9px;gap:4px;}
.admin-media-upload-preview-thumb{height:70px;border-radius:7px;}
.admin-media-upload-fields .admin-media-actions{grid-column:1/-1;padding-top:2px;border:0;}

.admin-media-browser{display:grid;grid-template-columns:205px minmax(0,1fr);gap:8px;min-height:0;overflow:visible;}
.admin-media-tree-wrap{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);align-content:start;min-height:0;overflow:hidden;padding:7px;border:1px solid rgba(255,255,255,.10);border-radius:11px;background:rgba(255,255,255,.025);}
.admin-media-tree-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:5px;}
.admin-media-tree-head-actions{display:flex;gap:3px;flex-wrap:nowrap;}
.admin-media-tree-head-actions .btn{padding:6px 9px;font-size:12px;}
.admin-media-folder-form,.admin-media-folder-delete-confirm{margin:0 0 5px;padding:6px;gap:5px;border-radius:9px;}
.admin-media-tree{
  min-height:0;
  overflow:auto;
  display:block;
  padding:1px 2px 4px 0;
  --admin-media-tree-line:color-mix(in srgb,var(--muted) 58%,transparent);
  --admin-media-tree-branch-y:12px;
}
.admin-media-tree details,
.admin-media-tree summary{margin:0;padding:0;}
.admin-media-tree summary{list-style:none;}
.admin-media-tree summary::-webkit-details-marker{display:none;}
.admin-media-tree-node,
.admin-media-tree-leaf{position:relative;display:block;min-width:0;}
.admin-media-tree-summary,
.admin-media-tree-leaf{
  display:grid;
  grid-template-columns:16px minmax(0,1fr);
  align-items:center;
  column-gap:3px;
  min-width:0;
  min-height:24px;
}
.admin-media-tree-summary{cursor:default;}
.admin-media-tree-summary::before,
.admin-media-tree-toggle-spacer{
  width:13px;
  height:13px;
  justify-self:center;
  display:grid;
  place-items:center;
  box-sizing:border-box;
  border:1px solid color-mix(in srgb,var(--border) 86%,transparent);
  border-radius:1px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  color:var(--text);
  font:700 10px/1 Arial,sans-serif;
}
.admin-media-tree-summary::before{content:'+';}
.admin-media-tree-node[open]>.admin-media-tree-summary::before{content:'−';}
.admin-media-tree-toggle-spacer{
  border-color:transparent;
  background:transparent;
  color:transparent;
}
.admin-media-tree-children{
  display:block;
  min-width:0;
  margin-left:8px;
  padding-left:12px;
}
.admin-media-tree-children>.admin-media-tree-node,
.admin-media-tree-children>.admin-media-tree-leaf{position:relative;}
.admin-media-tree-children>.admin-media-tree-node::before,
.admin-media-tree-children>.admin-media-tree-leaf::before{
  content:"";
  position:absolute;
  z-index:0;
  left:-12px;
  top:0;
  bottom:0;
  border-left:1px dotted var(--admin-media-tree-line);
  pointer-events:none;
}
.admin-media-tree-children>.admin-media-tree-node:last-child::before,
.admin-media-tree-children>.admin-media-tree-leaf:last-child::before{
  bottom:auto;
  height:var(--admin-media-tree-branch-y);
}
.admin-media-tree-children>.admin-media-tree-node::after,
.admin-media-tree-children>.admin-media-tree-leaf::after{
  content:"";
  position:absolute;
  z-index:0;
  left:-12px;
  top:var(--admin-media-tree-branch-y);
  width:14px;
  border-top:1px dotted var(--admin-media-tree-line);
  pointer-events:none;
}
.admin-media-tree-children>.admin-media-tree-leaf::after{
  width:36px;
}
.admin-media-tree-row--special+.admin-media-tree-node--root,
.admin-media-tree-row--special+.admin-media-tree-leaf--root{margin-top:1px;}
.admin-media-tree-item.admin-media-tree-item--explorer{
  position:relative;
  z-index:1;
  min-width:0;
  width:100%;
  min-height:22px;
  display:grid;
  grid-template-columns:16px minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  padding:3px 5px;
  border:1px solid transparent;
  border-radius:4px;
  background:transparent;
  color:var(--text);
  text-align:left;
  font-size:13px;
  line-height:1.25;
  cursor:pointer;
}
.admin-media-tree-item.admin-media-tree-item--explorer:hover,
.admin-media-tree-item.admin-media-tree-item--explorer:focus-visible{
  outline:none;
  background:color-mix(in srgb,var(--primary) 8%,transparent);
  border-color:color-mix(in srgb,var(--primary) 18%,transparent);
}
.admin-media-tree-item.admin-media-tree-item--explorer.active{
  background:color-mix(in srgb,var(--primary) 17%,transparent);
  border-color:color-mix(in srgb,var(--primary) 28%,transparent);
  box-shadow:inset 2px 0 0 var(--primary);
}
.admin-media-tree-item .admin-media-tree-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-media-tree-item em{
  min-width:20px;
  margin-left:auto;
  font-style:normal;
  color:var(--muted);
  font-size:12px;
  text-align:right;
}
.admin-media-tree-folder-icon{
  width:15px;
  min-width:15px;
  height:11px;
  display:inline-block;
  position:relative;
  border-radius:2px;
  background:color-mix(in srgb,var(--primary) 70%,#f5c04d);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--border) 48%,transparent);
}
.admin-media-tree-folder-icon::before{
  content:'';
  position:absolute;
  left:1px;
  top:-3px;
  width:7px;
  height:4px;
  border-radius:2px 2px 0 0;
  background:inherit;
}
body.theme-light .admin-media-tree-wrap{
  background:color-mix(in srgb,var(--panel) 86%,#fff);
  border-color:var(--border);
}
body.theme-light .admin-media-tree{--admin-media-tree-line:color-mix(in srgb,var(--muted) 62%,transparent);}
body.theme-light .admin-media-tree-summary::before{
  background:#fff;
  border-color:var(--border);
  color:var(--text);
}
body.theme-light .admin-media-tree-item.admin-media-tree-item--explorer:hover,
body.theme-light .admin-media-tree-item.admin-media-tree-item--explorer:focus-visible{
  background:color-mix(in srgb,var(--primary) 7%,#fff);
}
body.theme-light .admin-media-tree-item.admin-media-tree-item--explorer.active{
  background:color-mix(in srgb,var(--primary) 13%,#fff);
}
body.theme-light .admin-media-tree-folder-icon{
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 78%,#fff),color-mix(in srgb,var(--primary2) 65%,#fff));
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.08),0 0 0 1px color-mix(in srgb,var(--border) 70%,transparent);
}
body.theme-light .admin-media-tree-folder-icon::before{
  background:color-mix(in srgb,var(--primary2) 62%,#fff);
}

.admin-media-content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:8px;min-width:0;min-height:0;overflow:visible;align-items:stretch;}
.admin-media-main{display:grid;grid-template-rows:auto auto;gap:5px;min-width:0;min-height:0;overflow:visible;}
.admin-media-main-head{min-height:32px;display:flex;align-items:center;gap:6px;justify-content:space-between;padding:0 1px;}
.admin-media-main-head>strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-media-standalone-bulk{margin-left:auto;display:flex;align-items:center;gap:5px;min-width:0;padding:3px 5px;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--primary) 8%,var(--panel));}
.admin-media-standalone-bulk[hidden]{display:none!important;}
.admin-media-standalone-bulk strong{font-size:12px;white-space:nowrap;}
.admin-media-standalone-bulk select{width:170px;min-width:100px;min-height:34px;padding:6px 8px;font-size:12px;}
.admin-media-standalone-bulk .btn{padding:6px 9px;font-size:12px;}
.admin-media-grid{min-height:0;overflow-x:auto;overflow-y:visible;display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));grid-auto-rows:max-content;align-content:start;gap:6px;padding:1px 3px 3px 1px;}
.admin-media-card{position:relative;border-radius:9px;padding:5px;gap:3px;}
.admin-media-card-thumb{height:76px;border-radius:7px;padding:3px;}
.admin-media-card-name{font-size:12px;}
.admin-media-card-meta{font-size:12px;}
.admin-media-card-mark{position:absolute;top:8px;left:8px;z-index:2;width:20px;height:20px;padding:0;border-radius:6px;font-size:0;display:grid;place-items:center;background:color-mix(in srgb,var(--card) 90%,transparent);}
.admin-media-card-mark::after{content:'✓';font-size:12px;opacity:.28;}
.admin-media-card-mark[aria-pressed="true"]::after{opacity:1;color:#3b82f6;text-shadow:0 0 6px rgba(59,130,246,.45);}
.admin-media-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);}
.admin-media-card.focused{outline:1px solid color-mix(in srgb,var(--primary) 58%,transparent);}
.admin-media-select-order{font-size:12px;}

.admin-media-inspector{min-width:0;max-width:100%;min-height:0;overflow:auto;display:grid;align-content:start;gap:6px;padding:7px;border:1px solid rgba(255,255,255,.10);border-radius:11px;background:rgba(255,255,255,.025);}
.admin-media-inspector-empty{display:grid;gap:3px;color:var(--muted);font-size:12px;}
.admin-media-inspector-body{display:grid;gap:6px;min-width:0;max-width:100%;overflow:hidden;}
.admin-media-inspector-body[hidden]{display:none!important;}
.admin-media-inspector-preview{position:relative;width:100%;max-width:100%;height:118px;min-width:0;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(255,255,255,.10);border-radius:8px;padding:4px;background:rgba(0,0,0,.18);color:inherit;cursor:zoom-in;}
.admin-media-inspector-preview img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;}
.admin-media-inspector-zoom-icon{position:absolute;right:8px;bottom:8px;width:25px;height:25px;border-radius:999px;background:rgba(0,0,0,.68);border:1px solid rgba(255,255,255,.28);opacity:0;transform:scale(.9);transition:opacity .14s ease,transform .14s ease;pointer-events:none;}
.admin-media-inspector-zoom-icon::before{content:'';position:absolute;width:8px;height:8px;border:2px solid #fff;border-radius:50%;left:6px;top:5px;}
.admin-media-inspector-zoom-icon::after{content:'';position:absolute;width:7px;height:2px;background:#fff;border-radius:2px;transform:rotate(45deg);left:14px;top:15px;transform-origin:left center;}
.admin-media-inspector-preview:hover .admin-media-inspector-zoom-icon,.admin-media-inspector-preview:focus-visible .admin-media-inspector-zoom-icon{opacity:1;transform:scale(1);}
.admin-media-inspector-preview:focus-visible{outline:2px solid color-mix(in srgb,#3b82f6 70%,transparent);outline-offset:1px;}
.admin-media-inspector-meta{display:grid;gap:2px;font-size:12px;min-width:0;max-width:100%;overflow:hidden;}
.admin-media-inspector-meta>*{display:block;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word;}
.admin-media-inspector-form,.admin-media-inspector-delete{display:grid;gap:5px;padding-top:6px;border-top:1px solid rgba(255,255,255,.08);}
.admin-media-inspector-form label,.admin-media-inspector-delete label{display:grid;gap:3px;}
.admin-media-inspector-form input{width:100%;min-width:0;}
.admin-media-replacement-list{display:grid;gap:3px;max-height:190px;overflow:auto;padding:2px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(0,0,0,.10);}
.admin-media-replacement-option{width:100%;min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:6px;padding:4px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer;}
.admin-media-replacement-option:hover{background:rgba(255,255,255,.05);}
.admin-media-replacement-option.selected{border-color:color-mix(in srgb,var(--primary) 60%,var(--border));background:color-mix(in srgb,var(--primary) 13%,transparent);}
.admin-media-replacement-thumb{width:34px;height:34px;min-width:34px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:6px;background:rgba(0,0,0,.22);}
.admin-media-replacement-thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;}
.admin-media-replacement-thumb--empty::before{content:'—';font-size:15px;color:var(--muted);}
.admin-media-replacement-text{display:grid;gap:1px;min-width:0;max-width:100%;}
.admin-media-replacement-text>*{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.admin-media-replacement-text strong{font-size:12px;font-weight:700;}
.admin-media-replacement-text .small{font-size:12px;color:var(--muted);}
.admin-media-inline-confirm{display:grid;gap:5px;padding:6px;border-radius:8px;}
.admin-media-inline-confirm[hidden]{display:none!important;}
.admin-media-inline-confirm>div{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap;}

.admin-media-picker-footer{justify-content:flex-end;padding-top:6px;border-top:1px solid rgba(255,255,255,.08);}
dialog.admin-media-zoom-modal{width:min(720px,calc(100vw - 24px));height:min(560px,calc(100vh - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);margin:auto;padding:0;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px rgba(0,0,0,.62);overflow:hidden;}
dialog.admin-media-zoom-modal::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(3px);}
.admin-media-large-preview{width:100%;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;padding:10px;}
.admin-media-large-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0;}
.admin-media-large-preview-meta{min-width:0;max-width:calc(100% - 70px);}
.admin-media-large-preview-meta>*{max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word;}
.admin-media-large-preview-frame{min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:10px;background:rgba(0,0,0,.28);padding:8px;}
.admin-media-large-preview-frame img{display:block;width:auto;height:auto;max-width:none;max-height:none;margin:auto;object-fit:none;}
dialog.admin-media-zoom-modal.admin-media-zoom-modal--scroll .admin-media-large-preview-frame{overflow:scroll;}
dialog.admin-media-zoom-modal.admin-media-zoom-modal--scroll .admin-media-large-preview-frame img{margin:0;}

@media(max-width:900px){
  dialog.admin-media-modal{width:calc(100vw - 12px);height:calc(100vh - 12px);}
  .admin-media-content-wrap{grid-template-columns:minmax(0,1fr) 190px;}
  .admin-media-browser{grid-template-columns:180px minmax(0,1fr);}
  .admin-media-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));}
}
@media(max-width:700px){
  .admin-media-panel{padding:7px;}
  .admin-media-toolbar{grid-template-columns:1fr auto auto;}
  .admin-media-panel-head p{display:none;}
  .admin-media-browser{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);}
  .admin-media-tree-wrap{max-height:180px;}
  .admin-media-content-wrap{grid-template-columns:1fr;}
  .admin-media-inspector{display:none;}
  .admin-media-main-head{align-items:flex-start;flex-direction:column;}
  .admin-media-standalone-bulk{width:100%;margin:0;flex-wrap:wrap;}
  .admin-media-standalone-bulk select{flex:1 1 120px;width:auto;}
  .admin-media-upload-fields{grid-template-columns:1fr;}
  .admin-media-upload-fields .admin-media-actions,.admin-media-upload-preview{grid-column:auto;}
}
.admin-media-picker-footer[hidden]{display:none!important;}

/* Bildebibliotek som ordinært sideinnhold på Admin/Globale innstillinger → Bildebibliotek. */
dialog.admin-media-modal[data-media-inline="1"]{
  position:relative;
  inset:auto;
  z-index:auto;
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  max-height:none;
  margin:12px 0 0;
  overflow:visible;
  box-shadow:none;
}
dialog.admin-media-modal[data-media-inline="1"]::backdrop{display:none;}
dialog.admin-media-modal[data-media-inline="1"] .admin-media-panel{min-height:0;}
dialog.admin-media-modal[data-media-inline="1"] [data-media-close]{display:none!important;}
@media(max-width:900px){
  dialog.admin-media-modal[data-media-inline="1"]{width:100%;height:auto;}
}

/* 2026-08-22 No357: Handlekurv – todelt checkout-layout inspirert av referansebildet, med eksisterende tema/data. */
body:not(.admin-area) .cart-page{
  width:100%;
  max-width:100%;
  min-width:0;
  display:grid;
  gap:18px;
  padding:18px 0 28px;
}
body:not(.admin-area) .cart-page-notice{margin:0;}
body:not(.admin-area) .cart-checkout-layout{
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(320px,.88fr);
  gap:clamp(24px,3vw,52px);
  align-items:start;
  width:100%;
  min-width:0;
}
body:not(.admin-area) .cart-items-column,
body:not(.admin-area) .cart-summary-column{min-width:0;}
body:not(.admin-area) .cart-column-head{margin:0 0 18px;}
body:not(.admin-area) .cart-main-title,
body:not(.admin-area) .cart-summary-title{
  margin:0;
  color:var(--text);
  font-family:var(--font-display,Georgia,serif);
  font-size:clamp(1.55rem,2vw,2rem);
  line-height:1.08;
  letter-spacing:-.02em;
}
body:not(.admin-area) .cart-column-head p{
  margin:7px 0 0;
  max-width:62ch;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.4;
}
body:not(.admin-area) .cart-items-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--border,var(--line));
}
body:not(.admin-area) .cart-item-row{
  display:grid;
  grid-template-columns:110px minmax(190px,1fr) minmax(132px,auto) minmax(112px,auto) auto;
  gap:16px;
  align-items:center;
  min-width:0;
  padding:18px 0;
  border-bottom:1px solid var(--border,var(--line));
}
body:not(.admin-area) .cart-item-image{
  width:110px;
  height:90px;
  min-width:110px;
  border-radius:12px;
}
body:not(.admin-area) .cart-item-image .thumb-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
}
body:not(.admin-area) .cart-item-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
body:not(.admin-area) .cart-item-info{
  min-width:0;
  align-self:center;
}
body:not(.admin-area) .cart-item-title{
  margin:0;
  font-size:1rem;
  line-height:1.3;
  font-weight:700;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
body:not(.admin-area) .cart-item-title a{color:var(--text);text-decoration:none;}
body:not(.admin-area) .cart-item-title a:hover{text-decoration:underline;}
body:not(.admin-area) .cart-item-number{
  margin-top:5px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.3;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
body:not(.admin-area) .cart-item-facts{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px 10px;
  margin-top:8px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.35;
}
body:not(.admin-area) .cart-item-facts .cart-item-price{display:inline-flex;align-items:baseline;gap:6px;color:var(--text);}
body:not(.admin-area) .cart-item-facts .customer-vat-note{font-size:inherit;line-height:inherit;margin:0;color:var(--muted);}
body:not(.admin-area) .cart-stock{display:inline-flex;align-items:center;gap:6px;font-weight:650;}
body:not(.admin-area) .cart-stock::before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor;flex:none;}
body:not(.admin-area) .cart-stock.is-available{color:var(--good);}
body:not(.admin-area) .cart-stock.is-unavailable{color:var(--bad,var(--muted));}
body:not(.admin-area) .cart-campaign-note{
  margin-top:7px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.35;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
body:not(.admin-area) .cart-qty-form{display:grid;gap:5px;align-self:center;}
body:not(.admin-area) .cart-qty-form label{
  color:var(--muted);
  font-size:.72rem;
  line-height:1.1;
}
body:not(.admin-area) .cart-qty-controls{display:flex;align-items:center;gap:6px;}
body:not(.admin-area) .cart-qty-controls input[type=number]{
  width:68px;
  min-width:68px;
  height:38px;
  padding:6px 8px;
  text-align:center;
}
body:not(.admin-area) .cart-update-btn{
  min-height:38px;
  padding:7px 10px;
  font-size:.75rem;
  white-space:nowrap;
}
body:not(.admin-area) .cart-line-total{
  display:grid;
  justify-items:end;
  gap:3px;
  min-width:105px;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
body:not(.admin-area) .cart-line-total>strong{font-size:1rem;white-space:nowrap;}
body:not(.admin-area) .cart-line-total .customer-vat-summary{max-width:132px;text-align:right;}
body:not(.admin-area) .cart-remove-form{display:flex;justify-content:flex-end;align-items:center;}
body:not(.admin-area) .cart-remove-btn{
  min-height:36px;
  padding:7px 9px;
  font-size:.72rem;
  color:var(--muted);
  background:transparent;
  box-shadow:none;
}
body:not(.admin-area) .cart-remove-btn:hover{color:var(--text);background:rgba(255,255,255,.06);}
body.theme-light:not(.admin-area) .cart-remove-btn:hover{background:rgba(15,23,42,.06);}

body:not(.admin-area) .cart-summary-column{
  position:sticky;
  top:76px;
  display:grid;
  gap:14px;
  align-content:start;
}
body:not(.admin-area) .cart-summary-title{margin-bottom:2px;}
body:not(.admin-area) .cart-summary-box{
  display:grid;
  gap:12px;
  padding:20px;
  border:1px solid var(--border,var(--line));
  border-radius:12px;
  background:var(--surface-2,rgba(255,255,255,.04));
  box-shadow:var(--shadow-soft,0 8px 24px rgba(0,0,0,.12));
}
body:not(.admin-area) .cart-summary-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  min-width:0;
  line-height:1.35;
}
body:not(.admin-area) .cart-summary-row>span{color:var(--text);}
body:not(.admin-area) .cart-summary-row>strong{text-align:right;font-variant-numeric:tabular-nums;}
body:not(.admin-area) .cart-summary-vat{font-size:.9rem;}
body:not(.admin-area) .cart-summary-total{font-size:1rem;font-weight:750;}
body:not(.admin-area) .cart-summary-total>strong{font-size:1.2rem;}
body:not(.admin-area) .cart-summary-divider{height:1px;background:var(--border,var(--line));}
body:not(.admin-area) .cart-checkout-btn{
  width:100%;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1rem;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
}
body:not(.admin-area) .cart-summary-details{
  display:grid;
  border:1px solid var(--border,var(--line));
  border-radius:12px;
  overflow:hidden;
  background:rgba(255,255,255,.025);
}
body.theme-light:not(.admin-area) .cart-summary-details{background:rgba(15,23,42,.025);}
body:not(.admin-area) .cart-summary-details>div{
  display:grid;
  grid-template-columns:minmax(96px,auto) minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:11px 13px;
  border-bottom:1px solid var(--border,var(--line));
  font-size:.78rem;
  line-height:1.35;
}
body:not(.admin-area) .cart-summary-details>div:last-child{border-bottom:0;}
body:not(.admin-area) .cart-summary-details span{color:var(--muted);}
body:not(.admin-area) .cart-summary-details strong{text-align:right;overflow-wrap:normal;word-break:normal;hyphens:none;}
body:not(.admin-area) .cart-continue-btn{width:100%;display:flex;justify-content:center;}
body:not(.admin-area) .cart-empty{max-width:760px;margin:18px auto 0;width:100%;}
body:not(.admin-area) .cart-empty h2{margin:16px 0 6px;}

@media(max-width:1180px){
  body:not(.admin-area) .cart-checkout-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:24px;}
  body:not(.admin-area) .cart-item-row{grid-template-columns:110px minmax(0,1fr) minmax(120px,auto) auto;gap:13px;}
  body:not(.admin-area) .cart-line-total{grid-column:3;grid-row:2;justify-self:end;}
  body:not(.admin-area) .cart-remove-form{grid-column:4;grid-row:1 / span 2;}
}
@media(max-width:900px){
  body:not(.admin-area) .cart-page{padding-top:12px;}
  body:not(.admin-area) .cart-checkout-layout{grid-template-columns:1fr;gap:28px;}
  body:not(.admin-area) .cart-summary-column{position:static;top:auto;}
}
@media(max-width:680px){
  body:not(.admin-area) .cart-item-row{
    grid-template-columns:110px minmax(0,1fr);
    gap:12px;
    padding:16px 0;
  }
  body:not(.admin-area) .cart-item-info{align-self:start;}
  body:not(.admin-area) .cart-qty-form{grid-column:1 / -1;grid-row:auto;}
  body:not(.admin-area) .cart-qty-controls{justify-content:flex-start;}
  body:not(.admin-area) .cart-line-total{grid-column:1 / 2;grid-row:auto;justify-items:start;text-align:left;justify-self:start;}
  body:not(.admin-area) .cart-line-total .customer-vat-summary{text-align:left;}
  body:not(.admin-area) .cart-remove-form{grid-column:2;grid-row:auto;justify-content:flex-end;}
  body:not(.admin-area) .cart-summary-box{padding:16px;}
}
body:not(.admin-area) .cart-summary-vat-rates{
  margin-top:-7px;
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:4px 10px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.35;
  text-align:right;
}
body:not(.admin-area) .cart-summary-vat-rate,
body:not(.admin-area) .cart-item-facts > span,
body:not(.admin-area) .cart-item-facts .cart-item-price,
body:not(.admin-area) .cart-item-facts .cart-item-price > *,
body:not(.admin-area) .cart-item-number,
body:not(.admin-area) .cart-stock,
body:not(.admin-area) .cart-line-total > strong,
body:not(.admin-area) .cart-line-total .customer-vat-summary,
body:not(.admin-area) .cart-summary-row > strong,
body:not(.admin-area) .cart-summary-row > span,
body:not(.admin-area) .cart-summary-details > div > span,
body:not(.admin-area) .cart-summary-details > div > strong,
body:not(.admin-area) .checkout-order-meta > span,
body:not(.admin-area) .checkout-order-number,
body:not(.admin-area) .checkout-order-qty,
body:not(.admin-area) .checkout-order-price,
body:not(.admin-area) .checkout-total-line > strong{
  white-space:nowrap;
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}
body:not(.admin-area) .cart-line-total .customer-vat-summary{max-width:none;}
body:not(.admin-area) .checkout-support-meta div,
body:not(.admin-area) .checkout-payment-alert span,
body:not(.admin-area) .checkout-inline-note{word-break:normal;overflow-wrap:normal;hyphens:none;}
@media(max-width:520px){
  body:not(.admin-area) .cart-summary-details>div{grid-template-columns:1fr;}
  body:not(.admin-area) .cart-summary-details strong{text-align:left;}
  body:not(.admin-area) .cart-summary-vat-rates{justify-content:flex-start;text-align:left;}
}



/* 2026-08-22 No359: Kassen – todelt checkout inspirert av referansebildene, med eksisterende tema/farger og samme data/funksjon. */
body:not(.admin-area) .checkout-page{
  width:100%;
  max-width:100%;
  min-width:0;
  padding:14px 0 38px;
}
body:not(.admin-area) .checkout-page-notice{margin:0 0 14px;}
body:not(.admin-area) .checkout-shell{display:grid;gap:26px;}
body:not(.admin-area) .checkout-topbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:20px;
  min-height:94px;
  padding:16px 0 24px;
  border-bottom:1px solid var(--border,var(--line));
}
body:not(.admin-area) .checkout-back-link{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:42px;
  color:var(--primary);
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
}
body:not(.admin-area) .checkout-back-link:hover{text-decoration:underline;}
body:not(.admin-area) .checkout-topbar-center{justify-self:center;min-width:0;}
body:not(.admin-area) .checkout-page-title{
  margin:0;
  color:var(--text);
  font-family:var(--font-display,Georgia,serif);
  font-size:clamp(1.8rem,2.2vw,2.45rem);
  line-height:1.05;
}
body:not(.admin-area) .checkout-brand{justify-self:end;display:flex;align-items:center;justify-content:flex-end;min-width:0;}
body:not(.admin-area) .checkout-brand img{max-width:min(230px,22vw);max-height:66px;width:auto;height:auto;display:block;object-fit:contain;}
body:not(.admin-area) .checkout-brand span{font-size:1.35rem;font-weight:800;color:var(--text);}
body:not(.admin-area) .checkout-grid{
  display:grid;
  grid-template-columns:minmax(410px,.82fr) minmax(520px,1.18fr);
  gap:clamp(38px,5vw,92px);
  align-items:start;
}
body:not(.admin-area) .checkout-order-panel{position:sticky;top:86px;min-width:0;}
body:not(.admin-area) .checkout-card{
  min-width:0;
  color:var(--text);
}
body:not(.admin-area) .checkout-order-card{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body:not(.admin-area) .checkout-section-card{
  padding:0 0 28px;
  border:0;
  border-bottom:1px solid var(--border,var(--line));
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body:not(.admin-area) .checkout-final-card{border-bottom:0;padding-bottom:0;}
body:not(.admin-area) .checkout-card-header{display:grid;gap:8px;margin-bottom:18px;}
body:not(.admin-area) .checkout-card-header h2{margin:0;font-size:clamp(1.28rem,1.55vw,1.72rem);line-height:1.1;color:var(--text);}
body:not(.admin-area) .checkout-card-header p{margin:0;max-width:64ch;color:var(--muted);font-size:.92rem;line-height:1.45;}
body:not(.admin-area) .checkout-order-head,
body:not(.admin-area) .checkout-order-row{display:grid;grid-template-columns:minmax(0,1fr) 68px 112px;gap:16px;align-items:center;}
body:not(.admin-area) .checkout-order-head{padding:0 0 10px;color:var(--muted);font-size:.82rem;font-weight:700;border-bottom:1px solid var(--border,var(--line));}
body:not(.admin-area) .checkout-order-head span:nth-child(2),
body:not(.admin-area) .checkout-order-head span:nth-child(3),
body:not(.admin-area) .checkout-order-qty,
body:not(.admin-area) .checkout-order-price{text-align:right;}
body:not(.admin-area) .checkout-order-list{display:grid;gap:0;}
body:not(.admin-area) .checkout-order-row{padding:16px 0;border-bottom:1px solid var(--border,var(--line));}
body:not(.admin-area) .checkout-order-product{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:center;min-width:0;}
body:not(.admin-area) .checkout-order-image{width:110px;height:90px;min-width:110px;border-radius:10px;overflow:hidden;}
body:not(.admin-area) .checkout-order-image .thumb-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
body:not(.admin-area) .checkout-order-image img{width:100%;height:100%;object-fit:cover;display:block;}
body:not(.admin-area) .checkout-order-info{min-width:0;display:grid;gap:6px;}
body:not(.admin-area) .checkout-order-name{margin:0;font-size:.98rem;line-height:1.3;word-break:normal;overflow-wrap:normal;hyphens:none;}
body:not(.admin-area) .checkout-order-name a{color:var(--text);text-decoration:none;}
body:not(.admin-area) .checkout-order-name a:hover{text-decoration:underline;}
body:not(.admin-area) .checkout-order-number{color:var(--muted);font-size:.76rem;line-height:1.35;}
body:not(.admin-area) .checkout-order-meta{display:flex;flex-wrap:wrap;gap:5px 10px;color:var(--muted);font-size:.76rem;line-height:1.35;}
body:not(.admin-area) .checkout-order-meta > span{white-space:nowrap;}
body:not(.admin-area) .checkout-order-discount{color:var(--muted);font-size:.72rem;line-height:1.35;word-break:normal;overflow-wrap:normal;hyphens:none;}
body:not(.admin-area) .checkout-order-qty,
body:not(.admin-area) .checkout-order-price{font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap;}
body:not(.admin-area) .checkout-order-total-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0 0;font-size:1.08rem;}
body:not(.admin-area) .checkout-order-total-row strong{font-size:1.22rem;white-space:nowrap;}
body:not(.admin-area) .checkout-order-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;}
body:not(.admin-area) .checkout-order-actions .btn{justify-content:center;min-height:48px;}
body:not(.admin-area) .checkout-form{display:grid;gap:12px;}
body:not(.admin-area) .checkout-section-card.checkout-accordion-section{
  padding:0;
  border:1px solid var(--border,var(--line));
  border-radius:12px;
  background:var(--card);
  box-shadow:none;
  overflow:hidden;
}
body.theme-light:not(.admin-area) .checkout-section-card.checkout-accordion-section{background:rgba(255,255,255,.72);}
body:not(.admin-area) .checkout-accordion-toggle{
  appearance:none;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto 18px;
  gap:12px;
  align-items:center;
  width:100%;
  min-height:66px;
  margin:0;
  padding:12px 15px;
  border:0;
  background:transparent;
  color:var(--text);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
body:not(.admin-area) .checkout-accordion-toggle:hover{background:color-mix(in srgb,var(--primary) 5%, transparent);}
body:not(.admin-area) .checkout-accordion-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 72%, white 10%);outline-offset:-2px;}
body:not(.admin-area) .checkout-accordion-section.is-open .checkout-accordion-toggle{border-bottom:1px solid var(--border,var(--line));}
body:not(.admin-area) .checkout-accordion-step{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:1px solid var(--border,var(--line));
  border-radius:50%;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  line-height:1;
}
body:not(.admin-area) .checkout-accordion-section.is-open .checkout-accordion-step{border-color:color-mix(in srgb,var(--primary) 55%, var(--border,var(--line)));color:var(--primary);}
body:not(.admin-area) .checkout-accordion-title-wrap{display:grid;gap:2px;min-width:0;}
body:not(.admin-area) .checkout-accordion-title-wrap strong{font-size:1rem;line-height:1.2;color:var(--text);}
body:not(.admin-area) .checkout-accordion-title-wrap small{color:var(--muted);font-size:.76rem;line-height:1.3;}
body:not(.admin-area) .checkout-accordion-chevron{
  width:10px;
  height:10px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  color:var(--muted);
  transform:rotate(45deg) translate(-2px,-2px);
  transition:transform .16s ease;
  justify-self:end;
}
body:not(.admin-area) .checkout-accordion-section.is-open .checkout-accordion-chevron{transform:rotate(225deg) translate(-1px,-1px);}
body:not(.admin-area) .checkout-accordion-body{padding:18px 16px 20px;visibility:visible;opacity:1;}
body:not(.admin-area) .checkout-accordion-body[aria-hidden="true"]{max-height:0;padding-top:0;padding-bottom:0;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;}
body:not(.admin-area) .checkout-accordion-intro{margin:0 0 16px;}
body:not(.admin-area) .checkout-accordion-intro p{margin:0;}
body:not(.admin-area) .checkout-customer-type{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px;}
body:not(.admin-area) .checkout-customer-type-option{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));cursor:pointer;}
body:not(.admin-area) .checkout-customer-type-option.is-selected{border-color:color-mix(in srgb,var(--primary) 62%, var(--border,var(--line)));background:color-mix(in srgb,var(--primary) 9%, var(--card));}
body:not(.admin-area) .checkout-customer-type-option input{margin-top:3px;flex:none;}
body:not(.admin-area) .checkout-customer-type-option span{display:grid;gap:3px;min-width:0;}
body:not(.admin-area) .checkout-customer-type-option strong{font-size:.94rem;}
body:not(.admin-area) .checkout-customer-type-option small{color:var(--muted);font-size:.78rem;line-height:1.35;}
body:not(.admin-area) .checkout-company-panel{display:grid;gap:12px;margin-bottom:16px;padding:14px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.025));}
body:not(.admin-area) .checkout-company-panel[hidden]{display:none;}
body:not(.admin-area) .checkout-company-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);gap:12px;}
body:not(.admin-area) .checkout-company-grid .checkout-field:first-child,body:not(.admin-area) .checkout-company-grid .checkout-field:nth-child(2){grid-column:auto;}
body:not(.admin-area) .checkout-company-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
body:not(.admin-area) .checkout-company-results{display:grid;gap:7px;}
body:not(.admin-area) .checkout-company-results[hidden]{display:none;}
body:not(.admin-area) .checkout-company-result{appearance:none;display:flex;justify-content:space-between;gap:14px;align-items:center;width:100%;padding:10px 12px;border:1px solid var(--border,var(--line));border-radius:9px;background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer;}
body:not(.admin-area) .checkout-company-result:hover{border-color:color-mix(in srgb,var(--primary) 50%, var(--border,var(--line)));}
body:not(.admin-area) .checkout-company-result span{color:var(--muted);font-size:.8rem;white-space:nowrap;}
body:not(.admin-area) .checkout-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;}
body:not(.admin-area) .checkout-field{display:grid;gap:7px;min-width:0;}
body:not(.admin-area) .checkout-field-half{grid-column:span 1;}
body:not(.admin-area) .checkout-field span{color:var(--muted);font-size:.8rem;font-weight:700;}
body:not(.admin-area) .checkout-field input{
  width:100%;
  min-height:50px;
  padding:11px 13px;
  border-color:var(--border,var(--line));
  border-radius:10px;
  background:var(--surface-2,rgba(255,255,255,.035));
}
body.theme-light:not(.admin-area) .checkout-field input{background:rgba(255,255,255,.92);}
body:not(.admin-area) .checkout-field:first-child,
body:not(.admin-area) .checkout-field:nth-child(2){grid-column:1 / -1;}
body:not(.admin-area) .checkout-inline-note{grid-column:1 / -1;color:var(--muted);font-size:.8rem;line-height:1.4;}
body:not(.admin-area) .checkout-payment-stack{display:grid;gap:10px;}
body:not(.admin-area) .checkout-payment-alert{display:grid;gap:6px;padding:14px 16px;border:1px solid rgba(255,107,107,.35);border-radius:10px;background:rgba(255,107,107,.10);}
body:not(.admin-area) .checkout-payment-alert[hidden]{display:none;}
body:not(.admin-area) .checkout-payment-provider-panel[hidden]{display:none;}
body:not(.admin-area) .checkout-payment-source-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;}
body:not(.admin-area) .checkout-payment-source-button{appearance:none;display:grid;gap:5px;min-height:72px;padding:13px 15px;border:1px solid var(--border,var(--line));border-radius:12px;background:var(--surface-2,rgba(255,255,255,.03));color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease;}
body.theme-light:not(.admin-area) .checkout-payment-source-button{background:rgba(255,255,255,.92);}
body:not(.admin-area) .checkout-payment-source-button:hover{border-color:color-mix(in srgb,var(--primary) 45%, var(--border,var(--line)));transform:translateY(-1px);}
body:not(.admin-area) .checkout-payment-source-button:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 78%, white 8%);outline-offset:2px;}
body:not(.admin-area) .checkout-payment-source-button.is-selected{border-color:color-mix(in srgb,var(--primary) 68%, var(--border,var(--line)));background:color-mix(in srgb,var(--primary) 10%, var(--card));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 24%, transparent);}
body.theme-light:not(.admin-area) .checkout-payment-source-button.is-selected{background:color-mix(in srgb,var(--primary) 7%, #fff);}
body:not(.admin-area) .checkout-payment-source-button strong{font-size:.94rem;line-height:1.25;}
body:not(.admin-area) .checkout-payment-source-button span{color:var(--muted);font-size:.78rem;line-height:1.35;}
body:not(.admin-area) .checkout-bank-transfer-panel{display:grid;gap:14px;padding:16px;border:1px solid var(--border,var(--line));border-radius:12px;background:var(--card);box-shadow:0 8px 22px rgba(0,0,0,.12);}
body.theme-light:not(.admin-area) .checkout-bank-transfer-panel{background:#fff;box-shadow:0 8px 22px rgba(31,34,36,.08);}
body:not(.admin-area) .checkout-bank-transfer-intro{display:grid;gap:5px;}
body:not(.admin-area) .checkout-bank-transfer-intro>span{color:var(--muted);font-size:.84rem;line-height:1.45;}
body:not(.admin-area) .checkout-bank-transfer-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
body:not(.admin-area) .checkout-bank-transfer-details>div{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));min-width:0;}
body.theme-light:not(.admin-area) .checkout-bank-transfer-details>div{background:rgba(15,23,42,.025);}
body:not(.admin-area) .checkout-bank-transfer-details span{color:var(--muted);font-size:.73rem;line-height:1.3;}
body:not(.admin-area) .checkout-bank-transfer-details strong{font-size:.9rem;line-height:1.35;overflow-wrap:anywhere;}
body:not(.admin-area) .checkout-bank-transfer-warning{padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 35%, var(--border,var(--line)));border-radius:10px;background:color-mix(in srgb,var(--primary) 8%, var(--card));font-size:.84rem;line-height:1.45;}
body:not(.admin-area) .checkout-bank-transfer-note{display:grid;gap:5px;padding:12px 14px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));font-size:.84rem;line-height:1.45;}
body:not(.admin-area) .checkout-bank-transfer-note span{color:var(--muted);}
body:not(.admin-area) .checkout-bank-transfer-mail-status{margin-top:14px;padding:12px 14px;border:1px solid rgba(34,197,94,.35);border-radius:10px;background:rgba(34,197,94,.10);line-height:1.45;}
body:not(.admin-area) .checkout-stripe-element{padding:14px 16px;border:1px solid var(--border,var(--line));border-radius:12px;background:var(--card);box-shadow:0 8px 22px rgba(0,0,0,.12);}
body.theme-light:not(.admin-area) .checkout-stripe-element{background:#fff;box-shadow:0 8px 22px rgba(31,34,36,.08);}
body:not(.admin-area) .checkout-payment-option{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));cursor:pointer;}
body.theme-light:not(.admin-area) .checkout-payment-option{background:rgba(15,23,42,.025);}
body:not(.admin-area) .checkout-payment-option:hover{border-color:color-mix(in srgb,var(--primary) 38%, var(--border,var(--line)));}
body:not(.admin-area) .checkout-payment-option.is-selected{border-color:color-mix(in srgb,var(--primary) 58%, var(--border,var(--line)));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 20%, transparent);}
body:not(.admin-area) .checkout-payment-option input{margin-top:2px;flex:none;}
body:not(.admin-area) .checkout-payment-option-body{display:grid;gap:4px;min-width:0;}
body:not(.admin-area) .checkout-payment-option-body strong{color:var(--text);}
body:not(.admin-area) .checkout-payment-option-body span{color:var(--muted);font-size:.84rem;line-height:1.4;word-break:normal;overflow-wrap:normal;hyphens:none;}
body:not(.admin-area) .checkout-total-box{display:grid;gap:12px;padding:16px 18px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));}
body.theme-light:not(.admin-area) .checkout-total-box{background:rgba(15,23,42,.025);}
body:not(.admin-area) .checkout-total-line{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;}
body:not(.admin-area) .checkout-total-line > span,
body:not(.admin-area) .checkout-total-line > strong{white-space:nowrap;}
body:not(.admin-area) .checkout-total-payable{padding-top:12px;border-top:1px solid var(--border,var(--line));}
body:not(.admin-area) .checkout-total-payable strong:last-child{font-size:1.35rem;line-height:1;}
body:not(.admin-area) .checkout-total-vat-note{margin-top:4px;}
body:not(.admin-area) .checkout-pay-btn{width:100%;min-height:56px;margin-top:14px;font-size:1.02rem;justify-content:center;}
body:not(.admin-area) .checkout-support-meta{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:14px;color:var(--muted);font-size:.8rem;line-height:1.4;}
body:not(.admin-area) .checkout-support-meta div{white-space:nowrap;}
body:not(.admin-area) .checkout-empty{max-width:760px;margin:12px auto 0;}
body:not(.admin-area) .checkout-empty h2{margin-top:0;}
@media(max-width:1180px){
  body:not(.admin-area) .checkout-grid{grid-template-columns:minmax(340px,.9fr) minmax(430px,1.1fr);gap:28px;}
}
@media(max-width:980px){
  body:not(.admin-area) .checkout-grid{grid-template-columns:1fr;}
  body:not(.admin-area) .checkout-order-panel{position:static;top:auto;}
}
@media(max-width:860px){
  body:not(.admin-area) .checkout-topbar{grid-template-columns:1fr auto;min-height:0;padding:10px 0 18px;}
  body:not(.admin-area) .checkout-topbar-center{grid-column:1 / -1;grid-row:1;justify-self:start;}
  body:not(.admin-area) .checkout-back-link{grid-column:1;grid-row:2;}
  body:not(.admin-area) .checkout-brand{grid-column:2;grid-row:2;justify-self:end;}
  body:not(.admin-area) .checkout-order-actions{grid-template-columns:1fr;}
}
@media(max-width:720px){
  body:not(.admin-area) .checkout-accordion-toggle{grid-template-columns:28px minmax(0,1fr) auto 16px;gap:10px;min-height:60px;padding:10px 12px;}
  body:not(.admin-area) .checkout-accordion-step{width:26px;height:26px;}
  body:not(.admin-area) .checkout-accordion-body{padding:15px 12px 18px;}
  body:not(.admin-area) .checkout-accordion-body[aria-hidden="true"]{padding-top:0;padding-bottom:0;}
  body:not(.admin-area) .checkout-customer-type,
  body:not(.admin-area) .checkout-company-grid{grid-template-columns:1fr;}
  body:not(.admin-area) .checkout-company-result{align-items:flex-start;flex-direction:column;gap:3px;}
  body:not(.admin-area) .checkout-input-grid{grid-template-columns:1fr;}
  body:not(.admin-area) .checkout-field,
  body:not(.admin-area) .checkout-field:first-child,
  body:not(.admin-area) .checkout-field:nth-child(2){grid-column:1;}
  body:not(.admin-area) .checkout-order-head{display:none;}
  body:not(.admin-area) .checkout-order-row{grid-template-columns:1fr;gap:10px;}
  body:not(.admin-area) .checkout-order-product{grid-template-columns:96px minmax(0,1fr);gap:12px;}
  body:not(.admin-area) .checkout-order-image{width:96px;height:78px;min-width:96px;}
  body:not(.admin-area) .checkout-order-qty,
  body:not(.admin-area) .checkout-order-price{text-align:left;}
  body:not(.admin-area) .checkout-support-meta{display:grid;gap:6px;}
  body:not(.admin-area) .checkout-support-meta div{white-space:normal;}
}

/* No365: Stripe prisinformasjon i checkout. */
body:not(.admin-area) .checkout-fee-guide{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border,var(--line));border-radius:10px;background:var(--surface-2,rgba(255,255,255,.03));}
body.theme-light:not(.admin-area) .checkout-fee-guide{background:rgba(15,23,42,.025);}
body:not(.admin-area) .checkout-fee-guide-head{display:grid;gap:4px;}
body:not(.admin-area) .checkout-fee-guide-head>span,body:not(.admin-area) .checkout-fee-guide-foot{color:var(--muted);font-size:.8rem;line-height:1.4;}
body:not(.admin-area) .checkout-fee-guide-list{display:grid;gap:0;border-top:1px solid var(--border,var(--line));}
body:not(.admin-area) .checkout-fee-guide-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.72fr);gap:16px;padding:10px 0;border-bottom:1px solid var(--border,var(--line));align-items:start;}
body:not(.admin-area) .checkout-fee-guide-row>div{display:grid;gap:3px;min-width:0;}
body:not(.admin-area) .checkout-fee-guide-row>div:last-child{text-align:right;}
body:not(.admin-area) .checkout-fee-guide-row span{color:var(--muted);font-size:.76rem;line-height:1.35;word-break:normal;overflow-wrap:normal;hyphens:none;}
body:not(.admin-area) .checkout-fee-guide-row.selected{margin-inline:-8px;padding-inline:8px;border-radius:9px;background:color-mix(in srgb,var(--primary) 10%, transparent);box-shadow:inset 3px 0 0 var(--primary);}
body.theme-light:not(.admin-area) .checkout-fee-guide-row.selected{background:color-mix(in srgb,var(--primary) 8%, transparent);}
@media (max-width:700px){body:not(.admin-area) .checkout-fee-guide-row{grid-template-columns:1fr;gap:6px;}body:not(.admin-area) .checkout-fee-guide-row>div:last-child{text-align:left;}}


/* Globale innstillinger – valgbare Stripe-betalingsmåter */
.admin-area .settings-payment-method-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:6px;
  margin:0;
}
.admin-area .settings-payment-method-choice{
  border:1px solid var(--line);
  border-radius:9px;
  padding:8px 9px;
  background:rgba(255,255,255,.02);
}
.admin-area .settings-payment-method-choice > span{
  display:grid;
  gap:4px;
}
.admin-area .settings-payment-method-choice small{
  color:var(--muted);
  line-height:1.35;
}

/* No387: varelinjeutlevering og sikker ordre-refusjon i Bestillinger. */
.order-item-action-form{display:grid;gap:8px;min-width:250px;max-width:360px;}
.order-item-delivered-check{margin:0;}
.order-item-action-select{width:100%;min-width:0;}
.order-item-action-button{width:100%;justify-content:center;}
.order-item-status-meta{display:block;color:var(--muted);margin-top:5px;line-height:1.35;}
.order-cancel-refund-form{display:grid;gap:9px;}
.order-cancel-confirm{margin:0;align-items:flex-start;}
.order-cancel-refund-button{width:100%;justify-content:center;}
.order-managed-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:42px;padding:7px 9px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);}
@media(max-width:900px){.order-item-action-form{min-width:0;max-width:none;}}

/* Pakkedata / fraktgrunnlag */
.admin-area dialog.admin-products-dialog.shipping-package-dialog,
.admin-area dialog.admin-products-dialog.shipping-message-library-dialog{border:none;padding:0;background:transparent;width:min(920px,calc(100vw - 24px));max-width:min(920px,calc(100vw - 24px))}
.admin-area dialog.admin-products-dialog.shipping-message-library-dialog{width:min(780px,calc(100vw - 24px));max-width:min(780px,calc(100vw - 24px))}
.admin-area dialog.admin-products-dialog.shipping-package-dialog::backdrop,
.admin-area dialog.admin-products-dialog.shipping-message-library-dialog::backdrop{background:rgba(0,0,0,.62)}
.shipping-package-dialog-card,.shipping-message-library-card{background:var(--admin-card-bg,var(--panel));border:1px solid var(--admin-card-border,var(--border));border-radius:16px;box-shadow:var(--shadow);padding:16px;display:grid;gap:12px;min-width:0;max-height:min(90vh,980px);overflow:auto;overflow-x:hidden;width:100%}
.shipping-package-dialog-card>* ,.shipping-message-library-card>*{min-width:0}
.shipping-package-dialog-card .admin-products-dialog-head,.shipping-message-library-card .admin-products-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.shipping-package-dialog-card .admin-products-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.shipping-package-dialog-card{width:min(920px,calc(100vw - 32px));max-width:920px}
.admin-area dialog.shipping-package-dialog.is-package-required-missing .shipping-package-dialog-card{border:2px solid var(--bad);box-shadow:0 0 0 3px color-mix(in srgb,var(--bad) 22%,transparent),var(--shadow)}
.shipping-package-form{display:grid;gap:16px}
.shipping-package-editor{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:20px;align-items:start}
.shipping-package-visual-wrap{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:12px;min-width:0}
.shipping-package-visual{display:block;width:100%;height:auto;min-height:230px;overflow:visible}
.shipping-box-face{stroke:var(--border);stroke-width:2;vector-effect:non-scaling-stroke}
.shipping-box-front{fill:color-mix(in srgb,var(--primary) 18%,var(--card))}
.shipping-box-top{fill:color-mix(in srgb,var(--primary) 28%,var(--card))}
.shipping-box-side{fill:color-mix(in srgb,var(--primary) 12%,var(--card))}
.shipping-box-measure{stroke:var(--muted);stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.shipping-box-label{fill:var(--text);font:600 12px system-ui,sans-serif}
.shipping-package-visual-help{color:var(--muted);text-align:center;margin-top:2px}
.shipping-package-fields{display:grid;gap:12px;min-width:0}
.shipping-package-dimension-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.shipping-package-option{align-items:flex-start;margin:0;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.shipping-package-option input{margin-top:2px;flex:0 0 auto}
.shipping-package-message-field{display:grid;gap:7px}
.shipping-package-context-card{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.shipping-package-option.is-shipping-active-standard{border-color:color-mix(in srgb,var(--primary) 70%,var(--border));background:color-mix(in srgb,var(--primary) 12%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 24%,transparent)}
.shipping-package-option.is-shipping-active-risk,.shipping-package-context-card.is-shipping-active-risk{border-color:color-mix(in srgb,var(--warn) 72%,var(--border));background:color-mix(in srgb,var(--warn) 12%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warn) 24%,transparent)}
.shipping-package-option.is-shipping-active-pickup,.shipping-package-context-card.is-shipping-active-pickup{border-color:color-mix(in srgb,var(--good) 70%,var(--border));background:color-mix(in srgb,var(--good) 10%,var(--card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--good) 22%,transparent)}
.shipping-package-message-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.shipping-package-message-head .btn{padding:6px 9px;font-size:.78rem;white-space:nowrap}
.shipping-package-message-field textarea{min-height:94px;resize:vertical}
.shipping-message-library-card{width:min(780px,calc(100vw - 32px));max-width:780px}
.shipping-message-library-list{display:grid;gap:10px;max-height:min(62vh,620px);overflow:auto;padding-right:4px;margin-top:12px}
.shipping-message-library-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:start;border:1px solid var(--border);border-radius:12px;background:var(--card);padding:10px 12px}
.shipping-message-library-item>strong{grid-column:1/2}
.shipping-message-library-item>div{grid-column:1/2;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);font-size:.86rem}
.shipping-message-library-item>.btn{grid-column:2/3;grid-row:1/3;align-self:center;padding:6px 9px;font-size:.8rem}
.shipping-message-library-empty{padding:14px;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}
.inventory-shipping-package-cell{vertical-align:top}
.inventory-package-summary{display:grid;gap:1px;font-size:.72rem;line-height:1.25;white-space:nowrap}
.inventory-package-summary .is-missing{color:var(--bad);font-weight:700}
.inventory-package-btn{margin-top:5px;padding:5px 8px;font-size:.72rem;min-height:0}
.inventory-completion-required-missing.inventory-shipping-package-cell{box-shadow:inset 0 0 0 2px var(--bad);background:color-mix(in srgb,var(--bad) 8%,var(--card))}
.admin-area .inventory-package-btn.inventory-package-btn-missing{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 18%,var(--card));color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--bad) 35%,transparent)}
.pdp-shipping-message{margin:8px 0 0;padding:8px 10px;border:1px solid color-mix(in srgb,var(--warn) 52%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--warn) 10%,var(--card));color:var(--text);font-size:.86rem;line-height:1.35}
.product-shipping-note{margin:6px 0 0;display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:.78rem;line-height:1.3}
.product-shipping-note-title{font-weight:700;color:var(--text);white-space:nowrap}
.product-shipping-note ul{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px 12px;list-style:none}
.product-shipping-note li{margin:0;white-space:nowrap}
.product-shipping-note li::before{content:'•';margin-right:5px;color:var(--muted)}
@media(max-width:760px){
  .shipping-package-editor{grid-template-columns:1fr}
  .shipping-package-dimension-grid{grid-template-columns:1fr 1fr}
  .shipping-message-library-item{grid-template-columns:1fr}
  .shipping-message-library-item>.btn{grid-column:1;grid-row:auto;justify-self:start}
}
@media(max-width:460px){.shipping-package-dimension-grid{grid-template-columns:1fr}}

/* Admin-forhåndsvisning av 3D-pakkemotor i checkout. Kun synlig når adminsession er aktiv. */
.checkout-package-plan{margin-top:14px;border:1px solid var(--border);border-radius:14px;background:var(--card);overflow:hidden}
.checkout-package-plan>summary{cursor:pointer;padding:10px 12px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px}
.checkout-package-plan>summary span{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:2px 6px}
.checkout-package-plan-grid{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(210px,1.1fr);gap:12px;padding:0 12px 12px}
.checkout-package-plan-visual{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--panel);padding:6px}
.package-plan-svg{display:block;width:100%;height:auto;max-height:250px}
.package-plan-face{stroke:color-mix(in srgb,var(--text) 28%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}
.package-plan-face-front{fill:color-mix(in srgb,var(--primary) 18%,var(--card))}
.package-plan-face-top{fill:color-mix(in srgb,var(--primary) 28%,var(--card))}
.package-plan-face-side{fill:color-mix(in srgb,var(--primary) 12%,var(--card))}
.package-plan-item-2 .package-plan-face{filter:brightness(.93)}
.package-plan-item-3 .package-plan-face{filter:brightness(1.07)}
.package-plan-item-4 .package-plan-face{opacity:.82}
.package-plan-item-5 .package-plan-face{opacity:.68}
.package-plan-outer line{stroke:var(--text);stroke-width:2;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;opacity:.8}
.checkout-package-plan-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}
.checkout-package-plan-facts>div{display:grid;gap:2px;border:1px solid var(--border);border-radius:10px;background:var(--panel);padding:8px 10px;min-width:0}
.checkout-package-plan-facts span{font-size:.75rem;color:var(--muted)}
.checkout-package-plan-facts strong{font-size:.9rem;color:var(--text);font-variant-numeric:tabular-nums}
.checkout-package-plan-meta,.checkout-package-plan-note{margin:0 12px 12px;padding:8px 10px;border-radius:10px;background:var(--panel);color:var(--muted);font-size:.78rem;line-height:1.4}
.checkout-package-plan-note.bad{border:1px solid color-mix(in srgb,var(--bad) 55%,var(--border));color:var(--text)}
@media(max-width:700px){.checkout-package-plan-grid{grid-template-columns:1fr}.checkout-package-plan-facts{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.checkout-package-plan-facts{grid-template-columns:1fr}}

/* 2026-09-01: Emballasje/pappesker under Globale innstillinger -> Butikkdrift. */
.admin-area .settings-packaging-table{
  width:100%;
  min-width:760px;
}
.admin-area .settings-packaging-table th,
.admin-area .settings-packaging-table td{
  padding:8px 10px;
  vertical-align:middle;
}
.admin-area .settings-packaging-table th{
  white-space:nowrap;
  text-align:left;
}
.admin-area .settings-packaging-table input[type="text"],
.admin-area .settings-packaging-table input[type="number"]{
  width:100%;
  min-width:120px;
}
.admin-area .settings-packaging-delete{
  width:92px;
  white-space:nowrap;
}
.admin-area .settings-table-scroll{overflow-x:auto;max-width:100%;}
.admin-area .settings-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;}
@media(max-width:700px){.admin-area .settings-grid.two{grid-template-columns:1fr;}}

.checkout-shipping-fetch-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.checkout-shipping-options{display:grid;gap:10px;margin-top:14px}
.checkout-shipping-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--card);cursor:pointer}
.checkout-shipping-option-rate{grid-template-columns:auto auto minmax(0,1fr) auto}
.checkout-shipping-option:hover,.checkout-shipping-option.selected{border-color:var(--primary)}
.checkout-shipping-option input{margin:0}
.checkout-shipping-option-text{display:grid;gap:3px;min-width:0}
.checkout-shipping-option-text span{font-size:.86rem;color:var(--muted)}
.checkout-shipping-option-text-rate{display:grid;gap:2px;min-width:0;overflow:hidden}.checkout-shipping-option-text-rate strong,.checkout-shipping-option-text-rate span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.checkout-shipping-brand{display:flex;align-items:center;gap:7px;min-width:0;white-space:nowrap}
.checkout-shipping-logo{display:block;width:auto;max-width:100%;object-fit:contain}
.checkout-shipping-logo-posten{height:22px}
.checkout-shipping-logo-bring{height:22px}
.checkout-shipping-logo-postnord{height:20px;max-width:92px}
.checkout-shipping-option-price{white-space:nowrap;text-align:right}
@media(max-width:680px){
  .checkout-shipping-option{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;padding:11px 10px}
  .checkout-shipping-option-rate{grid-template-columns:auto auto minmax(0,1fr) auto}
  .checkout-shipping-option-rate .checkout-shipping-option-price{grid-column:auto;text-align:right}
  .checkout-shipping-brand{gap:5px}
  .checkout-shipping-logo-posten,.checkout-shipping-logo-bring{height:17px}
  .checkout-shipping-logo-postnord{height:16px;max-width:72px}
  .checkout-shipping-option-text-rate{font-size:.92rem}
  .checkout-shipping-option-price{font-size:.92rem}
}

.admin-area .settings-subchapter--full{grid-column:1/-1;}
.admin-area .settings-note-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  min-width:0;
}
.admin-area .settings-note{
  min-width:0;
  padding:10px 11px;
  border:1px solid var(--admin-card-border);
  border-radius:10px;
  background:color-mix(in srgb,var(--admin-card-bg) 78%,transparent);
}
.admin-area [data-tripletex-vat-map]{
  display:grid;
  gap:10px;
  min-width:0;
}
.admin-area [data-tripletex-vat-rows]{
  display:grid;
  gap:8px;
  min-width:0;
}
.admin-area [data-tripletex-vat-row]{
  display:grid;
  grid-template-columns:minmax(8rem,10rem) minmax(11rem,14rem) max-content;
  gap:10px 14px;
  justify-content:start;
  align-items:end;
  width:min(100%,40rem);
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--admin-card-border);
  border-radius:10px;
  background:color-mix(in srgb,var(--admin-card-bg) 78%,transparent);
}
.admin-area [data-tripletex-vat-row] .settings-actions{
  align-self:end;
  padding-bottom:1px;
}
@media(max-width:980px){
  .admin-area .settings-note-grid{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .admin-area [data-tripletex-vat-row]{grid-template-columns:1fr;}
  .admin-area [data-tripletex-vat-row] .settings-actions{justify-self:start;}
}
.admin-area .settings-service-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  min-width:0;
}
.admin-area .settings-service-card{
  display:grid;
  gap:7px;
  min-width:0;
  padding:9px;
  border:1px solid var(--admin-card-border);
  border-radius:10px;
  background:color-mix(in srgb,var(--admin-card-bg) 76%,transparent);
}
.admin-area .settings-service-head{
  display:flex;
  gap:8px;
  align-items:flex-start;
  justify-content:space-between;
  min-width:0;
  padding-bottom:6px;
  border-bottom:1px solid var(--admin-card-border);
}
.admin-area .settings-service-title{
  display:flex;
  flex-wrap:wrap;
  gap:5px 8px;
  align-items:center;
  min-width:0;
}
.admin-area .settings-service-title strong{font-size:.84rem;}
.admin-area .settings-service-foot{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;
  align-items:center;
  padding-top:2px;
}
body.theme-light .admin-area .carrier-logo-row{
  display:inline-flex;
  gap:4px;
  align-items:center;
  flex-wrap:wrap;
}
.admin-area .carrier-logo-row img{
  display:block;
  max-width:72px;
  max-height:22px;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:4px;
}
.admin-area .settings-shipments-overview{margin-top:10px;}
.admin-area .settings-shipments-table{width:100%;overflow:auto;}
.admin-area .settings-shipments-table table{min-width:920px;}
.admin-area .settings-shipments-table td{vertical-align:top;}
.admin-area .settings-inline-form--tight{margin-top:6px;}
.admin-area .settings-card .smallbtn,
.admin-area .settings-shipments-overview .smallbtn{min-height:30px;padding:5px 8px;font-size:.74rem;}
@media(max-width:1180px){
  .admin-area .settings-service-grid{grid-template-columns:1fr;}
}
@media(max-width:760px){
  }
@media(max-width:480px){
    }
.checkout-shipping-option-wrap{display:grid;gap:7px}
.checkout-shipping-location-panel{margin-left:34px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}
.checkout-shipping-location-label{display:grid;gap:6px}
.checkout-shipping-location-label>span{font-size:.84rem;color:var(--muted);font-weight:700}
.checkout-shipping-location-select{width:100%;min-width:0}
@media(max-width:720px){.checkout-shipping-location-panel{margin-left:0}}

.checkout-shipping-service-notice{display:block;margin-top:3px;font-size:.78em;line-height:1.25;opacity:.78;font-weight:400;}

/* Checkout No438: stegvis accordion-flyt */
body:not(.admin-area) .checkout-accordion-edit{
  color:var(--primary);
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap;
}
body:not(.admin-area) .checkout-accordion-edit[hidden]{display:none;}
body:not(.admin-area) .checkout-accordion-section.is-locked{
  opacity:.58;
}
body:not(.admin-area) .checkout-accordion-section.is-locked .checkout-accordion-toggle{
  cursor:not-allowed;
  background:color-mix(in srgb,var(--card) 92%, var(--muted) 8%);
}
body:not(.admin-area) .checkout-accordion-section.is-complete:not(.is-open) .checkout-accordion-step{
  border-color:color-mix(in srgb,var(--primary) 55%, var(--border,var(--line)));
  color:var(--primary);
}
body:not(.admin-area) .checkout-step-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--border,var(--line));
}
body:not(.admin-area) .checkout-step-next{
  min-width:min(100%,220px);
  justify-content:center;
}
body:not(.admin-area) .checkout-shipping-status-row{
  justify-content:flex-start;
}
@media (max-width:720px){
  body:not(.admin-area) .checkout-step-actions{justify-content:stretch;}
  body:not(.admin-area) .checkout-step-next{width:100%;min-width:0;}
}

/* No439: kompakt kundebestilling med sammenfoldet retur/reklamasjon */
body:not(.admin-area) .customer-orders-page{width:min(1180px,100%);margin-inline:auto;}
body:not(.admin-area) .customer-orders-table-wrap,
body:not(.admin-area) .customer-waitlist-table-wrap{width:100%;max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:12px;}
body:not(.admin-area) .customer-orders-table{min-width:720px;margin:0;}
body:not(.admin-area) .customer-waitlist-table{min-width:0;margin:0;table-layout:fixed;}
body:not(.admin-area) .customer-orders-table th:first-child,
body:not(.admin-area) .customer-orders-table td:first-child{padding-left:14px;}
body:not(.admin-area) .customer-orders-table th:last-child,
body:not(.admin-area) .customer-orders-table td:last-child{padding-right:14px;}
body:not(.admin-area) .customer-orders-table tbody tr:last-child td{border-bottom:0;}
body:not(.admin-area) .customer-orders-number-cell{min-width:170px;}
body:not(.admin-area) .customer-orders-number-link{display:block;width:max-content;max-width:100%;font-size:15px;font-weight:800;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;}
body:not(.admin-area) .customer-orders-type-badge{display:table;margin-top:6px;}
body:not(.admin-area) .customer-orders-status-cell{min-width:190px;}
body:not(.admin-area) .customer-orders-payment-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;color:var(--muted);}
body:not(.admin-area) .customer-orders-shipping-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;}
body:not(.admin-area) .customer-orders-open-col,
body:not(.admin-area) .customer-orders-open-cell{text-align:right;}
body:not(.admin-area) .customer-orders-open-button{white-space:nowrap;justify-content:center;min-width:142px;}
body:not(.admin-area) .customer-order-case-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px;}
body:not(.admin-area) .customer-order-case-button{width:auto;min-height:34px;padding:6px 11px;justify-content:center;}
body:not(.admin-area) .customer-order-case-button.is-open{border-color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 22%,transparent);}
body:not(.admin-area) .customer-order-case-panel[hidden]{display:none!important;}
body:not(.admin-area) .customer-order-case-panel{scroll-margin-top:18px;}
body:not(.admin-area) .payment-return-card{width:min(820px,100%);max-width:none;margin-inline:auto;overflow:hidden;}
body:not(.admin-area) .payment-return-confirmation{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card);}
body:not(.admin-area) .payment-return-confirmation-head{padding:22px 24px;background:var(--panel);border-bottom:1px solid var(--line);}
body:not(.admin-area) .payment-return-eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;}
body:not(.admin-area) .payment-return-confirmation-head h3{margin:5px 0 10px;font-size:24px;line-height:1.15;}
body:not(.admin-area) .payment-return-confirmation-body{padding:22px 24px;}
body:not(.admin-area) .payment-return-order-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line);}
body:not(.admin-area) .payment-return-order-meta>div:last-child{text-align:right;}
body:not(.admin-area) .payment-return-order-meta span{display:block;font-size:12px;color:var(--muted);margin-bottom:4px;}
body:not(.admin-area) .payment-return-order-meta strong{display:block;font-size:16px;overflow-wrap:anywhere;}
body:not(.admin-area) .payment-return-status-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:14px 0 2px;}
body:not(.admin-area) .payment-return-payment-method{font-size:13px;color:var(--muted);}
body:not(.admin-area) .payment-return-section{margin-top:22px;}
body:not(.admin-area) .payment-return-section h4{margin:0 0 8px;font-size:16px;}
body:not(.admin-area) .payment-return-items{border-top:1px solid var(--line);}
body:not(.admin-area) .payment-return-item{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line);}
body:not(.admin-area) .payment-return-item-image{width:88px;min-height:70px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.03);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--muted);font-size:11px;text-align:center;}
body:not(.admin-area) .payment-return-item-image img{display:block;width:88px;height:70px;object-fit:cover;}
body:not(.admin-area) .payment-return-item-main>strong{display:block;font-size:15px;line-height:1.35;}
body:not(.admin-area) .payment-return-item-details{margin-top:4px;font-size:12px;line-height:1.45;color:var(--muted);overflow-wrap:anywhere;}
body:not(.admin-area) .payment-return-item-qty{margin-top:8px;font-size:13px;color:var(--muted);}
body:not(.admin-area) .payment-return-item-total{font-size:14px;font-weight:800;white-space:nowrap;text-align:right;}
body:not(.admin-area) .payment-return-totals{width:min(390px,100%);margin:18px 0 0 auto;display:grid;gap:8px;}
body:not(.admin-area) .payment-return-totals>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:13px;}
body:not(.admin-area) .payment-return-totals>div strong{white-space:nowrap;}
body:not(.admin-area) .payment-return-total-final{padding-top:10px;border-top:1px solid var(--line);font-size:15px!important;font-weight:800;}
body:not(.admin-area) .payment-return-total-final strong{font-size:16px;}
body:not(.admin-area) .payment-return-totals>.payment-return-vat{display:block;text-align:right;font-size:11px;color:var(--muted);}
body:not(.admin-area) .payment-return-details-section{padding-top:18px;border-top:1px solid var(--line);}
body:not(.admin-area) .payment-return-details{display:grid;gap:8px;margin:0;}
body:not(.admin-area) .payment-return-details>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;align-items:start;}
body:not(.admin-area) .payment-return-details dt{font-size:12px;color:var(--muted);}
body:not(.admin-area) .payment-return-details dd{margin:0;font-size:13px;overflow-wrap:anywhere;}
body:not(.admin-area) .payment-return-reference{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);}
body:not(.admin-area) .payment-return-reference code{color:var(--text);overflow-wrap:anywhere;white-space:normal;}
body:not(.admin-area) .payment-return-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
@media(min-width:700px) and (max-width:1024px){
  body:not(.admin-area) .customer-orders-table{min-width:0;table-layout:fixed;}
  body:not(.admin-area) .customer-orders-table th,
  body:not(.admin-area) .customer-orders-table td{padding:7px 6px;font-size:12px;overflow-wrap:anywhere;word-break:normal;}
  body:not(.admin-area) .customer-orders-table th{font-size:10.5px;letter-spacing:.035em;}
  body:not(.admin-area) .customer-orders-table th:first-child,
  body:not(.admin-area) .customer-orders-table td:first-child{padding-left:8px;width:21%;}
  body:not(.admin-area) .customer-orders-table th:nth-child(2),
  body:not(.admin-area) .customer-orders-table td:nth-child(2){width:19%;}
  body:not(.admin-area) .customer-orders-table th:nth-child(3),
  body:not(.admin-area) .customer-orders-table td:nth-child(3){width:18%;}
  body:not(.admin-area) .customer-orders-table th:nth-child(4),
  body:not(.admin-area) .customer-orders-table td:nth-child(4){width:23%;}
  body:not(.admin-area) .customer-orders-table th:last-child,
  body:not(.admin-area) .customer-orders-table td:last-child{padding-right:8px;width:19%;}
  body:not(.admin-area) .customer-orders-number-cell,
  body:not(.admin-area) .customer-orders-status-cell{min-width:0;}
  body:not(.admin-area) .customer-orders-number-link{width:auto;font-size:13px;}
  body:not(.admin-area) .customer-orders-open-button{width:100%;min-width:0;padding:7px 6px;white-space:normal;font-size:12px;line-height:1.2;}
  body:not(.admin-area) .customer-orders-table .badge{padding:4px 6px;font-size:10.5px;}
  body:not(.admin-area) .customer-orders-table .customer-vat-note{white-space:normal;font-size:10px;}
  body:not(.admin-area) .customer-waitlist-table th,
  body:not(.admin-area) .customer-waitlist-table td{padding:7px 6px;overflow-wrap:anywhere;}
}
@media(max-width:760px){
  body:not(.admin-area) .customer-orders-page{width:100%;}
  body:not(.admin-area) .payment-return-confirmation-head,
  body:not(.admin-area) .payment-return-confirmation-body{padding:18px;}
}
@media(max-width:560px){
  body:not(.admin-area) .payment-return-order-meta{grid-template-columns:1fr;gap:10px;}
  body:not(.admin-area) .payment-return-order-meta>div:last-child{text-align:left;}
  body:not(.admin-area) .payment-return-item{grid-template-columns:72px minmax(0,1fr);gap:12px;}
  body:not(.admin-area) .payment-return-item-image{width:72px;min-height:58px;}
  body:not(.admin-area) .payment-return-item-image img{width:72px;height:58px;}
  body:not(.admin-area) .payment-return-item-total{grid-column:2;text-align:left;margin-top:-4px;}
  body:not(.admin-area) .payment-return-details>div,
  body:not(.admin-area) .payment-return-reference{grid-template-columns:1fr;gap:2px;}
}

/* No454: Min side -> Innstillinger bruker kompakte, like brede kort. */
body:not(.admin-area) .customer-settings-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,520px));
  justify-content:center;
  align-items:start;
  gap:14px;
  margin-top:14px;
}
body:not(.admin-area) .customer-settings-card{
  width:100%;
  max-width:520px;
  margin-inline:auto;
}
body:not(.admin-area) .customer-settings-delete-card{margin-top:14px;}
@media(max-width:900px){
  body:not(.admin-area) .customer-settings-grid{grid-template-columns:minmax(0,520px);}
}


/* 2026-09-06: Kundeordre – reklamasjon som saksdialog inne i ordren */
body:not(.admin-area) .customer-complaint-case-list{display:grid;gap:8px;margin-top:10px;}
body:not(.admin-area) .customer-complaint-case-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,transparent);}
body:not(.admin-area) .customer-complaint-case-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
body:not(.admin-area) dialog.customer-complaint-dialog{width:min(1040px,calc(100vw - 24px));max-width:min(1040px,calc(100vw - 24px));max-height:calc(100vh - 24px);margin:auto;padding:0;border:none;background:transparent;color:var(--text);overflow:visible;}
body:not(.admin-area) dialog.customer-complaint-dialog:not([open]){display:none;}
body:not(.admin-area) dialog.customer-complaint-dialog::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(2px);}
body:not(.admin-area) .customer-complaint-dialog-card{display:grid;gap:14px;width:100%;max-height:calc(100vh - 24px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 24px 80px rgba(0,0,0,.55);}
body:not(.admin-area) .customer-complaint-dialog-head{position:sticky;top:-16px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:-16px -16px 0;padding:16px;border-bottom:1px solid var(--line);background:var(--panel);border-radius:18px 18px 0 0;}
body:not(.admin-area) .customer-complaint-dialog-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
body:not(.admin-area) .customer-complaint-dialog-title-row h3{margin:0;}
body:not(.admin-area) .customer-complaint-dialog-close{position:static;flex:0 0 auto;}
body:not(.admin-area) .customer-complaint-dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
body:not(.admin-area) .customer-complaint-dialog-section{display:grid;align-content:start;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 95%,var(--text) 5%);min-width:0;}
body:not(.admin-area) .customer-complaint-dialog-section h4,body:not(.admin-area) .customer-complaint-chat h4{margin:0;}
body:not(.admin-area) .customer-complaint-dialog-section ul{margin:5px 0 0 20px;padding:0;}
body:not(.admin-area) .customer-complaint-longtext{margin-top:4px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;}
body:not(.admin-area) .customer-complaint-tracking-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:14px;}
body:not(.admin-area) .customer-complaint-tracking-form>.small{grid-column:1/-1;}
body:not(.admin-area) .customer-complaint-chat{display:grid;gap:10px;padding-top:2px;}
body:not(.admin-area) .customer-complaint-period-note{margin-top:8px;line-height:1.45;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);}
body.theme-light:not(.admin-area) .customer-complaint-period-note{background:#f8f7f4;border-color:#d7d4ce;}
body:not(.admin-area) .customer-complaint-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
body:not(.admin-area) .customer-complaint-chat-stream{min-height:220px;max-height:420px;}
body:not(.admin-area) .customer-complaint-compose{padding-top:0;}
@media (max-width:760px){
  body:not(.admin-area) .customer-complaint-case-row{align-items:flex-start;flex-direction:column;}
  body:not(.admin-area) .customer-complaint-dialog-grid{grid-template-columns:1fr;}
  body:not(.admin-area) .customer-complaint-tracking-form{grid-template-columns:1fr;align-items:stretch;}
  body:not(.admin-area) .customer-complaint-tracking-form>.small{grid-column:auto;}
  body:not(.admin-area) dialog.customer-complaint-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);max-height:calc(100vh - 12px);}
  body:not(.admin-area) .customer-complaint-dialog-card{max-height:calc(100vh - 12px);padding:12px;border-radius:14px;}
  body:not(.admin-area) .customer-complaint-dialog-head{top:-12px;margin:-12px -12px 0;padding:12px;border-radius:14px 14px 0 0;}
}


/* Kundeordre – frakterklæring vises kompakt som popup i stedet for å fylle ordrevisningen. */
body:not(.admin-area) .customer-shipping-declaration-buttons{display:flex;gap:8px;flex-wrap:wrap;}
body:not(.admin-area) dialog.customer-shipping-declaration-dialog{width:min(720px,calc(100vw - 24px));max-width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 24px);margin:auto;padding:0;border:none;background:transparent;color:var(--text);overflow:visible;}
body:not(.admin-area) dialog.customer-shipping-declaration-dialog:not([open]){display:none;}
body:not(.admin-area) dialog.customer-shipping-declaration-dialog::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(2px);}
body:not(.admin-area) .customer-shipping-declaration-dialog-card{display:grid;gap:14px;width:100%;max-height:calc(100vh - 24px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 24px 80px rgba(0,0,0,.55);}
body:not(.admin-area) .customer-shipping-declaration-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);}
body:not(.admin-area) .customer-shipping-declaration-dialog-head h3{margin:0 0 4px;}
body:not(.admin-area) .customer-shipping-declaration-body{padding:12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 95%,var(--text) 5%);line-height:1.55;overflow-wrap:anywhere;}
@media(max-width:760px){
  body:not(.admin-area) dialog.customer-shipping-declaration-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);max-height:calc(100vh - 12px);}
  body:not(.admin-area) .customer-shipping-declaration-dialog-card{max-height:calc(100vh - 12px);padding:12px;border-radius:14px;}
}

/* Admin: passordfelt med samme faste vis/skjul-kontroll som kundeinnloggingen. */
.admin-area .admin-users-actions > .password-input-wrap{
  flex:1 1 190px;
}
.admin-area .admin-users-delete-form{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.admin-area .admin-users-delete-form .admin-password-delete{
  flex:1 1 220px;
  max-width:320px;
}
.admin-area .settings-inline-form .admin-password-compact{
  flex:0 1 180px;
  width:180px;
}

/* No450: Reservasjonskassen bruker kjøpskassens kortlayout, men trinnhodene er statiske. */
body:not(.admin-area) .reservation-checkout-heading{
  grid-template-columns:32px minmax(0,1fr);
  cursor:default;
}
body:not(.admin-area) .reservation-checkout-heading:hover{background:transparent;}


/* Produktinfo: unntak fra angrerett */
.product-legal-points{margin:10px 0 0;padding-left:18px;color:var(--muted);font-size:.9rem}
.product-legal-points li{margin:0;padding:0}
.product-legal-point-button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:0;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;cursor:pointer}
.product-legal-point-button:hover,.product-legal-point-button:focus-visible{color:var(--text)}
.product-info-dialog{width:min(92vw,560px);border:1px solid var(--line);border-radius:14px;padding:0;background:var(--card);color:var(--text);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.product-info-dialog::backdrop{background:rgba(0,0,0,.55)}
.product-info-dialog-card{padding:20px;line-height:1.55}
.product-info-dialog-card p{margin:12px 0 0}
.product-info-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.product-info-dialog-head h2{font-size:1.15rem;margin:0}
.product-info-dialog-close{border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--text);width:36px;height:36px;font-size:1.4rem;line-height:1;cursor:pointer}


/* 2026-09-15: Tydelig to-nivå navigasjon i Innstillinger og Lagerkorreksjon. */
.admin-area .settings-main-tabs{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  padding-bottom:9px;
  border-bottom:1px solid var(--line);
}
.admin-area .settings-main-tabs .tab{
  box-sizing:border-box;
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  width:auto;
  height:auto;
  min-height:34px;
  max-height:none;
  font-weight:700;
  line-height:1.2;
  white-space:normal;
  text-align:center;
  overflow-wrap:anywhere;
  word-break:break-word;
  text-wrap:wrap;
}
.admin-area .settings-active-group{
  display:grid;
  gap:7px;
  padding-top:9px;
}
.admin-area .settings-active-group .settings-tab-group-head{
  display:grid;
  gap:2px;
}
.admin-area .settings-active-group .settings-tab-group-head span{
  color:var(--muted);
  font-size:11.5px;
}
.admin-area .tabs.subtabs .tab{
  box-sizing:border-box;
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  width:auto;
  height:auto;
  min-height:34px;
  max-height:none;
  padding:7px 10px;
  font-size:12px;
  line-height:1.2;
  white-space:normal;
  text-align:center;
  overflow-wrap:anywhere;
  word-break:break-word;
  text-wrap:wrap;
}
.admin-area .inventory-correction-mode-nav{
  display:grid;
  gap:7px;
  margin-bottom:12px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.035);
}
body.theme-light.admin-area .inventory-correction-mode-nav{
  background:rgba(255,255,255,.72);
  border-color:rgba(15,23,42,.12);
}
.admin-area .inventory-correction-mode-nav .tabs.subtabs{
  opacity:1;
}

/* 2026-09-15 No504: Globale innstillinger bruker hele arbeidsbredden, men feltbredden følger forventet datatype. */
.admin-area .settings-card,
.admin-area .settings-tabs-card,
.admin-area .admin-users-card{
  width:100%;
  max-width:none;
}
.admin-area .settings-card .card-inner,
.admin-area .admin-users-card .card-inner{
  width:100%;
  max-width:none;
}
.admin-area .settings-chapter{
  border-color:color-mix(in srgb,var(--admin-card-border) 72%,var(--text) 28%);
}
.admin-area .settings-chapter-head{
  padding:0 0 8px;
}
.admin-area .settings-chapter-head h4{
  font-size:1rem;
  font-weight:800;
}
.admin-area .settings-subchapter-head h5{
  font-weight:800;
}
.admin-area .settings-card input[type="text"],
.admin-area .settings-card input[type="email"],
.admin-area .settings-card input[type="password"],
.admin-area .settings-card input[type="url"],
.admin-area .settings-card input[type="tel"],
.admin-area .admin-users-card input[type="text"],
.admin-area .admin-users-card input[type="email"],
.admin-area .admin-users-card input[type="password"]{
  width:min(100%,34rem);
}
.admin-area .settings-card input[type="email"],
.admin-area .admin-users-card input[type="email"]{width:min(100%,30rem);}
.admin-area .settings-card input[type="url"]{width:min(100%,46rem);}
.admin-area .settings-card input[type="password"]{width:min(100%,42rem);}
.admin-area .settings-card input[type="number"]{
  width:9rem;
  max-width:100%;
  font-variant-numeric:tabular-nums;
}
.admin-area .settings-card input[type="date"]{width:11rem;max-width:100%;}
.admin-area .settings-card input[type="datetime-local"]{width:15rem;max-width:100%;}
.admin-area .settings-card select{
  width:min(100%,22rem);
}
.admin-area .settings-card textarea{
  width:min(100%,52rem);
  max-width:100%;
}
/* Korte koder, porter, prefiks og små ID-/antallsfelt. */
.admin-area .settings-card input[name="reservation_hours"],
.admin-area .settings-card input[name="bank_transfer_due_days"],
.admin-area .settings-card input[name="order_prefix"],
.admin-area .settings-card input[name="imap_port"],
.admin-area .settings-card input[name="waitlist_batch_limit"],
.admin-area .settings-card input[name="tripletex_department_number"],
.admin-area .settings-card input[name="tripletex_payment_type_id"],
.admin-area .settings-card input[name="tripletex_invoice_due_days"],
.admin-area .settings-card input[name="tripletex_session_ttl_seconds"],
.admin-area .settings-card input[name="tripletex_vat_rate[]"],
.admin-area .settings-card input[name="tripletex_vat_type_id[]"],
.admin-area .settings-card input[name="proteria_mailbox_oversize_fee_bring_nok"],
.admin-area .settings-card input[name="proteria_mailbox_oversize_fee_postnord_nok"],
.admin-area .settings-card input[name="volume_packaging_cost_nok"]{
  width:9rem;
}
.admin-area .settings-card input[name="order_prefix"]{width:8rem;text-transform:uppercase;}
.admin-area .settings-card input[name="shipping_sender_postal_code"],
.admin-area .settings-card input[name="shipping_return_postal_code"]{width:7rem;}
.admin-area .settings-card input[name="shipping_sender_country_code"],
.admin-area .settings-card input[name="shipping_return_country_code"]{width:5.5rem;text-transform:uppercase;}
.admin-area .settings-card input[name="shipping_sender_phone"]{width:15rem;}
.admin-area .settings-card input[name="rpi_device_id"],
.admin-area .settings-card input[name="rpi_scale_usb_serial"],
.admin-area .settings-card input[name="rpi_product_printer_usb_serial"],
.admin-area .settings-card input[name="rpi_post_printer_usb_serial"]{width:18rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;}
.admin-area .settings-card input[name="rpi_product_printer_usb_vendor_id"],
.admin-area .settings-card input[name="rpi_product_printer_usb_product_id"],
.admin-area .settings-card input[name="rpi_post_printer_usb_vendor_id"],
.admin-area .settings-card input[name="rpi_post_printer_usb_product_id"]{width:7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:lowercase;}
.admin-area .settings-card input[name="rpi_scale_device_path"],
.admin-area .settings-card input[name="rpi_product_printer_device_path"],
.admin-area .settings-card input[name="rpi_post_printer_device_path"]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;}
.admin-area .settings-card input[name="bank_transfer_account_number"]{width:16rem;font-variant-numeric:tabular-nums;}
.admin-area .settings-card input[name="tripletex_company_id"]{width:16rem;}
/* Lange hemmeligheter og tekniske verdier trenger plass, men ikke hele skjermen. */
.admin-area .settings-card input[type="text"][name*="token"],
.admin-area .settings-card input[type="password"][name*="token"],
.admin-area .settings-card input[type="text"][name*="key"],
.admin-area .settings-card input[type="password"][name*="key"],
.admin-area .settings-card input[type="text"][name*="secret"],
.admin-area .settings-card input[type="password"][name*="secret"],
.admin-area .settings-card input[name="imap_pass"],
.admin-area .settings-card input[name="cron_token"]{
  width:min(100%,46rem);
}
/* Tabeller beholder cellebredden sin og får kompakte numeriske felt. */
.admin-area .settings-packaging-table input[type="text"]{width:100%;max-width:none;}
.admin-area .settings-packaging-table input[type="number"]{width:8.5rem;max-width:100%;}
.admin-area .settings-card table input[type="number"]{width:8.5rem;max-width:100%;}
.admin-area .settings-card table input[type="text"],
.admin-area .settings-card table input[type="email"]{max-width:24rem;}
.admin-area .settings-field > input,
.admin-area .settings-field > select,
.admin-area .settings-field > textarea,
.admin-area .settings-field > .password-input-wrap{
  justify-self:start;
}
.admin-area .settings-field--full > textarea,
.admin-area .settings-field--full > input[type="text"],
.admin-area .settings-field--full > input[type="url"]{
  width:min(100%,52rem);
}
.admin-area .settings-group-frame{
  display:grid;
  gap:10px;
  min-width:0;
  padding:12px;
  border:1px solid var(--admin-card-border);
  border-radius:12px;
  background:var(--admin-card-soft);
}
.admin-area .settings-group-frame > h4{
  margin:0;
  padding-bottom:7px;
  border-bottom:1px solid var(--admin-card-border);
  font-size:.98rem;
}
.admin-area .admin-users-grid > .admin-users-stack{
  padding:11px;
  border:1px solid var(--admin-card-border);
  border-radius:11px;
  background:var(--admin-card-soft);
}
.admin-area .admin-users-stack > .settings-subtitle:first-child{margin-top:0;}
@media(max-width:560px){
  .admin-area .settings-actions > .btn,
  .admin-area .settings-inline-form > .btn,
  .admin-area .admin-users-actions > .btn{
    width:100%;
    justify-content:center;
  }
  .admin-area .settings-main-tabs > .tab,
  .admin-area .settings-active-group .tabs.subtabs > .tab{
    flex:1 1 calc(50% - 4px);
    min-width:0;
    max-width:100%;
  }
}
@media(max-width:380px){
  .admin-area .settings-main-tabs > .tab,
  .admin-area .settings-active-group .tabs.subtabs > .tab{
    flex-basis:100%;
  }
}
@media(max-width:760px){
  .admin-area .settings-card input[type="text"],
  .admin-area .settings-card input[type="email"],
  .admin-area .settings-card input[type="password"],
  .admin-area .settings-card input[type="url"],
  .admin-area .settings-card input[type="tel"],
  .admin-area .settings-card textarea,
  .admin-area .admin-users-card input[type="text"],
  .admin-area .admin-users-card input[type="email"],
  .admin-area .admin-users-card input[type="password"]{
    width:100%;
  }
}

/* No504: finjusterte feltbredder og konsekvent feltoppsett per datatype. */
.admin-area .settings-field{display:grid;align-content:start;min-width:0;}
.admin-area .settings-card input[name="username"],
.admin-area .admin-users-card input[name="username"]{width:18rem;max-width:100%;}
.admin-area .settings-card textarea[name="unit_options"]{width:20rem;max-width:100%;}
.admin-area .settings-card input[name="system_timezone"]{width:14rem;}
.admin-area .settings-card input[name="imap_host"]{width:22rem;}
.admin-area .settings-card input[name="imap_folder"]{width:14rem;}
.admin-area .settings-card input[name="mail_from_name"],
.admin-area .settings-card input[name="dialog_from_name"],
.admin-area .settings-card input[name="bank_transfer_recipient_name"],
.admin-area .settings-card input[name="shipping_sender_name"],
.admin-area .settings-card input[name="shipping_sender_contact_name"],
.admin-area .settings-card input[name="shipping_return_name"]{width:24rem;max-width:100%;}
.admin-area .settings-card input[name="shipping_sender_city"],
.admin-area .settings-card input[name="shipping_return_city"]{width:18rem;max-width:100%;}
.admin-area .settings-card input[name="shipping_sender_address"],
.admin-area .settings-card input[name="shipping_return_address"]{width:30rem;max-width:100%;}
.admin-area .settings-card select[name="stripe_environment"],
.admin-area .settings-card select[name="proteria_label_format"],
.admin-area .settings-card select[name="accounting_provider"],
.admin-area .settings-card select[name="accounting_sync_mode"],
.admin-area .settings-card select[name="tripletex_environment"],
.admin-area .settings-card select[name="tripletex_auth_mode"]{width:18rem;max-width:100%;}

/* No510: kompakte checkboxer kun i Globale innstillinger/Adminbrukere. Den synlige boksen er 20 px; hele labelen er fortsatt klikkbar. */
.admin-area .settings-card input[type="checkbox"],
.admin-area .admin-users-card input[type="checkbox"]{
  --admin-checkbox-size:20px;
  --admin-checkbox-radius:6px;
  --admin-checkbox-mark-size:13px;
}
.admin-area .settings-card .checkbox-line,
.admin-area .admin-users-card .checkbox-line{
  min-height:28px;
}

/* No509: feltvis hjelp i Globale innstillinger. */
.admin-area .settings-field-label-row{
  display:flex;
  align-items:flex-start;
  gap:6px;
  min-width:0;
  max-width:100%;
}
.admin-area .settings-field-label-row > label{
  min-width:0;
  margin:0;
}
.admin-area .settings-field-help-trigger{
  appearance:none;
  -webkit-appearance:none;
  flex:0 0 22px;
  width:22px;
  height:22px;
  min-width:22px;
  min-height:22px;
  padding:0;
  margin:0;
  border:1px solid var(--admin-card-border);
  border-radius:50%;
  background:var(--admin-card-soft);
  color:var(--text);
  font:700 13px/20px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  text-align:center;
  cursor:help;
  box-sizing:border-box;
}
.admin-area .settings-field-help-trigger:hover,
.admin-area .settings-field-help-trigger:focus-visible{
  border-color:var(--accent,#7c5cff);
  outline:2px solid color-mix(in srgb,var(--accent,#7c5cff) 35%,transparent);
  outline-offset:2px;
}
.admin-area .settings-field-help-slot{
  display:inline-flex;
  align-items:center;
  margin:4px 0 0 4px;
  vertical-align:top;
}
.admin-area td > .settings-field-help-slot{
  float:right;
  margin:4px 0 0 6px;
}
.settings-field-tooltip{
  position:fixed;
  z-index:100000;
  width:min(380px,calc(100vw - 20px));
  max-width:calc(100vw - 20px);
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:#16191d;
  color:#f5f7f8;
  box-shadow:0 10px 32px rgba(0,0,0,.38);
  font:400 13px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  white-space:normal;
  overflow-wrap:anywhere;
  pointer-events:none;
}
.settings-field-tooltip[hidden]{display:none!important;}

/* Egne tooltips følger aktivt tema. */
body.theme-light .inventory-floating-tooltip,
body.theme-light .settings-field-tooltip{
  background:#ffffff;
  color:#1f2224;
  border-color:rgba(15,23,42,.18);
  box-shadow:0 10px 30px rgba(31,34,36,.16);
}
@media(max-width:560px){
  .admin-area .settings-field-help-trigger{
    flex-basis:24px;
    width:24px;
    height:24px;
    min-width:24px;
    min-height:24px;
    line-height:22px;
  }
}
.admin-area .settings-control-help-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:6px;
  min-width:0;
  width:100%;
  max-width:100%;
}
.admin-area .settings-control-help-wrap > input,
.admin-area .settings-control-help-wrap > select,
.admin-area .settings-control-help-wrap > textarea,
.admin-area .settings-control-help-wrap > .password-input-wrap{
  min-width:0;
  max-width:100%;
}
.admin-area .settings-control-help-wrap > .settings-field-help-slot{
  margin:4px 0 0 0;
}
.admin-area .formline > .settings-control-help-wrap,
.admin-area .admin-users-actions > .settings-control-help-wrap,
.admin-area .admin-users-delete-form > .settings-control-help-wrap{
  flex:1 1 190px;
  width:auto;
}

/* E-postlogg vises bare ved behov i modal fra E-post / IMAP. */
.admin-area .settings-mail-log-action{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:10px;
}
.admin-area .settings-mail-log-dialog{
  width:min(1180px,calc(100vw - 24px));
  max-width:min(1180px,calc(100vw - 24px));
  max-height:calc(100vh - 24px);
  padding:0;
  border:0;
  background:transparent;
}
.admin-area .settings-mail-log-dialog:not([open]){display:none;}
.admin-area .settings-mail-log-dialog::backdrop{background:rgba(0,0,0,.66);}
.admin-area .settings-mail-log-dialog-card{
  display:grid;
  gap:12px;
  max-height:calc(100vh - 24px);
  overflow:hidden;
  padding:14px;
  border:1px solid var(--admin-card-border);
  border-radius:14px;
  background:var(--panel);
  box-shadow:var(--shadow);
}
.admin-area .settings-mail-log-dialog-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.admin-area .settings-mail-log-dialog-head h4{margin:0 0 3px;}
.admin-area .settings-mail-log-table-wrap{
  max-height:calc(100vh - 130px);
  overflow:auto;
}
@media (max-width:640px){
  .admin-area .settings-mail-log-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);}
  .admin-area .settings-mail-log-dialog-card{padding:10px;max-height:calc(100vh - 12px);}
  .admin-area .settings-mail-log-table-wrap{max-height:calc(100vh - 118px);}
}

/* No513 – felles produktetikett-designer for Vektbatch/Raspberry Pi */
.admin-area .product-label-designer-dialog{
  width:min(96vw,1500px);
  max-width:min(96vw,1500px);
  height:min(94vh,980px);
  max-height:94vh;
  padding:0;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--card);
  color:var(--text);
  overflow:hidden;
}
.admin-area .product-label-designer-dialog::backdrop{background:rgba(0,0,0,.68);}
.admin-area .product-label-designer-shell{height:100%;display:flex;flex-direction:column;min-height:0;}
.admin-area .product-label-designer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border);}
.admin-area .product-label-designer-head h3{margin:0 0 4px;}
.admin-area .product-label-designer-toolbar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--card2);}
.admin-area .product-label-designer-toolbar .field{min-width:160px;margin:0;}
.admin-area .product-label-designer-toolbar-spacer{flex:1 1 24px;}
.admin-area .product-label-designer-status{margin:10px 18px 0;}
.admin-area .product-label-status-good:not(.inventory-negative){border-color:rgba(80,170,110,.35);}
.admin-area .product-label-designer-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;min-height:0;flex:1;padding:12px 18px 18px;overflow:hidden;}
.admin-area .product-label-designer-stage-wrap{min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;overflow:auto;padding:8px;background:rgba(127,127,127,.08);border:1px solid var(--border);border-radius:12px;}
.admin-area .product-label-designer-stage{
  position:relative;
  flex:0 0 auto;
  width:min(100%,1000px);
  max-width:1000px;
  background:#fff;
  color:#111;
  border:1px solid #a0a0a0;
  box-shadow:0 8px 28px rgba(0,0,0,.18);
  overflow:hidden;
  touch-action:none;
  background-image:linear-gradient(to right,#c8cdd3 1px,transparent 1px),linear-gradient(to bottom,#c8cdd3 1px,transparent 1px);
  background-size:5% 5%;
}
.admin-area .product-label-designer-stage--landscape{aspect-ratio:5/3;}
.admin-area .product-label-designer-stage--portrait{width:min(62%,620px);aspect-ratio:3/5;}
.admin-area .product-label-designer-stage:focus{outline:2px solid var(--accent);outline-offset:2px;}
.admin-area .product-label-designer-stage-help{width:100%;max-width:1000px;color:var(--muted);}
.admin-area .product-label-center-guide{position:absolute;z-index:1000;pointer-events:none;background:#1976d2;box-shadow:0 0 0 1px rgba(25,118,210,.18);}
.admin-area .product-label-center-guide--vertical{top:0;bottom:0;left:50%;width:2px;transform:translateX(-1px);}
.admin-area .product-label-center-guide--horizontal{left:0;right:0;top:50%;height:2px;transform:translateY(-1px);}
.admin-area .product-label-center-guide[hidden]{display:none!important;}
.admin-area .product-label-element{position:absolute;display:flex;align-items:center;box-sizing:border-box;border:1px dashed transparent;cursor:move;user-select:none;touch-action:none;line-height:1.05;overflow:visible;padding:2px 4px;color:#111;background:transparent;}
.admin-area .product-label-element:hover{border-color:rgba(25,90,180,.65);}
.admin-area .product-label-element.is-selected{border:2px solid #1b62c4;background:rgba(27,98,196,.055);}
.admin-area .product-label-element.is-dragging{cursor:grabbing;}
.admin-area .product-label-element-text{display:block;width:100%;max-height:100%;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;}
.admin-area .product-label-element--image{padding:3px;}
.admin-area .product-label-element--image img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;}
.admin-area .product-label-element-badge{position:absolute;left:0;top:0;transform:translateY(-100%);display:none;padding:2px 5px;border-radius:4px 4px 0 0;background:#1b62c4;color:#fff;font:600 10px/1.2 system-ui,sans-serif;white-space:nowrap;pointer-events:none;}
.admin-area .product-label-element.is-selected .product-label-element-badge{display:block;}
.admin-area .product-label-element-layer{position:absolute;right:2px;top:2px;z-index:4;min-width:18px;height:18px;padding:0 4px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.9);border-radius:9px;background:#1b62c4;color:#fff;font:700 10px/1 system-ui,sans-serif;box-shadow:0 1px 3px rgba(0,0,0,.28);pointer-events:none;}
.admin-area .product-label-resize-handle{position:absolute;right:1px;bottom:1px;z-index:5;width:14px;height:14px;border:2px solid #fff;border-radius:3px;background:#1b62c4;box-shadow:0 1px 3px rgba(0,0,0,.28);cursor:nwse-resize;display:none;pointer-events:auto;}
.admin-area .product-label-element.is-selected .product-label-resize-handle{display:block;}
.admin-area .product-label-designer-properties{min-height:0;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--card2);}
.admin-area .product-label-designer-properties h4{margin:0 0 6px;}
.admin-area .product-label-property-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
.admin-area .product-label-property-grid .field{margin:0;min-width:0;}
.admin-area .product-label-property-grid .product-label-binding-field,.admin-area .product-label-property-grid .product-label-show-name-field,.admin-area .product-label-property-grid .product-label-fill-field{grid-column:1/-1;}
.admin-area .product-label-checkbox-row{display:flex;align-items:center;gap:8px;min-height:38px;}
.admin-area .product-label-checkbox-row input[type="checkbox"]{width:18px;height:18px;flex:0 0 auto;margin:0;}
.admin-area .product-label-property-grid .product-label-static-text-field{grid-column:1/-1;}
.admin-area .product-label-designer-element-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);}
.admin-area .product-label-media-picker{margin:0 18px 18px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--card2);max-height:48%;overflow:auto;}
.admin-area .product-label-media-picker[hidden]{display:none!important;}
.admin-area .product-label-media-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px;}
.admin-area .product-label-media-picker-head h4{margin:0 0 4px;}
.admin-area .product-label-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;}
.admin-area .product-label-media-item{appearance:none;border:1px solid var(--border);border-radius:9px;padding:8px;background:var(--card);color:var(--text);cursor:pointer;text-align:left;display:grid;gap:6px;min-width:0;}
.admin-area .product-label-media-item:hover,.admin-area .product-label-media-item:focus{border-color:var(--accent);outline:none;}
.admin-area .product-label-media-item img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff;border-radius:6px;}
.admin-area .product-label-media-item span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media (max-width:980px){
  .admin-area .product-label-designer-dialog{width:98vw;max-width:98vw;height:96vh;max-height:96vh;}
  .admin-area .product-label-designer-main{grid-template-columns:1fr;overflow:auto;}
  .admin-area .product-label-designer-properties{overflow:visible;}
  .admin-area .product-label-designer-stage--portrait{width:min(82%,560px);}
}
@media (max-width:620px){
  .admin-area .product-label-designer-head,.admin-area .product-label-designer-toolbar{padding-left:10px;padding-right:10px;}
  .admin-area .product-label-designer-main{padding:10px;}
  .admin-area .product-label-designer-toolbar .field{min-width:140px;flex:1 1 140px;}
  .admin-area .product-label-designer-stage--portrait{width:100%;}
  .admin-area .product-label-property-grid{grid-template-columns:1fr;}
  .admin-area .product-label-property-grid .product-label-static-text-field{grid-column:auto;}
  .admin-area .product-label-media-picker{margin-left:10px;margin-right:10px;}
}
.admin-area .product-label-property-grid[hidden],
.admin-area .product-label-designer-element-actions[hidden],
.admin-area .product-label-static-text-field[hidden],
.admin-area .product-label-binding-field[hidden],
.admin-area .product-label-show-name-field[hidden],
.admin-area .product-label-fill-field[hidden]{display:none!important;}

/* Vektbatch: ubekreftede felt skal være tydelig røde i redigeringsruten, ikke bare i tabellen. */
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing{
  border-color:color-mix(in srgb,var(--bad) 78%,var(--border));
  background:color-mix(in srgb,var(--bad) 9%,var(--card));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bad) 58%,transparent);
  border-radius:12px;
}
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing input,
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing select,
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing textarea,
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing [data-weight-batch-package-button]{
  border-color:color-mix(in srgb,var(--bad) 82%,var(--border));
  background:color-mix(in srgb,var(--bad) 8%,var(--admin-field-bg,var(--card)));
}
.admin-area [data-weight-batch-editor] [data-weight-batch-confirm-wrap].inventory-completion-required-missing [data-weight-batch-confirm-state]{
  color:var(--bad);
  font-weight:700;
}

/* 2026-09-23: felles inputvern for kunde-/adressefelt */
.user-create-details{display:grid;gap:10px;min-width:0;}
.user-create-details--locked{opacity:.72;}
.shop-input-guard-tooltip{
  position:fixed;
  z-index:10050;
  max-width:min(360px,calc(100vw - 16px));
  padding:8px 10px;
  border:1px solid var(--border,var(--line));
  border-radius:8px;
  background:var(--card,#111827);
  color:var(--text,#fff);
  box-shadow:0 8px 26px rgba(0,0,0,.32);
  font-size:12px;
  line-height:1.35;
  pointer-events:none;
}
.shop-input-guard-tooltip[hidden]{display:none!important;}


/* Opprett konto: tydelig arbeidsstatus i sikkerhetssjekken og større sikkerhetskode. */
.hc-overlay.hc-account-registration .hc-img{
  height:78px;
}
.hc-overlay.hc-account-registration .hc-actions .btn.primary.hc-verifying{
  background:#5f6368;
  border-color:#5f6368;
  color:#fff;
  opacity:1;
  filter:none;
  cursor:wait;
}
body.theme-light:not(.admin-area) .hc-overlay.hc-account-registration .hc-actions .btn.primary.hc-verifying,
body.theme-light:not(.admin-area) .hc-overlay.hc-account-registration .hc-actions .btn.primary.hc-verifying:hover{
  background:#a6a6a6;
  border-color:#929292;
  color:#fff;
}
body.theme-light:not(.admin-area) .hc-overlay.hc-account-registration .hc-actions .btn.primary.hc-ready,
body.theme-light:not(.admin-area) .hc-overlay.hc-account-registration .hc-actions .btn.primary.hc-ready:hover{
  background:#be4227;
  border-color:#be4227;
  color:#fff;
}

/* Lokal utlevering: skjema passer smale skjermer, varetabellen ruller lokalt. */
.local-pickup-panel{display:grid;gap:14px;min-width:0;}
.local-pickup-panel h3,.local-pickup-panel h4,.local-pickup-panel p{margin:0;}
.pickup-lookup-form,.pickup-scan-form{display:flex;flex-wrap:wrap;align-items:end;gap:10px;}
.pickup-lookup-form label,.pickup-scan-form label{display:grid;gap:6px;min-width:0;flex:1 1 220px;}
.pickup-lookup-form input,.pickup-scan-form input{width:100%;min-width:0;}
.pickup-code{font-size:1.5rem;font-weight:800;letter-spacing:.12em;font-variant-numeric:tabular-nums;}
.pickup-order{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--border);border-radius:12px;}
.pickup-items-table{min-width:580px;}
.pickup-item-complete{background:color-mix(in srgb,var(--good) 12%,transparent);}
.pickup-scanned-list{margin:0;padding-left:24px;max-height:280px;overflow:auto;}
.pickup-scanned-list li{padding:5px 0;overflow-wrap:anywhere;}

/* No602 – kompakte produktvalg, rik produkttekst og sticky lagerhode */
.low-stock-inline{display:inline-flex!important;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted)}
.low-stock-inline .low-stock-threshold{width:58px!important;min-width:58px!important;max-width:58px!important;padding:5px 6px!important;min-height:30px!important;text-align:center}
.low-stock-inline .low-stock-threshold:disabled,.low-stock-inline .low-stock-threshold[readonly],.low-stock-inline .low-stock-threshold.is-disabled{opacity:.48;background:rgba(127,127,127,.16);cursor:not-allowed}
.product-content-open{width:max-content;max-width:100%}
.product-content-editor-card{width:min(980px,96vw);max-width:96vw;display:grid;gap:12px}
.product-content-editor-tabs{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:2px 0 5px}
.product-content-tab{white-space:nowrap;cursor:grab}
.product-content-tab.is-active{outline:2px solid var(--accent);outline-offset:1px}
.product-content-editor-tab-actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.product-content-title-field{min-width:220px;flex:1}
.product-content-toolbar{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:8px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.03)}
.product-content-toolbar .btn,.product-content-toolbar select{min-height:34px;padding:6px 9px}
.product-content-rich-editor{min-height:300px;max-height:58vh;overflow:auto;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);line-height:1.5;white-space:normal}
.product-content-rich-editor:focus{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}
.product-content-rich-editor ul,.product-content-rich-editor ol,.product-content-display ul,.product-content-display ol{padding-left:1.5em}
.product-content-display{line-height:1.55;overflow-wrap:anywhere}
.product-content-display table{max-width:100%;border-collapse:collapse}
.product-content-display td,.product-content-display th{border:1px solid var(--line);padding:5px 7px}
.pdp-content-tabs{display:flex;gap:8px;overflow-x:auto;margin:0 0 12px;padding:0 0 4px}
.pdp-content-tab{white-space:nowrap}
.pdp-content-tab.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.pdp-content-panel[hidden]{display:none!important}

/* Lagerkorreksjon: faktisk viewport-sticky klone, originalt hode beholdes for tabellbredder. */
.inventory-floating-head{position:fixed;z-index:90;display:none;overflow:hidden;pointer-events:none;box-shadow:0 8px 18px rgba(0,0,0,.24)}
.inventory-floating-head.is-visible{display:block}
.inventory-floating-head table{border-collapse:collapse;table-layout:fixed;width:max-content;min-width:100%;background:var(--admin-table-head)}
.inventory-floating-head th{background:var(--admin-table-head);padding:9px 10px;line-height:1.32;vertical-align:top;border-color:var(--admin-table-border);pointer-events:none}

/* No606: kompakt konfigurasjon for pris pr enhet. */
.admin-area .admin-price-per-unit-config{
  display:grid;
  gap:6px;
  margin-top:6px;
  padding:7px 8px;
  border:1px solid var(--admin-card-border);
  border-radius:10px;
  background:var(--admin-card-soft);
  min-width:0;
}
.admin-area .admin-price-per-unit-head,
.admin-area .inventory-price-per-unit-check,
.admin-area .inventory-check{
  display:flex;
  align-items:flex-start;
  gap:6px;
  margin:0;
  line-height:1.25;
  min-width:0;
}
.admin-area .admin-price-per-unit-head input[type="checkbox"],
.admin-area .inventory-price-per-unit-check input[type="checkbox"],
.admin-area .inventory-check input[type="checkbox"]{
  flex:0 0 auto;
  margin:1px 0 0;
}
.admin-area .admin-price-per-unit-head span,
.admin-area .inventory-price-per-unit-check span{
  min-width:0;
}
.admin-area .admin-price-per-unit-controls,
.admin-area .inventory-price-per-unit-controls{
  display:grid;
  grid-template-columns:minmax(62px,1fr) 42px minmax(68px,82px);
  gap:4px;
  align-items:center;
  min-width:0;
}
.admin-area .admin-price-per-unit-controls select,
.admin-area .admin-price-per-unit-controls input,
.admin-area .inventory-price-per-unit-controls select,
.admin-area .inventory-price-per-unit-controls input{
  width:100%;
  min-width:0;
}
.admin-area .inventory-price-per-unit-config{
  display:grid;
  gap:5px;
  margin-top:6px;
  padding:6px 7px;
  border:1px solid var(--admin-card-border);
  border-radius:9px;
  background:var(--admin-card-soft);
  min-width:0;
}
.admin-area .inventory-price-per-unit-check{
  font-size:12px;
  white-space:nowrap;
}
@media (max-width:520px){
  .admin-area .admin-price-per-unit-controls,
  .admin-area .inventory-price-per-unit-controls{
    grid-template-columns:minmax(58px,1fr) 40px minmax(62px,76px);
  }
}

/* No607: Lagerkorreksjon bruker samme kompakte checkbox-proporsjoner som Globale innstillinger. */
.admin-area .inventory-price-per-unit-check input[type="checkbox"],
.admin-area .inventory-check input[type="checkbox"]{
  --admin-checkbox-size:20px;
  --admin-checkbox-radius:6px;
  --admin-checkbox-mark-size:13px;
}
.admin-area .inventory-price-per-unit-check,
.admin-area .inventory-check{
  min-height:28px;
  align-items:center;
  font-size:12px;
  line-height:1.25;
}
.admin-area .inventory-price-per-unit-check input[type="checkbox"],
.admin-area .inventory-check input[type="checkbox"]{
  margin:0;
}
