/* Admin. Bygger på finans.css (designsystemet) og bruker samme variabler. */
.lay{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}
.col{min-width:0;display:flex;flex-direction:column;gap:20px}
.sec-t{font-size:18px;font-weight:700;margin:0 0 4px}
.sw{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--border);min-height:44px}
.sw:last-child{border-bottom:0}
.sw b{display:block;font-size:15px}.sw span.d{font-size:13.5px;color:var(--text-muted)}
.tg{position:relative;flex:none;width:52px;height:44px;border:0;background:transparent;cursor:pointer;padding:0}
.tg::before{content:"";position:absolute;top:7px;left:0;width:52px;height:30px;border-radius:15px;background:#8792A2}
.tg::after{content:"";position:absolute;top:10px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.tg[aria-checked="true"]::before{background:var(--ok-solid)}
.tg[aria-checked="true"]::after{left:25px}
.tg:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.lt{width:100%;border-collapse:collapse;font-size:14.5px}
.lt th{text-align:left;padding:12px 16px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--alt-bg)}
.lt td{padding:14px 16px;border-bottom:1px solid var(--border);vertical-align:middle}
.lt tr:last-child td{border-bottom:0}
.lt .n{text-align:right;font-variant-numeric:tabular-nums}.lt th.n{text-align:right}
.table-scroll{overflow-x:auto}
.tiles4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.limit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.login-wrap{max-width:420px;margin:56px auto;padding:0 20px}
.field-error{color:var(--danger);font-size:13.5px;margin-top:6px}
.stack{display:flex;flex-direction:column;gap:20px}
.pager{display:flex;gap:12px;justify-content:center;margin-top:16px}
@media (max-width:980px){.lay{grid-template-columns:minmax(0,1fr)}.tiles4{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.limit-grid{grid-template-columns:1fr}}

/* Mobilmeny: navigasjonen foldes ut under logoen når knappen trykkes. */
@media (max-width:980px){
  .navbar.open .navbar-inner{flex-wrap:wrap;height:auto;padding-bottom:12px}
  .navbar.open .navbar-inner > .navbar-nav,.navbar.open .navbar-inner > .navbar-right{display:flex;flex-basis:100%;margin-left:0}
  .navbar.open .navbar-nav{flex-direction:column;gap:0}
  .navbar.open .navbar-right{justify-content:space-between}
}
.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}
.tiles3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lt td,.lt th{white-space:nowrap}
.lt td.small{white-space:normal;min-width:220px}
@media (max-width:720px){.tiles3{grid-template-columns:1fr}}

/* Filterlinje: kortet er en kolonne som standard, så retningen settes eksplisitt til rad. */
.filter-bar{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:14px;}
.filter-bar .form-group{flex:0 1 220px;min-width:0;}
@media (max-width:600px){.filter-bar{flex-direction:column;align-items:stretch;}.filter-bar .form-group{flex:none;}}

/* Spinner på knapper som venter på bakgrunnsarbeid. Følger knappens tekstfarge. */
.btn-busy{display:inline-flex;align-items:center;gap:10px;}
.spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite;flex:none;}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.spinner{animation:none;border-right-color:currentColor;opacity:.5}}

/* Flere merker i samme celle brytes over på flere linjer i stedet for å skyves ut av skjermen. */
.badge-row{display:flex;flex-wrap:wrap;gap:6px;white-space:normal;}

/* Sammenligningssidene: på smal skjerm brytes tekst i stedet for å scrolle sidelengs, så status alltid synes */
@media (max-width:700px){.lt-pages td,.lt-pages th{white-space:normal;padding:12px 10px}.lt-pages td:nth-child(2){overflow-wrap:anywhere}.lt-pages td:last-child{white-space:nowrap}}

/* Data-siden: på smal skjerm brytes alle kolonner, så typenavnet alltid synes ved siden av tallet */
@media (max-width:700px){.lt-wrap td,.lt-wrap th{white-space:normal;padding:12px 10px}.lt-wrap td:first-child{overflow-wrap:anywhere}.lt-wrap .n{white-space:nowrap}.lt-wrap td:last-child,.lt-wrap th:last-child{min-width:8.5rem}}

/* Eksempler på produktnavn ligger på egen rad under typen, over full bredde */
.lt tr.has-ex td{border-bottom:0;padding-bottom:4px}
.lt tr.ex td{padding-top:0;white-space:normal;overflow-wrap:anywhere}
