:root{
  --wood: #14305e;
  --wood-deep: #0c1f42;
  --gold: #f5b515;
  --gold-deep: #c98a06;
  --bavaria-blue: #1f6fc5;
  --bavaria-white: #f4f8fc;
  --fg: #ffffff;
  --muted: #cfd9ea;
  --line: #2c4a7c;
  --mark-bg: #f5b515;
  --mark-fg: #1a1200;
  box-sizing: border-box;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
*{box-sizing:inherit}
html{scroll-padding-top: env(safe-area-inset-top, 0px);}
body{
  margin:0;
  min-height:100vh;
  color:var(--fg);
  font:1rem/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  background-color: var(--wood);
  background-image:
    repeating-linear-gradient(90deg, rgba(0,0,0,.22) 0 2px, transparent 2px 72px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 34px, transparent 34px 72px),
    linear-gradient(180deg, var(--wood-deep), var(--wood) 12%, var(--wood) 88%, var(--wood-deep));
}
.band{
  height: 30px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Crect width='48' height='48' fill='%23f4f8fc'/%3E%3Cpolygon points='24,0 48,24 24,48 0,24' fill='%231f6fc5'/%3E%3C/svg%3E") repeat-x center / 32px 32px;
  border-top: 3px solid var(--gold);
  border-bottom: 3px solid var(--gold);
  box-shadow: 0 4px 14px rgba(0,0,0,.35);
}
header.top{
  padding: .9rem 1rem;
  text-align:center;
}
header.top a{
  color: var(--gold);
  font-weight:700;
  text-decoration:none;
  font-size:.95rem;
}
header.top a:hover,header.top a:focus-visible{color:#fff;text-decoration:underline;}
a{color:#ffd75e;}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:2px;}
.wrap{
  max-width:46rem;
  margin:0 auto;
  padding:1.25rem 1rem 3rem;
}
h1{
  font-size:1.7rem;
  line-height:1.25;
  margin:1rem 0 .35rem;
  color:#fff;
  text-shadow: 0 2px 0 rgba(0,0,0,.25);
}
h2{
  font-size:1.2rem;
  margin:2rem 0 .5rem;
  color: var(--gold);
  border-bottom: 1px solid var(--line);
  padding-bottom:.3rem;
}
p,li{max-width:70ch}
.upd{color:var(--muted);font-size:.9rem;}
mark{
  background:var(--mark-bg);
  color:var(--mark-fg);
  padding:.05rem .3rem;
  border-radius:3px;
  font-weight:600;
}
.note{
  border-left:4px solid var(--gold);
  padding:.7rem 1rem;
  background: rgba(245,181,21,.10);
  margin:1.2rem 0;
  border-radius: 0 8px 8px 0;
}
table{
  border-collapse:collapse;
  width:100%;
  display:block;
  overflow-x:auto;
  margin: .75rem 0 1.25rem;
}
th,td{
  border:1px solid var(--line);
  padding:.55rem .65rem;
  text-align:left;
  vertical-align:top;
}
th{background: rgba(255,255,255,.06); color:#fff;}
td{background: rgba(255,255,255,.03);}
strong{color:#fff;}
footer.site{
  padding:1.4rem 1rem 1.6rem;
  font-size:.95rem;
  background-color: var(--wood-deep);
}
footer.site nav{max-width:46rem;margin:0 auto;text-align:center;}
footer.site ul{
  list-style:none;
  margin:0 auto .6rem;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.25rem 1.25rem;
}
footer.site li{margin: 0 .6rem;}
footer.site a{
  display:inline-block;
  padding:.5rem .05rem;
  min-height:44px;
  color: var(--gold);
  text-decoration:none;
  font-weight:600;
  font-size:.9rem;
}
footer.site a:hover,footer.site a:focus-visible{color:#fff;text-decoration:underline;}
footer.site p.meta{
  text-align:center;
  color:var(--muted);
  font-size:.8rem;
  margin:.4rem 0 0;
  line-height:1.5;
}
@media print{
  header.top,footer.site,.band{display:none}
  body{background:#fff;color:#000}
  mark{background:none;border:1px solid #999}
}
