:root {
  --papper: #FBFCF8;
  --linje: #B9D3C1;
  --linje-svag: #DCEADF;
  --blck: #1F2A44;
  --rod: #B3261E;
  --stampel: #5B3FA6;
  --grafit: #5E6672;
  --serif: Charter, "Bitstream Charter", "Sitka Text", "Iowan Old Style", Cambria, Georgia, serif;
  --mono: "DejaVu Sans Mono", Menlo, Consolas, monospace;
}
html { background: var(--papper); color: var(--blck); font: 17px/1.55 var(--serif); -webkit-text-size-adjust: 100%; }
body { margin: 0; }
.kort { max-width: 34rem; margin: 0 auto; padding: 2rem 1.25rem 3rem; }
.avsandare { color: var(--grafit); margin: 0 0 .4rem; font-size: .95rem; }
h1 { font-size: 1.75rem; line-height: 1.2; margin: 0 0 .8rem; font-weight: 600; }
h2 { font-size: 1.15rem; margin: 2.2rem 0 .6rem; font-weight: 600; }
p { margin: 0 0 1rem; }
.tyst { color: var(--grafit); font-size: .95rem; }
code { font-family: var(--mono); font-size: .85em; overflow-wrap: anywhere; }
a { color: var(--blck); text-decoration-color: var(--linje); text-underline-offset: .18em; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--stampel); outline-offset: 2px; }
form { margin: 1.5rem 0; }
label { display: block; font-weight: 600; margin-bottom: .3rem; }
.hjalp { color: var(--grafit); font-size: .92rem; margin: 0 0 .6rem; }
input[type=text] { box-sizing: border-box; width: 100%; font: 1.5rem/1.2 var(--mono); letter-spacing: .12em; padding: .55rem .7rem; border: 1px solid var(--linje); border-radius: 6px; background: #fff; color: var(--blck); text-transform: uppercase; }
input[type=file] { box-sizing: border-box; width: 100%; font: inherit; padding: .9rem; border: 1px dashed var(--linje); border-radius: 8px; background: #fff; }
input[type=file]::file-selector-button { font: inherit; margin-right: .8rem; padding: .45rem .8rem; border: 1px solid var(--linje); border-radius: 6px; background: var(--papper); color: var(--blck); }
button { display: block; width: 100%; margin-top: 1.1rem; padding: .85rem 1rem; font: 600 1.05rem/1.2 var(--serif); color: #fff; background: var(--stampel); border: 0; border-radius: 8px; cursor: pointer; }
.fel { color: var(--rod); border-left: 3px solid var(--rod); padding: .2rem 0 .2rem .8rem; margin: .8rem 0 0; }
.kvitto { border: 2px solid var(--stampel); border-radius: 6px; padding: .9rem 1.1rem; margin: 1.2rem 0; }
.kvitto p { margin: 0 0 .4rem; }
.kvitto p:last-child { margin: 0; }
.kvitto strong { color: var(--stampel); }
ul.senast { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--linje-svag); }
ul.senast li { display: flex; justify-content: space-between; gap: 1rem; padding: .5rem 0; border-bottom: 1px solid var(--linje-svag); }
ul.senast .namn { overflow-wrap: anywhere; }
ul.senast .status { color: var(--grafit); white-space: nowrap; text-align: right; }
ul.senast .status.bokford { color: var(--stampel); }
ul.ratt { padding-left: 1.2rem; margin: 0 0 1rem; }
ul.ratt li { margin: .2rem 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto; } }
