/* Forum pages use the shared Polaris shell and type system. */
.forum-page{min-width:0}.forum-page .forum-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;margin-bottom:12px;background:#1a2b42;color:#fff}.forum-page .forum-toolbar a{color:#fff}.forum-page .forum-toolbar .btn{background:#c9a84c;color:#13202e;border-color:#c9a84c;min-height:36px;padding:7px 12px;font-size:14px}.forum-page .forum-nav{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px}.forum-page .forum-search{display:flex;gap:8px;margin-bottom:12px}.forum-page .forum-search input{min-width:0;flex:1;padding:9px 11px;border:1px solid #cfd5db;border-radius:2px}.forum-page .forum-search button{padding:9px 14px;border:0;background:#1a2b42;color:#fff}.forum-page .sec,.forum-page .hero,.forum-page .closing{background:#fff;border:1px solid #cfd5db;border-radius:3px;margin:0 0 12px;padding:18px 20px}.forum-page .hero{border-top:3px solid #c9a84c}.forum-page .hero h1,.forum-page h1{font:700 clamp(24px,2.5vw,36px)/1.1 var(--head);max-width:none}.forum-page h2{font:700 19px/1.25 var(--head)}.forum-page .lead,.forum-page .intro{font-size:15px;line-height:1.5;color:#4a5560}.forum-page .trust,.forum-page .sak,.forum-page .meta,.forum-page .tom{font-size:13px}.forum-page .sec-in{display:block}.forum-page .rail{display:none}.forum-page .body{min-width:0}.forum-page .rum-lista a,.forum-page .vanta-lista .rad,.forum-page .trad-lista a{padding:12px 4px;font-size:14px}.forum-page .rum-namn,.forum-page .trad-lista strong,.forum-page .vanta-lista strong{font-size:16px}.forum-page .lista-huvud{font-size:12px}.forum-page .mono{font-family:var(--mono)}.forum-page .closing{background:#1a2b42;color:#fff}.forum-page .closing .btn{background:#c9a84c;color:#13202e;border-color:#c9a84c}.forum-page .facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.forum-page .facts>div{border-top:1px solid #dce2e7;padding-top:9px}.forum-page .facts dt{font-weight:700;font-size:12px}.forum-page .facts dd{margin:2px 0 0;font-size:14px}.forum-page .forum-legal{font-size:14px;line-height:1.6}.forum-page .forum-legal h2{margin-top:24px}.forum-page .forum-legal p{margin:8px 0}.forum-page #f-status:not(:empty){color:#8b3200}.forum-page .form input,.forum-page .form textarea,.forum-page .form select,.forum-page .svarsruta textarea{font-size:14px}.forum-page .kram{margin-top:0}.forum-page .kram a{font-size:13px}.forum-page .f-panel{font-size:14px}
.lista-huvud, .rad {
  display: grid;
  gap: 8px 32px;
  align-items: baseline;
}
.lista-huvud {
  margin: 28px 0 0;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--ink);
  font-weight: 700;
  color: var(--ink-3);
  font-size: 1rem;
}
.rum-huvud { grid-template-columns: minmax(12rem, 16rem) minmax(0, 1.1fr) minmax(0, 1.3fr); }
.vanta-huvud { grid-template-columns: 9rem minmax(0, 1.5fr) 8rem 11rem; }
.trad-huvud { grid-template-columns: minmax(0, 1.7fr) 9rem 5.5rem minmax(11rem, 1fr) 10.5rem; }

.rum-lista, .vanta-lista, .trad-lista {
  list-style: none;
  margin: 0;
  padding: 0;
}
.rum-lista li, .vanta-lista li, .trad-lista li { border-bottom: 1px solid var(--rule); }
.rum-lista a, .vanta-lista .rad, .trad-lista a, .trad-lista .rad {
  display: grid;
  gap: 8px 32px;
  align-items: baseline;
  padding: 20px 0;
  text-decoration: none;
  position: relative;
}
.rum-lista a { grid-template-columns: minmax(12rem, 16rem) minmax(0, 1.1fr) minmax(0, 1.3fr); }
.vanta-lista .rad { grid-template-columns: 9rem minmax(0, 1.5fr) 8rem 11rem; }
.trad-lista a, .trad-lista .rad { grid-template-columns: minmax(0, 1.7fr) 9rem 5.5rem minmax(11rem, 1fr) 10.5rem; }
.rum-lista a:hover { background: #fff; }
.trad-lista a:hover strong, .vanta-lista a:hover strong { text-decoration: underline; text-decoration-thickness: 2px; }

.rum-namn { display: block; font-family: var(--head); font-weight: 700; font-size: 1.5rem; line-height: 1.2; overflow-wrap: anywhere; }
.rum-antal, .meta { color: var(--ink-2); overflow-wrap: anywhere; }
.rum-mening { margin: 0; color: var(--ink-2); overflow-wrap: anywhere; }
.senaste strong, .trad-lista strong, .vanta-lista strong {
  display: block;
  font-family: var(--head);
  font-weight: 600;
  font-size: 1.28rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.senaste span, .trad-lista .meta { display: block; margin-top: 4px; }
.vanta-lista .meta { display: block; }
.rum-i-rad { display: block; margin-top: 4px; }
.kol {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.vant { color: var(--gold-ink); font-weight: 700; }
.klar { font-weight: 700; }
.tom { margin: 18px 0 0; color: var(--ink-2); }

.rum-topp {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px 24px;
}
.kram { margin: 18px 0 0; }
.kram a { font-family: var(--mono); font-size: 1rem; }

.inlagg { margin-top: 36px; padding-top: 8px; }
.inlagg .vem {
  margin: 0 0 12px;
  font-family: var(--mono);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .03em;
}
.inlagg p { overflow-wrap: anywhere; white-space: pre-wrap; }
.f-image { display: block; max-width: 100%; height: auto; margin: 16px 0; }
.provat { margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--rule); }
.provat h2, .svarsruta h2, .f-panel > h2 {
  font-family: var(--mono);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .04em;
}
.f-panel > h2 { margin-top: 36px; }
.daniel {
  margin-top: 28px;
  padding: 28px 28px 22px;
  background: #fff;
  border: 2px solid var(--ink);
}
.daniel .vem {
  font-family: var(--head);
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  font-weight: 700;
  letter-spacing: 0;
  color: var(--gold-ink);
}
.ovrigt { margin-top: 8px; padding-top: 22px; border-top: 1px solid var(--rule); }
.citat {
  margin: 0 0 16px;
  padding: 0 0 0 1.25rem;
  border-left: 2px solid var(--ink);
}
.citat p { margin: 0; }
.citat .namn { font-family: var(--mono); font-size: 1rem; font-weight: 700; margin-bottom: 6px; }
.prompt { margin: 18px 0; padding-top: 12px; border-top: 1px solid var(--rule); }
.prompt p { margin: 8px 0 0; }
.atgarder { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 16px 0 0; }
.atgarder button {
  min-height: 44px;
  padding: 10px 0;
  background: none;
  border: 0;
  font-family: var(--mono);
  font-size: 1rem;
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: .2em;
  cursor: pointer;
}
.svarsruta { margin-top: 36px; padding-top: 22px; border-top: 2px solid var(--ink); }

.form { margin-top: 8px; max-width: min(68rem, 100%); }
.form label, .svarsruta label {
  display: block;
  margin: 22px 0 8px;
  font-family: var(--head);
  font-weight: 600;
  font-size: 1.15rem;
}
.form input[type="text"],
.form input[type="search"],
.form input[type="email"],
.form input[type="password"],
.form textarea,
.form select,
.svarsruta textarea,
.f-panel textarea {
  width: 100%;
  min-height: 52px;
  padding: 12px 14px;
  font: inherit;
  color: var(--ink);
  background: #fff;
  border: 2px solid var(--ink);
  border-radius: 0;
}
.form textarea, .svarsruta textarea, .f-panel textarea { min-height: 11rem; line-height: 1.5; display: block; }
.sak { margin: 8px 0 0; color: var(--ink-2); }
.varning { margin-top: 28px; padding-top: 14px; border-top: 3px solid var(--ink); }
.varning .mono { margin: 0; font-size: 1rem; font-weight: 700; letter-spacing: .04em; color: var(--ink); }
.varning p { margin: 8px 0 0; }
.form .btn, .svarsruta .btn, .f-panel .btn { margin-top: 22px; }
.f-panel .btn + .btn { margin-left: 12px; }
.form label.fil-knapp, .svarsruta label.fil-knapp {
  display: inline-flex;
  width: auto;
  margin: 0;
  font-size: 1.05rem;
}
.grans { margin-top: 18px; }
.form label.rad-check {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--body);
  font-weight: 400;
  font-size: 1rem;
}
#f-codes { list-style: none; margin: 12px 0 0; padding: 0; }
#f-codes li { padding: 10px 0; border-bottom: 1px solid var(--rule); font-family: var(--mono); }
.f-post { margin: 22px 0; padding-top: 18px; border-top: 1px solid var(--rule); }
.f-post h3 { font-size: 1.35rem; margin-bottom: 8px; overflow-wrap: anywhere; }
.f-post p { overflow-wrap: anywhere; white-space: pre-wrap; }
#f-status { margin: 0; }
#f-status:not(:empty) { margin-top: 16px; font-family: var(--body, inherit); font-size: 1rem; }
.f-panel textarea[readonly] { min-height: 6rem; }

.fil { position: relative; margin-top: 8px; }
.fil-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.fil-knapp { margin-top: 0; }
.fil-input:focus-visible + .fil-knapp { outline: 3px solid var(--ink); outline-offset: 3px; }

.byggt-rad { text-align: center; margin-top: 18px; }
.byggt-av { display: inline-flex; align-items: center; gap: .4em; color: var(--bone); font-size: 1rem; }
.byggt-av img { width: 12px; height: 20px; flex: 0 0 auto; }

@media (max-width: 1100px) {
  .lista-huvud { display: none; }
  .kol {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    display: block;
    margin-bottom: 4px;
    color: var(--ink-3);
    font-size: 1rem;
  }
  .rum-lista a, .vanta-lista .rad, .trad-lista a, .trad-lista .rad { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 900px) {
  .forum-nav { display: flex; }
  .forum-page .sec-in { grid-template-columns: 1fr; }
  .btn-top { margin-left: 0; }
  .sok { flex-basis: 100%; }
}
@media (max-width: 520px) {
  .btn-top { display: inline-flex; width: 100%; }
  .hero-go .btn, .form .btn, .svarsruta .btn, .rum-topp .btn, .f-panel .btn { width: 100%; }
  .f-panel .btn + .btn { margin-left: 0; }
  .daniel { padding: 22px 16px 16px; }
}
