
/*
Vereinsfarben:
blau  #284980
grün  #77b554
*/

:root {
  /* Vereinsfarben */
  --verein-blau:  #284980;
  --verein-gruen: #77b554;

  /* Bootstrap Farbzuordnung */
  --bs-primary: var(--verein-blau) !important;
  --bs-primary-rgb: 40, 73, 128 !important;

  --bs-success: var(--verein-gruen) !important;
  --bs-success-rgb: 119, 181, 84 !important;

  /* Optional */
  --bs-link-color: var(--bs-primary) !important;
  --bs-link-hover-color: var(--bs-success) !important;
}

/* ======================================================================== */
/* Schriftart laden */
@font-face {
  font-display: swap;
  font-family: "Cairo";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/cairo-v31-latin-regular.woff2") format("woff2");
}

/* ======================================================================== */
/* Schriftart zuweisen */
body {
  font-family: Cairo, sans-serif !important;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: Cairo, sans-serif !important;
  font-weight: normal !important;
}

/* ======================================================================== */

/* Externe Links kennzeichnen – NUR Textlinks */
/* ====================================================== */
a.is-external::after {
  content: "\f1c5" !important;
  font-family: "bootstrap-icons" !important;
  font-size: 0.85em;
  margin-left: 0.25rem;
  display: inline-block;
  vertical-align: -0.125em;
}

/* AUSNAHME: Link enthält ein Bild → KEIN Icon */
a.is-external:has(img)::after {
  content: none !important;
}

/* AUSNAHME: explizite Social-Links */
a.is-external[href*="facebook.com"]::after,
a.is-external[href*="instagram.com"]::after {
  content: none !important;
}


/* ======================================================================== */
/* Abstand Seitentitel zu Seiteninhalt */
#t-61b9bb50c0a7c455878112 {
  margin-bottom: 3rem;
}

/* ======================================================================== */
/* RaceResult */

.RRReg { font-family: Cairo, sans-serif !important; }

.RRReg .RRReg_FatalError {
  text-align: left !important;
  padding: 0 !important;
  font-size: inherit !important;
}

.RRReg .RRReg_Nav {
  background-color: #0070ba !important;
}

.RRReg .RRReg_Nav > div > div.selected {
  background-color: var(--verein-blau) !important;
}

.RRReg .RRReg_Main { max-width: 1200px !important; }

.RRPublish > div.Tiles > div > div,
table.divDetailsParent div.divDetailsInner > div > div:first-child  {
  background-color: var(--verein-gruen) !important;
  border-top: 1px solid var(--verein-blau) !important;
  border-left: 1px solid var(--verein-blau) !important;
  border-right: 1px solid var(--verein-blau) !important;
  border-radius: 5px 5px 0 0 !important;
}

.RRPublish > div.Tiles > div {
  border: 1px solid var(--verein-blau) !important;
  border-radius: 5px !important;
}

.TileHeadText, .TilesList, #divRRPublish {
  font-size: 1.2rem;
  font-family: Cairo, sans-serif !important;
}

.RRPublish tr.Hover:hover { background-color: var(--verein-gruen) !important; }

.RRReg div.RRReg_EntryField .RRReg_FileField,
.RRReg div.RRReg_EntryField .RRReg_RadioGroup,
.RRReg div.RRReg_EntryField .RRReg_SignatureField,
.RRReg div.RRReg_EntryField input[type="text"],
.RRReg div.RRReg_EntryField select,
.RRReg div.RRReg_EntryField textarea {
  padding: 22px 10px 10px 10px !important;
}

@media (max-width: 600px) {
  .RRPublish > div.Tiles > div { margin-bottom: 2rem !important; }
}

.RRPublish {
  margin: 0 !important;
}

div.RRReg nav.RRReg_Nav div div.disabled {
	background-color: var(--verein-gruen);
}

div.RRReg_Buttons div button {
	background-color: var(--verein-blau);
}
/* ======================================================================== */
/* Easybook Button "Eintrag hinzufügen" */
#easybook a.sign { float: left; }

/* ======================================================================== */
/* Kontaktformular */
#contact-form > fieldset:nth-child(1) > legend { display: none; }

textarea#jform_contact_message { height: 200px; }

#jform_consentbox-lbl > a {
  text-decoration: underline !important;
  color: var(--verein-gruen);
}

.form-control,
#adminForm .controls > textarea,
#adminForm .controls > select,
#adminForm .controls > input[type="text"],
#adminForm .controls > input[type="email"] {
  font-size: 1.2rem !important;
  color: #000 !important;
}

.alert-info { --bs-alert-color: #000 !important; }

/* ======================================================================== */
/* Strecken-Cards */
.strecken-card {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.strecken-distanz {
  font-size: 2.2rem;
  margin-bottom: .25rem;
}

.strecken-typ {
  opacity: .85;
  margin-bottom: 1.25rem;
}

.strecken-facts {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem 0;
}

.strecken-facts li {
  margin-bottom: .5rem;
  line-height: 1.4;
}

/* ======================================================================== */
/* Accordion Ergebnisarchiv */
.accordion-button:not(.collapsed) {
  background-color: var(--verein-blau);
  color: #fff;
}

.accordion-button {
  background-color: var(--verein-gruen);
  color: #fff;
}

.accordion-item { 
	margin: 1em 0;
}
