:root{
  --bs-primary:#FF6B3D;
  --bs-primary-600:#E5542B;
  --bs-primary-700:#B83E1F;
  --bs-secondary:#1B7F8B;
  --bs-secondary-600:#166A73;
  --bs-secondary-700:#12565C;
  --bs-success:#22C55E;
  --bs-warning:#EAB308;
  --bs-danger:#EF4444;
  --bs-info:#38BDF8;
  --bs-dark:#0A0F1A;
  --bs-body:#1F2937;
  --bs-muted:#6B7280;
  --bs-bg:#F5F7FA;
  --bs-card:#FFFFFF;
  --bs-border:#E2E6ED;
  --bs-shadow:0 10px 28px rgba(17,24,39,.08);
  --link:#1B7F8B;
  --link-hover:#12565C;
  --focus:#FCD34D;
  --h1-color:#0B1220;
  --h2-color:#101827;
  --h3-color:#7C2D12;
  --h4-color:#166534;
  --h5-color:#0E7490;
  --h6-color:#0F766E;
  --tint-primary:#FFF4ED;
  --tint-secondary:#EAF7F8;
  --tint-success:#ECFDF5;
  --tint-warning:#FEF3C7;
  --tint-danger:#FEE2E2;
  --tint-info:#E0F7FA;
  --space-1:8px;--space-2:12px;--space-3:16px;--space-4:20px;--space-5:24px;--space-6:28px;--space-7:36px;
  --star:#F59E0B;--star-off:#E5E7EB;
  --price:#111827;--price-accent:#FF6B3D;--price-compare:#9CA3AF;

  --steel-50:#F8FAFC;
  --steel-100:#F1F3F7;
  --steel-200:#E4E8EF;
  --steel-300:#D3D9E3;
  --steel-400:#AEB7C5;
  --steel-500:#8B95A7;
  --steel-600:#5D6B82;
  --tile-grid:rgba(0,0,0,.04);
  --steam:#06B6D4;
  --chill:#60A5FA;
  --gas:#F97316;
  --electric:#F59E0B;
  --wash:#0EA5A4;
}

*{box-sizing:border-box}
html,body{height:100%}
html,body,[data-bs-theme]{color-scheme:light!important}
body{
  margin:0;background:var(--bs-bg);color:var(--bs-body);
  font-family:system-ui,-apple-system,"Segoe UI",Inter,Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale
}
a{color:var(--link);text-decoration:underline}
a:hover{color:var(--link-hover);text-decoration:underline}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

.container{max-width:1240px;margin:0 auto;padding:0 var(--space-3)}
.row{display:flex;flex-wrap:wrap;margin-left:-12px;margin-right:-12px;row-gap:var(--space-3)}
.col{padding-left:12px;padding-right:12px;flex:1 0 0%;min-width:260px}

.navbar{
  --nav-bg:linear-gradient(180deg,rgba(255,255,255,.92),rgba(249,250,251,.9));
  --nav-border:var(--bs-border);
  --nav-link:#0B1220;
  --nav-link-muted:#6B7280;
  --nav-link-active:var(--bs-primary);
  --nav-hover-bg:var(--tint-primary);
  --nav-focus:var(--focus);
  backdrop-filter:saturate(140%) blur(8px);
  background:var(--nav-bg)!important;border-bottom:1px solid var(--nav-border);
  padding-block:.6rem;box-shadow:0 6px 20px rgba(17,24,39,.06)
}
.brand img{display:block}
.navbar-brand{padding:.25rem .5rem;border-radius:12px;background:linear-gradient(180deg,var(--steel-50),var(--steel-100));box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.05)}
.navbar-brand img{display:block;height:32px;width:auto}
.navbar-brand:focus-visible{outline:3px solid var(--nav-focus);outline-offset:2px}
.navbar .container{display:flex;align-items:center;gap:var(--space-2)}
.navbar-nav{align-items:center;gap:.25rem;margin-left:auto;display:flex}
.navbar .nav-link{
  position:relative;display:block;padding:.5rem .75rem;border-radius:12px;
  font-weight:800;color:var(--nav-link);text-decoration:none;letter-spacing:.2px;
  transition:color .15s ease,background-color .15s ease,transform .12s ease
}
@media(min-width:992px){
  .navbar .nav-link::after{
    content:"";position:absolute;left:12px;right:12px;bottom:6px;height:3px;border-radius:999px;
    background:linear-gradient(90deg,var(--bs-primary),var(--steam));transform:scaleX(0);transform-origin:left;transition:transform .18s ease;opacity:.9
  }
  .navbar .nav-link:hover::after{transform:scaleX(1)}
}
.navbar .nav-link:hover{background:var(--nav-hover-bg);color:var(--nav-link-active);transform:translateY(-1px)}
.navbar .nav-link:focus-visible{outline:3px solid var(--nav-focus);outline-offset:2px}
.navbar .nav-link.active,.navbar .nav-link[aria-current="page"]{color:var(--nav-link-active)!important;background:var(--tint-primary);box-shadow:inset 0 0 0 1px var(--focus)}
@media(min-width:992px){
  .navbar .nav-link.active::after,.navbar .nav-link[aria-current="page"]::after{transform:scaleX(1)}
}
.navbar .navbar-toggler{
  border-radius:12px;border:1px solid var(--nav-border);padding:.4rem .55rem;background:#fff;
  transition:transform .12s ease,box-shadow .15s ease,border-color .15s ease
}
.navbar .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(255,107,61,.18);border-color:var(--focus)}
.navbar .navbar-toggler:hover{transform:translateY(-1px)}
.collapse{display:none}
.collapse.show{display:block}
@media(min-width:992px){
  .navbar .navbar-toggler{display:none}
  .collapse{display:block!important}
}
@media(max-width:991.98px){
  .navbar-collapse{
    background:#fff;border:1px solid var(--nav-border);border-radius:14px;
    box-shadow:0 14px 28px rgba(17,24,39,.12);padding:.4rem;margin-top:.6rem
  }
  .navbar-nav .nav-item{margin:.1rem}
  .navbar-nav .nav-link{padding:.65rem .8rem}
}

.hero{
  position:relative;
  background:
    radial-gradient(1200px 420px at 30% -50%,var(--tint-primary) 0,rgba(255,241,232,0) 70%),
    linear-gradient(120deg,var(--tint-primary),#F3FAF7);
  border:1px solid var(--bs-border);border-radius:18px;
  padding:var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);
  overflow:hidden
}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.7;
  background:
    repeating-linear-gradient(0deg,transparent,transparent 22px,var(--tile-grid) 23px,transparent 24px),
    repeating-linear-gradient(90deg,transparent,transparent 22px,var(--tile-grid) 23px,transparent 24px)
}
.hero h1{margin:0 0 var(--space-2) 0}
.hero p{margin:0 0 10px 0}
.hero .eyebrow{
  display:inline-block;background:var(--tint-secondary);color:#075985;border:1px solid #BAE6FD;
  border-radius:999px;font-size:.82rem;padding:4px 10px;font-weight:800
}

h1,h2,h3,h4,h5,h6{margin-top:1.4em;margin-bottom:.55em;line-height:1.22;letter-spacing:.2px}
h1{color:var(--h1-color);font-weight:900;font-size:clamp(2rem,2.8vw,2.4rem);margin-top:0}
h2{color:var(--h2-color);font-weight:900;font-size:clamp(1.6rem,2.2vw,1.9rem);padding-bottom:8px;border-bottom:1px solid var(--bs-border)}
h3{color:var(--h3-color);font-weight:800;font-size:1.16rem}
h4{color:var(--h4-color);font-weight:700}
h5{color:var(--h5-color);font-weight:700}
h6{color:var(--h6-color);font-weight:700}
.lead{font-size:1.14rem;color:#374151;margin-bottom:var(--space-3)}
p{margin:0 0 var(--space-3)}
ul,ol{margin:0 0 var(--space-3) var(--space-4);padding:0}
li{margin-bottom:8px}

.card{
  background:var(--bs-card);border:1px solid var(--bs-border);border-radius:18px;
  box-shadow:var(--bs-shadow);margin-bottom:var(--space-5);
  transition:transform .12s ease,box-shadow .18s ease
}
.card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(17,24,39,.09)}
.card-body{padding:var(--space-5)}
@media(min-width:1200px){.card>.card-body{max-width:900px;margin:0 auto}}

.badge{
  display:inline-block;background:var(--tint-secondary);color:#065F46;border:1px solid #A7F3D0;
  border-radius:999px;font-size:.82rem;padding:4px 10px;font-weight:800
}
.kwd-pill,.filter-pill{
  display:inline-block;background:#F8FAFC;border-radius:999px;padding:8px 12px;margin:8px 8px 0 0;
  font-size:.92rem;border:1px solid var(--bs-border)
}
.filter-pill.is-active{background:var(--tint-primary);border-color:var(--focus);color:#7A2E0E;font-weight:800}

.btn{
  display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:14px;
  padding:11px 16px;font-weight:900;letter-spacing:.2px
}
.btn-primary{background:var(--bs-primary);color:#fff}
.btn-primary:hover{background:var(--bs-primary-600)}
.btn-primary:active{background:var(--bs-primary-700)}
.btn-outline{background:linear-gradient(180deg,var(--steel-50),var(--steel-100));border-color:var(--bs-border);color:var(--bs-dark);box-shadow:inset 0 1px 0 #fff}
.btn-outline:hover{border-color:var(--bs-primary);color:var(--bs-primary);background:var(--tint-primary)}
.btn-boost,.btn-love{background:linear-gradient(90deg,var(--bs-primary),var(--success) 60%,var(--bs-secondary) 130%);color:#fff;border:none}
.btn-boost:hover,.btn-love:hover{filter:brightness(.96)}
.btn-ghost{background:transparent;border:1px dashed var(--bs-border);color:var(--bs-dark)}
.btn-ghost:hover{border-color:var(--bs-secondary);background:var(--tint-secondary);color:var(--bs-secondary)}
.btn-gas{background:var(--gas);color:#fff}
.btn-electric{background:var(--electric);color:#111827}
.btn-steam{background:var(--steam);color:#fff}
.btn-chill{background:var(--chill);color:#fff}
.btn-wash{background:var(--wash);color:#fff}

.breadcrumb{font-size:.96rem;color:#8a98a6;margin-bottom:var(--space-3)}
.breadcrumb a{color:inherit}
@media(max-width:576px){
  .breadcrumb{font-size:0;margin-bottom:var(--space-2);color:#9aa7b3}
  .breadcrumb a,.breadcrumb span{display:none}
  .breadcrumb a:first-of-type,.breadcrumb span:last-of-type{display:inline;font-size:.92rem;color:#7d8a97}
}

.toc{background:#fff;border:1px solid var(--bs-border);border-radius:14px;padding:0}
.toc .card-body{padding:var(--space-4)}
.toc h2{margin:0 0 var(--space-2) 0;font-size:1.05rem;border-bottom:1px solid var(--bs-border);padding-bottom:6px}
.toc .list-group{display:grid;grid-template-columns:1fr;gap:12px;padding-left:0;margin:0}
.toc .list-group .list-group-item{
  margin:0;border:1px solid var(--bs-border);border-radius:16px;padding:14px 16px;background:#fff;
  box-shadow:0 1px 2px rgba(17,24,39,0.04);
  transition:transform .08s ease,box-shadow .12s ease,border-color .12s ease
}
.toc .list-group .list-group-item:hover{transform:translateY(-1px);border-color:var(--focus);box-shadow:0 4px 12px rgba(17,24,39,0.08)}
.toc .list-group .list-group-item>a{
  display:block;width:100%;color:var(--h2-color);font-weight:900;line-height:1.35;word-break:break-word;hyphens:auto;text-decoration:none
}
.toc .list-group .list-group-item>a:focus,.toc .list-group .list-group-item>a:hover{text-decoration:none;color:var(--h1-color)}
@media(min-width:480px){.toc .list-group{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.toc .list-group{grid-template-columns:repeat(3,1fr);gap:14px}}

.product-cards{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:600px){.product-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.product-cards{grid-template-columns:repeat(3,1fr)}}
.product-cards .card{border:1px solid var(--bs-border);overflow:hidden;position:relative}
.product-cards h3{margin-top:6px}
.product-thumb{border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#fff,#F8FAFC)}
.product-thumb img{display:block;width:100%;height:auto;transition:transform .25s ease}
.product-cards .card:hover .product-thumb img{transform:scale(1.03)}
.ribbon{
  position:absolute;top:14px;left:-8px;background:linear-gradient(90deg,var(--bs-primary),var(--steam));
  color:#fff;padding:6px 14px;border-top-right-radius:12px;border-bottom-right-radius:12px;font-weight:900;letter-spacing:.3px;
  box-shadow:0 8px 18px rgba(17,24,39,.18)
}
.price{display:flex;align-items:baseline;gap:8px;margin-top:6px}
.price .current{font-weight:900;font-size:1.2rem;color:var(--price)}
.price .compare{color:var(--price-compare);text-decoration:line-through}
.price .tag{display:inline-block;background:var(--tint-primary);color:var(--price-accent);border:1px solid var(--focus);border-radius:999px;padding:2px 8px;font-weight:900;font-size:.8rem}

.rating{display:inline-flex;gap:2px;align-items:center}
.rating .star{
  --sz:18px;width:var(--sz);height:var(--sz);display:inline-block;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23FFF" viewBox="0 0 24 24"><path d="M12 .587l3.668 7.431 8.2 1.192-5.934 5.787 1.402 8.167L12 18.896 4.664 23.164l1.402-8.167L.132 9.21l8.2-1.192z"/></svg>') no-repeat center/contain;
  background:var(--star)
}
.rating .star.off{background:var(--star-off)}
.rating small{margin-left:6px;color:var(--bs-muted)}

.pros-cons{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:700px){.pros-cons{grid-template-columns:1fr 1fr}}
.pros,.cons{border:1px solid var(--bs-border);border-radius:14px;padding:14px 16px;background:#fff}
.pros h4,.cons h4{margin:0 0 8px;font-size:1rem}
.pros ul,.cons ul{margin:0;padding-left:18px}
.pros li::marker{color:#22C55E}
.cons li::marker{color:#EF4444}

.disclaimer{background:var(--tint-secondary);border:1px solid #A7F3D0;border-radius:12px;padding:12px 14px;color:#065F46;font-size:.92rem}

.age-badge{display:inline-flex;align-items:center;gap:6px;background:#111827;color:#fff;border-radius:999px;padding:4px 10px;font-weight:900;font-size:.82rem}
.safety-banner{display:flex;gap:12px;align-items:flex-start;background:#FFF;border:1px solid var(--bs-border);border-radius:12px;padding:12px 14px}
.safety-banner .icon{font-size:20px;line-height:1}

.footer{
  margin-top:var(--space-7);padding:var(--space-6) 0;border-top:1px solid var(--bs-border);
  color:var(--bs-muted);background:linear-gradient(180deg,var(--tint-primary),var(--tint-secondary))
}
.e-motion-gradient,.sensual-gradient,.smile-gradient{background:linear-gradient(135deg,var(--tint-primary) 0%,var(--tint-secondary) 100%)}
.soft-border{border:1px solid var(--bs-border)}
.shadow-soft{box-shadow:var(--bs-shadow)}
.section{margin:40px 0}
.max-w-prose{max-width:72ch}
.text-volt{color:var(--bs-primary)}
.bg-mint-tint{background:var(--tint-secondary)}
.bg-cobalt-tint{background:var(--tint-primary)}

figure{margin:0 0 var(--space-5)}
figcaption{margin-top:6px;color:#6B7280;font-size:.92rem}

@media(max-width:576px){
  .card-body{padding:calc(var(--space-4) + 2px)}
  .lead{margin-bottom:var(--space-3)}
  h2{margin-top:1.2em}
}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.footer{position:relative;overflow:hidden}
.footer::before{
  content:"";position:absolute;inset:-60% -20% auto -20%;height:240px;
  background:radial-gradient(600px 160px at 50% 100%,rgba(255,107,61,.14),transparent 70%),
             radial-gradient(400px 120px at 10% 90%,rgba(14,165,164,.12),transparent 70%);
  pointer-events:none
}
.footer .container{position:relative;z-index:1}
.footer .row{row-gap:1.25rem}
.footer .d-inline-flex.text-decoration-none{padding:.35rem .6rem;border-radius:14px;transition:background-color .15s ease,transform .12s ease}
.footer .d-inline-flex.text-decoration-none:hover{background:var(--tint-primary);transform:translateY(-1px)}
.footer p{margin-bottom:.75rem}
.footer .text-body{color:#111827!important;font-weight:900;letter-spacing:.2px}
.footer .text-body-secondary{color:#6B7280!important}
.footer a{text-decoration:none}
.footer a.link-secondary{
  color:#6B7280!important;transition:color .15s ease,background-color .15s ease,transform .12s ease;
  border-radius:10px;padding:.25rem .35rem
}
.footer a.link-secondary:hover{color:var(--bs-primary)!important;background:var(--tint-primary);transform:translateY(-1px)}
.footer a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.footer .border-top{border-top:1px solid var(--bs-border)!important}
.footer a[aria-label="Till toppen"]{
  display:inline-flex;align-items:center;gap:.15rem;background:#fff;border:1px solid var(--bs-border);
  padding:.35rem .6rem;border-radius:999px;font-weight:800;box-shadow:0 6px 18px rgba(17,24,39,.06)
}
.footer a[aria-label="Till toppen"]:hover{background:var(--tint-primary);border-color:var(--focus);color:var(--bs-primary)!important}
.footer a[aria-label="Till toppen"] i{font-size:1.1rem;line-height:1}

.table{
  --tbl-border:#E2E6ED;--tbl-head-bg:linear-gradient(180deg,var(--steel-50),var(--steel-100));
  --tbl-head-text:#0F172A;--tbl-row-hover:#FFF4ED;--tbl-stripe:#F7F9FC;--tbl-shadow:0 8px 26px rgba(17,24,39,.08);--tbl-focus:var(--focus);
  width:100%;background:#fff;border:1px solid var(--tbl-border)!important;border-radius:16px;overflow:hidden;box-shadow:var(--tbl-shadow);margin-bottom:1.25rem
}
.table th,.table td{padding:.9rem 1rem;vertical-align:middle;border-color:var(--tbl-border)!important}
.table thead th{
  background:var(--tbl-head-bg);color:var(--tbl-head-text);font-weight:900;letter-spacing:.2px;
  border-bottom:1px solid var(--tbl-border)!important;position:sticky;top:0;z-index:2
}
.table tbody td:first-child{font-weight:900;color:#0B1220}
.table.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--tbl-stripe);color:inherit}
.table tbody tr:hover>*{background:var(--tbl-row-hover)!important}
.table td:nth-last-child(-n+2){line-height:1.6}
.table td:nth-child(2),.table td:nth-child(3){white-space:nowrap}
.table i[class^="bi-"],.table i[class*=" bi-"]{margin-right:.35rem}
.table caption{caption-side:top;padding:.75rem 1rem 0;color:#6B7280;font-size:.95rem}
.table :where(th,td):focus-within{outline:3px solid var(--tbl-focus);outline-offset:-3px}
@media(max-width:640px){
  .table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .table thead th{top:0}
  .table::-webkit-scrollbar{height:10px}
  .table::-webkit-scrollbar-track{background:#F3F4F6;border-radius:999px}
  .table::-webkit-scrollbar-thumb{background:#E5E7EB;border-radius:999px;border:2px solid #F3F4F6}
}

:root,html,body,[data-bs-theme],[data-bs-theme="dark"]{
  color-scheme:light!important;
  --bs-body-bg:#FFFFFF!important;
  --bs-body-color:#212529!important;
  --bs-emphasis-color:#000!important;
  --bs-border-color:var(--bs-border)!important;
  --bs-link-color:var(--link)!important;
  --bs-link-hover-color:var(--link-hover)!important;
}
html,body,[data-bs-theme]{background:var(--bs-bg)!important;color:var(--bs-body)!important}

/* Storkök-specifika komponenter */
.brushed-steel{
  background:
    linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,.2)),
    repeating-linear-gradient(-8deg,rgba(255,255,255,.3) 0,rgba(255,255,255,.3) 2px,rgba(0,0,0,.04) 3px,rgba(0,0,0,.04) 4px),
    linear-gradient(180deg,var(--steel-100),var(--steel-200));
  border:1px solid var(--bs-border);border-radius:16px;box-shadow:var(--bs-shadow)
}
.panel-control{
  display:flex;gap:10px;align-items:center;border:1px solid var(--bs-border);border-radius:12px;padding:6px 10px;background:linear-gradient(180deg,#fff,#F7F9FC)
}
.panel-control .led{width:10px;height:10px;border-radius:999px;box-shadow:0 0 0 2px rgba(0,0,0,.06) inset,0 0 0 2px #fff}
.panel-control .led.ok{background:#16A34A}
.panel-control .led.warn{background:#F59E0B}
.panel-control .led.err{background:#DC2626}
.panel-control .dial{flex:1;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--steel-200),var(--steel-300))}
.panel-control .dial .pos{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--bs-primary),var(--steam));width:40%}

.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:700px){.spec-grid{grid-template-columns:repeat(4,1fr)}}
.spec-tile{
  background:#fff;border:1px solid var(--bs-border);border-radius:14px;padding:12px 14px;
  display:flex;flex-direction:column;gap:4px
}
.spec-tile .lbl{font-size:.8rem;color:var(--bs-muted);letter-spacing:.25px}
.spec-tile .val{font-weight:900;color:#0B1220}

.badge-haccp{background:#ECFDF5;border:1px solid #A7F3D0;color:#065F46}
.badge-energi{background:#F0FDF4;border:1px solid #A7F3D0;color:#166534}
.badge-ip{background:#EFF6FF;border:1px solid #BFDBFE;color:#1D4ED8}
.badge-garanti{background:#FFFBEB;border:1px solid #FDE68A;color:#92400E}

.tag-temperatur,.tag-volym,.tag-energi{
  display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-weight:800;font-size:.82rem;border:1px solid var(--bs-border);background:#fff
}
.tag-temperatur{color:#B45309;background:linear-gradient(180deg,#FFF7ED,#FFEDD5)}
.tag-volym{color:#1D4ED8;background:linear-gradient(180deg,#EFF6FF,#DBEAFE)}
.tag-energi{color:#065F46;background:linear-gradient(180deg,#ECFDF5,#D1FAE5)}

.icon{
  width:18px;height:18px;display:inline-block;background:#111;mask-size:contain;mask-repeat:no-repeat;mask-position:center
}
.icon-flame{background:var(--gas);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M13.5 2s.5 2.5-1 4.5C11 9 15 9.5 15 14a5 5 0 1 1-10 0c0-4 3-6 5-8 1.5-1.5 3.5-4 3.5-4z"/></svg>')}
.icon-steam{background:var(--steam);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M7 20c3-2 0-4 3-6 3-2 0-4 3-6M12 20c3-2 0-4 3-6 3-2 0-4 3-6"/></svg>')}
.icon-plug{background:var(--electric);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M7 2h2v6H7V2zm8 0h2v6h-2V2zM6 9h12v4a6 6 0 1 1-12 0V9z"/></svg>')}
.icon-snow{background:var(--chill);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M11 2h2v20h-2zM3.5 7.5l1.4-1.4L12 13.3l7.1-7.2 1.4 1.4L13.3 14.7 20.5 22l-1.4 1.4L12 16.1 4.9 23.4 3.5 22l7.2-7.3L3.5 7.5z"/></svg>')}
.icon-wash{background:var(--wash);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M3 5h18l-2 14H5L3 5zm3 3a3 3 0 1 0 6 0H6z"/></svg>')}

.gauge-temp{
  height:10px;border-radius:999px;background:linear-gradient(90deg,#60A5FA,#22D3EE,#22C55E,#F59E0B,#EF4444);
  position:relative;overflow:hidden
}
.gauge-temp .needle{position:absolute;top:0;bottom:0;width:2px;background:#111827;left:60%}

.rating-chef{display:inline-flex;gap:2px;align-items:center}
.rating-chef .hat{
  --sz:18px;width:var(--sz);height:var(--sz);display:inline-block;background:#111827;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="%23000" d="M20 26a12 12 0 1 1 24 0h4a8 8 0 1 1 0 16H16a8 8 0 1 1 0-16h4zm-2 20h28v8H18z"/></svg>') no-repeat center/contain
}
.rating-chef .hat.off{background:#D1D5DB}

.grid-floor{
  background:
    linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,.1)),
    radial-gradient(1000px 180px at 50% -10%,rgba(255,107,61,.08),transparent 70%),
    repeating-linear-gradient(0deg,transparent,transparent 24px,rgba(0,0,0,.05) 25px,transparent 26px),
    repeating-linear-gradient(90deg,transparent,transparent 24px,rgba(0,0,0,.05) 25px,transparent 26px)
}

.checklist{display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:700px){.checklist{grid-template-columns:1fr 1fr}}
.checklist .item{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--bs-border);border-radius:12px;padding:10px 12px}
.checklist .item .tick{width:18px;height:18px;border-radius:4px;background:#DCFCE7;border:1px solid #86EFAC}
.checklist .item strong{font-weight:900}

#produkter .card > a{
  display:flex;
  align-items:center;
  justify-content:center;
  height:320px;
  background:linear-gradient(180deg,#fff,#F8FAFC);
}

#produkter .card > a > img.card-img-top{
  max-height:100%;
  max-width:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:center;
  display:block;
}

@media (max-width:480px){
  #produkter .card > a{height:220px}
}

/* Etiketter för driftstyp */
.badge-gas{background:linear-gradient(180deg,#FFF7ED,#FFEDD5);color:#9A3412;border:1px solid #FED7AA}
.badge-el{background:linear-gradient(180deg,#FEF3C7,#FDE68A);color:#92400E;border:1px solid #FDE68A}
.badge-ånga{background:linear-gradient(180deg,#ECFEFF,#CFFAFE);color:#075985;border:1px solid #BAE6FD}

/* Snabbfilter för kapacitet/linje */
.filter-rail{display:flex;flex-wrap:wrap;gap:8px}
.filter-rail .chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--bs-border);background:#fff;font-weight:700}
.filter-rail .chip.is-active{background:var(--tint-primary);border-color:var(--focus);color:#7A2E0E}

/* Spec-tabell med låsta etikettkolumner */
.table-spec{table-layout:fixed}
.table-spec th:first-child,.table-spec td:first-child{position:sticky;left:0;background:#fff;z-index:1}
.table-spec th:first-child{background:var(--steel-50)}

/* CTA-band för offert */
.offer-cta{
  display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;border:1px solid var(--bs-border);
  background:linear-gradient(180deg,#FFFFFF,#F9FAFB)
}
.offer-cta .cta-icon{width:22px;height:22px;background:var(--bs-primary);mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M3 7h18v10H3zM5 5h14v2H5zM8 9h8v2H8zM8 12h6v2H8z"/></svg>') no-repeat center/contain}

/* Styrplatta med stora knappar */
.control-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(min-width:640px){.control-grid{grid-template-columns:repeat(4,1fr)}}
.control-grid .btn{display:flex;align-items:center;justify-content:center;min-height:44px}

/* Hjälputseenden */
.shadow-hard{box-shadow:0 12px 30px rgba(10,15,26,.16)}
.outline-focus:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
