/* Tillägg för serverversionen: inloggning, personal- och adminvyer, kommentarer. */

[hidden] { display: none !important; }

/* Inloggning och registrering */
.auth-wrap { display: flex; justify-content: center; padding: 2rem 0; }
.auth-card { width: 100%; max-width: 560px; }
.auth-card h1 { margin-bottom: .75rem; }
fieldset.field { border: 1px solid var(--border); border-radius: 10px; padding: .5rem .75rem .6rem; margin: 0 0 .75rem; }
fieldset.field legend { font-size: .85rem; color: var(--muted); font-weight: 600; padding: 0 .3rem; }
.radio { display: flex; align-items: center; gap: .5rem; padding: .2rem 0; cursor: pointer; }
.radio input { width: auto; }
.form-fel { color: var(--danger); font-size: .9rem; min-height: 1.2em; margin: 0; }
.form-fel:empty { display: none; }
.integritet { max-height: 50vh; overflow-y: auto; padding-right: .5rem; margin-bottom: 1rem; }
details .integritet { max-height: none; }
.integritet h2 { margin-top: 0; }
.integritet h3 { margin-top: 1rem; }
details.card summary { cursor: pointer; }

/* Sparstatus i toppraden */
.sparstatus { font-size: .8rem; color: var(--muted); margin-left: auto; white-space: nowrap; }
.sparstatus.fel, .sparstatus.konflikt { color: var(--danger); font-weight: 600; }
.sparstatus + .ui-knapp { margin-left: .5rem; }
.sparstatus:empty + .ui-knapp { margin-left: auto; }

/* Navigering */
.nav-badge {
  display: inline-flex; align-items: center; justify-content: center; min-width: 1.2rem; height: 1.2rem;
  padding: 0 .3rem; border-radius: 999px; font-size: .72rem; font-weight: 700;
  background: var(--danger); color: #fff; margin-left: .25rem; vertical-align: middle;
}

/* Visar någon annans plan */
.visar-banner {
  display: flex; justify-content: space-between; align-items: center; gap: .75rem; flex-wrap: wrap;
  background: var(--accent-soft); border: 1px solid var(--border); border-radius: var(--radius);
  padding: .6rem .9rem; margin-bottom: 1rem;
}
body.laslage [data-action="ny"], body.laslage [data-action="redigera"], body.laslage [data-action="rensa"],
body.laslage [data-action="importera-text"], body.laslage label:has(input[data-change="importera"]) { display: none !important; }
body.laslage select[data-change="kurs-status"] { opacity: .75; }
.notice-info { border-left: 4px solid var(--accent); }

/* Personer */
.mini-bar { display: inline-block; width: 90px; height: 8px; border-radius: 999px; background: var(--accent-soft); overflow: hidden; vertical-align: middle; margin-right: .4rem; }
.mini-bar span { display: block; height: 100%; background: var(--s2-fg); }
td .badge { margin-left: .3rem; }
td.num .btn { margin-left: .25rem; }
.lank-rad { display: flex; gap: .5rem; align-items: center; margin-top: .4rem; }
.lank-rad input { flex: 1; min-width: 0; font-size: .8rem; font-family: ui-monospace, Consolas, monospace; }
.lank-rad.ny input { border-color: var(--accent); }

/* Kommentarer */
.kom-panel { margin: 1rem 0; }
.kom-panel h3 { margin-top: 0; display: flex; align-items: center; gap: .4rem; }
.kom-trad { border-top: 1px solid var(--border); padding: .6rem 0; }
.kom-trad:first-of-type { border-top: none; }
.kom-svar { margin: .5rem 0 0 1.25rem; padding-left: .75rem; border-left: 3px solid var(--accent-soft); }
.kom-head { display: flex; gap: .5rem; align-items: baseline; flex-wrap: wrap; }
.kom-text { white-space: pre-wrap; overflow-wrap: anywhere; margin: .2rem 0; }
.kom-actions { display: flex; gap: .25rem; }
.kom-actions .btn.link { padding: 0 .3rem; }
.danger-text { color: var(--danger) !important; }
.kom-form { display: grid; gap: .4rem; margin-top: .5rem; }
.kom-form textarea { min-height: 3rem; }
.kom-chip {
  display: inline-flex; align-items: center; gap: .2rem; font-size: .72rem; font-weight: 600;
  color: var(--accent); background: var(--accent-soft); border-radius: 999px; padding: .05rem .4rem; margin-left: .3rem;
}
.danger-card { border-color: var(--danger); }

/* Utskrift / PDF */
.print-only { display: none; }
@media print {
  .print-only { display: block; font-size: .85rem; color: #555; margin: 0 0 .5rem; }
}
