/* Discgolf Coach — delade bas-stilar
   Färgpalett, reset och body. Ändra paletten här så slår det igenom på alla sidor.
   Sidspecifik CSS ligger kvar i respektive sidas <style>-block. */

:root {
  --forest:#1B4332; --green:#2D6A4F; --sage:#52B788;
  --cream:#F8F4E9; --paper:#FDFBF6; --ink:#1A1A1A;
  --grey:#6B7280; --light-grey:#E5E7EB; --warn:#C84B31;
  --gold:#D4A017; --flame:#FF7A45;
  --shadow:0 1px 3px rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);
  --shadow-lg:0 10px 25px rgba(27,67,50,0.12);
}

* { box-sizing:border-box; margin:0; padding:0; -webkit-tap-highlight-color:transparent; }

body {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--cream);
  color:var(--ink);
  font-size:15px;
  line-height:1.5;
  min-height:100vh;
  padding-bottom:48px;
}

/* ── Shared app header ───────────────────────────────────── */
.app-header {
  background: linear-gradient(135deg, var(--forest) 0%, var(--green) 100%);
  color: white;
  padding: env(safe-area-inset-top) 20px 22px;
  position: relative;
}
.app-header::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 3px;
  background: var(--sage);
}
.header-top {
  padding-top: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
}
.app-title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.4px;
  opacity: 0.85;
}
.header-date {
  font-size: 12px;
  opacity: 0.75;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.header-title {
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 4px;
}
.header-sub {
  font-size: 13px;
  opacity: 0.85;
}
.header-sub b { color: var(--gold); font-weight: 700; }
.back-nav {
  font-size: 13px;
  font-weight: 600;
  color: white;
  opacity: 0.85;
  text-decoration: none;
  letter-spacing: 0.3px;
}
.back-nav:active { opacity: 1; }

/* ── Mode cards (index.html) ─────────────────────────────── */
.mode-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  padding: 20px 16px;
  max-width: 560px;
  margin: 0 auto;
}
.mode-card {
  border-radius: 16px;
  padding: 18px 14px 16px;
  text-decoration: none;
  display: block;
  position: relative;
  overflow: hidden;
}
.mode-card.active {
  background: var(--paper);
  box-shadow: var(--shadow-lg);
  color: var(--ink);
  transition: transform 0.15s;
}
.mode-card.active:active { transform: scale(0.97); }
.mode-card.soon {
  background: var(--paper);
  box-shadow: var(--shadow);
  opacity: 0.5;
  color: var(--ink);
  cursor: default;
}
.mode-icon {
  font-size: 28px;
  margin-bottom: 10px;
  line-height: 1;
}
.mode-title {
  font-size: 15px;
  font-weight: 800;
  color: var(--forest);
  margin-bottom: 4px;
}
.mode-card.soon .mode-title { color: var(--grey); }
.mode-desc {
  font-size: 12px;
  color: var(--grey);
  line-height: 1.4;
}
.mode-last {
  font-size: 11px;
  color: var(--green);
  font-weight: 600;
  margin-top: 8px;
}
.mode-badge {
  position: absolute;
  top: 10px; right: 10px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: var(--light-grey);
  color: var(--grey);
  padding: 3px 7px;
  border-radius: 20px;
}
