/* Gravferdsguiden — /hent-tilbud/ comparison browser.
   Single-column layout sized for the theme's 820px content column
   (theme.json contentSize) — no sidebar, filters on top, stacked cards.
   Scoped under .gg-tilbud. Self-contained. */

.gg-tilbud{
  --tb-bg:#f4f1ea;
  --tb-panel:#fff;
  --tb-ink:#1c2530;
  --tb-muted:#5d6b7a;
  --tb-line:#e4e8ec;
  --tb-accent:#0e3d40;
  --tb-accent-soft:#eaf2f1;
  --tb-gold:#f4c542;
  --tb-gold-ink:#3a2f00;
  --tb-rank:#e8a04a;
  --tb-rank-ink:#4a3200;
  color:var(--tb-ink);
  font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  margin:24px 0 32px;
}
.gg-tilbud *,.gg-tilbud *::before,.gg-tilbud *::after{box-sizing:border-box}

.gg-tilbud-shell{
  background:var(--tb-bg);
  border-radius:18px;
  padding:16px;
  box-shadow:0 1px 3px rgba(0,0,0,.04),0 12px 36px rgba(14,61,64,.07);
}
@media(min-width:640px){.gg-tilbud-shell{padding:20px}}

/* filter bar on top */
.gg-tilbud-filters{
  display:flex;flex-wrap:wrap;gap:12px 16px;align-items:end;
  background:var(--tb-panel);border:1px solid var(--tb-line);border-radius:14px;
  padding:14px 16px;margin:0 0 16px;
}
.gg-tilbud-field{flex:1 1 200px;margin:0}
.gg-tilbud-field label{display:block;font-size:13px;font-weight:650;margin:0 0 5px}
.gg-tilbud-field input,.gg-tilbud-field select{
  width:100%;padding:10px 12px;border:1px solid #cfdad7;border-radius:10px;
  font:inherit;background:#fff;color:var(--tb-ink);
}
.gg-tilbud-field input:focus-visible,.gg-tilbud-field select:focus-visible{
  outline:3px solid var(--tb-gold);outline-offset:1px;border-color:var(--tb-accent);
}
.gg-tilbud-check{
  display:flex;gap:8px;align-items:center;flex:1 1 100%;
  font-size:13px;line-height:1.4;color:var(--tb-muted);padding-bottom:2px;
}
@media(min-width:640px){.gg-tilbud-check{flex:0 1 auto;padding-bottom:12px}}
.gg-tilbud-check input{width:1rem;height:1rem;flex:0 0 auto;margin:0}

/* main column */
.gg-tilbud-main{min-width:0}
.gg-tilbud-head{margin:0 0 12px}
.gg-tilbud-head h2{font-size:20px;margin:0 0 4px;font-weight:650}
.gg-tilbud-head p{margin:0;font-size:14px;color:var(--tb-muted)}

.gg-tilbud-list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}

/* card: one row of rank + name + price, actions underneath */
.gg-tilbud-card{
  background:var(--tb-panel);border:1px solid var(--tb-line);border-radius:14px;
  padding:16px;box-shadow:0 4px 18px rgba(17,49,48,.05);
}
.gg-tilbud-card-top{display:flex;gap:12px;align-items:flex-start}

.gg-tilbud-rank{
  flex:0 0 auto;width:30px;height:30px;border-radius:999px;margin-top:2px;
  background:var(--tb-rank);color:var(--tb-rank-ink);font-size:14px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
}

.gg-tilbud-info{flex:1 1 auto;min-width:0}
.gg-tilbud-name{font-size:17px;font-weight:700;margin:0 0 3px;line-height:1.3}
.gg-tilbud-meta{font-size:13px;color:var(--tb-muted);margin:0;line-height:1.45}
.gg-tilbud-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.gg-tilbud-tag{
  font-size:11px;font-weight:650;padding:3px 8px;border-radius:999px;
  background:var(--tb-accent-soft);color:var(--tb-accent);
}
.gg-tilbud-tag--warn{background:#faf0e4;color:#7a5a20}

.gg-tilbud-price{flex:0 0 auto;text-align:right;max-width:44%}
.gg-tilbud-price-val{font-size:24px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}
.gg-tilbud-price-unit{font-size:12px;color:var(--tb-muted);margin-top:3px}

.gg-tilbud-actions{
  display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;
  border-top:1px solid var(--tb-line);
}
.gg-tilbud-btn{
  flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;
  border-radius:999px;padding:10px 18px;font:inherit;font-size:15px;font-weight:700;
  text-decoration:none!important;cursor:pointer;border:2px solid transparent;text-align:center;
  white-space:nowrap;
}
@media(min-width:640px){.gg-tilbud-btn{flex:0 1 auto;min-width:150px}}
.gg-tilbud-btn-primary{background:var(--tb-gold);color:var(--tb-gold-ink);border-color:var(--tb-gold)}
.gg-tilbud-btn-primary:hover{filter:brightness(1.04)}
.gg-tilbud-btn-ghost{background:#fff;color:var(--tb-accent);border-color:var(--tb-accent)}
.gg-tilbud-btn-ghost:hover{background:var(--tb-accent-soft)}

.gg-tilbud-foot{
  margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.65);
  border:1px solid var(--tb-line);font-size:12.5px;color:var(--tb-muted);line-height:1.5;
}
.gg-tilbud-foot a{color:var(--tb-accent)}

.gg-tilbud-empty,.gg-tilbud-error,.gg-tilbud-loading{
  background:var(--tb-panel);border:1px dashed var(--tb-line);border-radius:14px;
  padding:28px 22px;text-align:center;color:var(--tb-muted);
}
.gg-tilbud-loading::before{
  content:"";display:block;width:28px;height:28px;margin:0 auto 12px;
  border:3px solid var(--tb-line);border-top-color:var(--tb-accent);border-radius:50%;
  animation:gg-tb-spin .8s linear infinite;
}
@keyframes gg-tb-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.gg-tilbud-loading::before{animation:none}}

.gg-tilbud-fallback,.gg-tilbud-fallback-note{font-size:14px;color:var(--tb-muted)}
.gg-tilbud-fallback ol{margin:10px 0 0;padding-left:22px}
.gg-tilbud-fallback li{margin:6px 0}

/* page chrome around the widget */
.gg-tilbud-page .gg-tilbud-hero{text-align:center;margin:0 0 8px;padding:8px 0 0}
.gg-tilbud-page .gg-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--p-accent,#0e3d40);font-weight:650;margin:0 0 10px}
.gg-tilbud-page .gg-tilbud-hero h1{font-size:32px;margin:0 0 10px;line-height:1.15}
.gg-tilbud-page .gg-lead{max-width:640px;margin:0 auto 6px}
.gg-tilbud-page .gg-tilbud-lead{margin-top:40px;padding-top:8px;border-top:1px solid var(--p-line,#e4e8ec)}
.gg-tilbud-page .gg-tilbud-lead h2{margin-top:0}
.gg-tilbud-page .gfg-lead-card{max-width:none;margin:0}
