.ind-catalog-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:20px; align-items:start; }
/* IMPORTANT: .button { display:inline-flex } overskriver HTML [hidden] — admin-link skal være skjult for kunder. */
#indAdminCatalogLink[hidden],
a.button[hidden] {
  display: none !important;
}
.ind-gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); gap:14px; }
.ind-item { border:1px solid rgba(74,222,128,.32); border-radius:12px; background:#102218; overflow:hidden; text-align:left; cursor:pointer; color:inherit; padding:0; }
.ind-item:hover,.ind-item:focus-visible,.ind-item.is-selected { border-color:#4ade80; box-shadow:0 0 16px rgba(74,222,128,.42); outline:none; }
.ind-item img { display:block; width:100%; aspect-ratio:3/4; object-fit:cover; background:#1a1a1a; }
.ind-item-copy { display:block; padding:10px; }.ind-item-copy strong,.ind-item-copy small { display:block; }.ind-item-copy small { margin-top:4px; opacity:.78; }
.ind-selection-cover { width:130px; max-height:180px; object-fit:cover; border-radius:8px; float:right; margin:0 0 12px 12px; }
.ind-qty-options { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.ind-qty-option { border:1px solid rgba(74,222,128,.45); background:#16311f; color:inherit; padding:9px 12px; border-radius:8px; cursor:pointer; }
.ind-qty-option.is-selected { border-color:#4ade80; box-shadow:0 0 13px rgba(74,222,128,.62); background:#1e4a2a; }
.ind-quantity-field { display:flex; align-items:center; gap:10px; border:1px solid rgba(74,222,128,.7); background:#16311f; border-radius:9px; padding:8px 10px; color:#fff; box-shadow:0 0 10px rgba(74,222,128,.25); }
.ind-quantity-field span { font-weight:700; }
.ind-quantity-field input { width:92px; min-height:38px; margin:0; padding:6px 9px; font-size:18px; font-weight:700; text-align:center; color:#fff; background:#0c1c14; border:1px solid rgba(74,222,128,.45); border-radius:7px; box-sizing:border-box; }
.ind-quantity-field input:focus { outline:none; border-color:#4ade80; box-shadow:0 0 10px rgba(74,222,128,.65); }
.ind-package-prices {
  display:grid;
  gap:6px;
  margin:12px 0;
  padding:12px;
  border:1px solid rgba(74,222,128,.42);
  border-radius:9px;
  background:rgba(22,49,31,.58);
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.ind-package-prices > strong { color:#bbf7d0; }
/* IMPORTANT: Admin kost/fortjeneste i venstremenu under Instagram — samme kompakte stil som pakkepriser. */
.ind-admin-nav-box {
  grid-column: 1 / -1;
  display:grid;
  gap:4px;
  margin:4px 0 8px;
  padding:10px;
  border:1px solid rgba(74,222,128,.42);
  border-radius:9px;
  background:rgba(22,49,31,.58);
  font-size:.82em;
  line-height:1.25;
  text-align:left;
}
.ind-admin-nav-box > strong { color:#bbf7d0; font-size:1.02em; }
.ind-admin-muted { margin:0 0 4px; opacity:.85; font-size:.95em; }
.ind-admin-head, .ind-admin-row {
  display:grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.9fr);
  gap:6px;
  align-items:baseline;
}
.ind-admin-head { color:#86efac; font-weight:700; padding-bottom:3px; border-bottom:1px solid rgba(74,222,128,.28); margin-bottom:2px; }
.ind-admin-head span:last-child, .ind-admin-row strong { text-align:right; }
.ind-admin-row { padding:2px 0; color:rgba(255,255,255,.92); }
.ind-admin-row strong { color:#fff; font-variant-numeric:tabular-nums; }
.ind-admin-row.is-pos strong { color:#86efac; }
.ind-admin-row.is-neg strong { color:#fca5a5; }
.ind-admin-row.is-sale strong { color:#fde047; }
.ind-pack-intro { margin:2px 0 8px; font-size:.9em; opacity:.9; line-height:1.35; }
.ind-pack-head, .ind-pack-row {
  display:grid;
  /* IMPORTANT: Kolonner inden for boksen; rabatpris stables lodret så "kr." ikke brydes ud. */
  grid-template-columns: 3.4rem minmax(0, 1fr) auto;
  gap:8px;
  align-items:center;
  font-size:.9em;
  min-width:0;
  width:100%;
  box-sizing:border-box;
}
.ind-pack-head { color:#86efac; font-weight:700; padding-bottom:4px; border-bottom:1px solid rgba(74,222,128,.28); }
.ind-pack-row { padding:4px 0; }
.ind-pack-qty { white-space:nowrap; }
.ind-pack-price { min-width:0; }
.ind-pack-price b { color:#fff; }
.ind-price-stack {
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
  line-height:1.2;
}
.ind-price-stack s,
.ind-price-stack b { white-space:nowrap; }
.ind-pack-unit { opacity:.85; white-space:nowrap; text-align:right; justify-self:end; }
.ind-sale-note { margin:10px 0; padding:9px 10px; border:1px solid rgba(251,191,36,.72); border-radius:9px; color:#fff3b0; background:linear-gradient(120deg,rgba(146,64,14,.6),rgba(251,191,36,.2)); box-shadow:0 0 13px rgba(251,191,36,.3); }
.ind-package-prices s,.ind-price-box s { color:rgba(255,255,255,.7); }
.ind-quantity-modal[hidden] { display:none !important; }
.ind-quantity-modal { position:fixed; inset:0; z-index:1200; display:grid; place-items:center; padding:18px; }
.ind-quantity-backdrop { position:absolute; inset:0; background:rgba(2,8,5,.76); backdrop-filter:blur(5px); }
.ind-quantity-dialog { position:relative; z-index:1; width:min(340px,100%); padding:26px; border:1px solid rgba(74,222,128,.85); border-radius:18px; background:linear-gradient(145deg,#22422d,#0b1b12 58%,#061109); box-shadow:0 24px 55px rgba(0,0,0,.62), inset 0 1px rgba(255,255,255,.14), 0 0 25px rgba(74,222,128,.32); transform:perspective(800px) rotateX(2deg); text-align:center; }
.ind-quantity-dialog h3 { margin:7px 0 18px; }
.ind-quantity-dialog input { display:block; width:150px; height:72px; margin:0 auto 18px; padding:8px; border:1px solid #4ade80; border-radius:13px; color:#fff; background:#07140d; box-shadow:inset 0 3px 10px rgba(0,0,0,.5),0 0 15px rgba(74,222,128,.35); font-size:34px; font-weight:800; text-align:center; box-sizing:border-box; }
.ind-quantity-close { position:absolute; top:9px; right:11px; border:0; background:transparent; color:#fff; font-size:28px; cursor:pointer; }
.ind-price-box { clear:both; border-top:1px solid rgba(255,255,255,.14); padding-top:12px; margin-top:14px; }.ind-price-box div { display:flex; justify-content:space-between; gap:12px; padding:3px 0; }.ind-price-box .ind-total { font-size:1.1em; font-weight:700; }
.ind-preview-body { min-height:420px; display:grid; place-items:center; padding:16px; background:#111; }.ind-preview-body canvas { max-width:100%; max-height:68vh; box-shadow:0 5px 20px rgba(0,0,0,.45); }.ind-preview-nav { display:flex; justify-content:center; align-items:center; gap:16px; }
@media (max-width:780px) { .ind-catalog-layout { grid-template-columns:1fr; }.ind-selection-cover { width:96px; } .ind-preview-body { min-height:260px; } }
