/* BoosterBox — formular-modal (samme designsprog som resten af sitet) */
.bb-modal[hidden]{ display:none; }
.bb-modal{
  position:fixed; inset:0; z-index:200;
  display:flex; align-items:center; justify-content:center;
  padding:clamp(16px, 4vw, 40px);
}
.bb-modal-backdrop{
  position:absolute; inset:0; background:rgba(4,6,10,.78);
  -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px);
}
.bb-modal-panel{
  position:relative; z-index:1;
  width:min(520px, 100%); max-height:90vh; overflow-y:auto;
  background:var(--panel, #121722); border:1px solid rgba(224,177,99,.3);
  border-radius:18px; padding:clamp(24px, 4vw, 36px);
  box-shadow:0 30px 80px rgba(0,0,0,.6);
}
.bb-modal-panel h2{ font-size:1.35rem; margin-bottom:6px; }
.bb-modal-sub{ color:var(--muted, #9aa4b2); font-size:.92rem; margin-bottom:20px; }
.bb-modal-close{
  position:absolute; top:12px; right:14px;
  background:none; border:none; color:var(--muted, #9aa4b2);
  font-size:1.7rem; line-height:1; cursor:pointer; padding:6px 10px; border-radius:8px;
}
.bb-modal-close:hover{ color:var(--text, #e9edf3); }

.bb-field{ margin-bottom:14px; }
.bb-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.bb-field label{
  display:block; font-size:.84rem; font-weight:500;
  color:var(--muted, #9aa4b2); margin-bottom:6px;
}
.bb-opt{ font-weight:400; opacity:.75; }
.bb-field input, .bb-field textarea{
  width:100%; padding:11px 13px;
  background:rgba(255,255,255,.04); color:var(--text, #e9edf3);
  border:1px solid var(--line, rgba(255,255,255,.08)); border-radius:10px;
  font-family:inherit; font-size:.95rem;
}
.bb-field input:focus, .bb-field textarea:focus{
  outline:none; border-color:var(--accent, #e0b163);
  background:rgba(255,255,255,.06);
}
.bb-field textarea{ resize:vertical; min-height:76px; }

/* honeypot — skjult for mennesker, synlig for bots */
.bb-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

.bb-consent{
  display:flex; gap:10px; align-items:flex-start;
  margin:16px 0 18px; font-size:.85rem; color:var(--muted, #9aa4b2); cursor:pointer;
}
.bb-consent input{ flex:none; margin-top:3px; width:16px; height:16px; accent-color:var(--accent, #e0b163); }

.bb-error{
  background:rgba(220,90,90,.12); border:1px solid rgba(220,90,90,.4);
  color:#ffb4b4; font-size:.88rem; padding:10px 13px; border-radius:9px; margin-bottom:14px;
}
.bb-error[hidden]{ display:none; }

.bb-submit{ width:100%; border:none; cursor:pointer; font-size:1rem; }
.bb-submit:disabled{ opacity:.6; cursor:default; transform:none; }

.bb-fallback{ margin-top:14px; text-align:center; font-size:.82rem; color:var(--muted, #9aa4b2); }

.bb-done{ text-align:center; padding:8px 0; }
.bb-done[hidden]{ display:none; }
.bb-done-mark{
  width:56px; height:56px; margin:0 auto 16px; border-radius:50%;
  display:grid; place-items:center; font-size:1.6rem;
  background:rgba(224,177,99,.14); color:var(--accent, #e0b163);
  border:1px solid rgba(224,177,99,.4);
}
.bb-done h3{ margin-bottom:8px; }
.bb-done p{ color:var(--muted, #9aa4b2); font-size:.94rem; margin-bottom:20px; }

@media (max-width:520px){
  .bb-row{ grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce){
  .bb-modal-backdrop{ backdrop-filter:none; -webkit-backdrop-filter:none; }
}
