:root{
  /* Light base */
  --bg:#f8fafc;
  --panel:#ffffff;
  --panel2:#ffffff;
  --text:#0f172a;
  --muted:#475569;
  --border:rgba(15, 23, 42, .12);
  --shadow:0 10px 24px rgba(15, 23, 42, .08);
  --radius:14px;

  /* Olympic-inspired accents */
  --olympic-blue:#0085C7;
  --olympic-yellow:#F4C300;
  --olympic-black:#000000;
  --olympic-green:#009F3D;
  --olympic-red:#DF0024;

  --primary:var(--olympic-blue);
  --danger:var(--olympic-red);
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Ubuntu,Cantarell,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.4;
  position:relative;
}
/* Soft Olympic-colored atmosphere (stays mostly white/gray) */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(ellipse 900px 420px at 12% -5%, rgba(0, 133, 199, .09), transparent 55%),
    radial-gradient(ellipse 700px 380px at 92% 8%, rgba(244, 195, 0, .07), transparent 50%),
    radial-gradient(ellipse 600px 360px at 88% 92%, rgba(0, 159, 61, .06), transparent 48%),
    radial-gradient(ellipse 520px 320px at 5% 95%, rgba(223, 0, 36, .05), transparent 45%);
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.container{width:min(1120px, calc(100% - 32px)); margin:0 auto}
.page{padding:28px 0 40px}

.muted{color:var(--muted)}
.mt-8{margin-top:8px}
.mt-16{margin-top:16px}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.footer{
  position:relative;
  padding:20px 0 18px;
  background:#ffffff;
  box-shadow:0 -1px 0 rgba(15, 23, 42, .06);
}
.footer::before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:4px;
  background:linear-gradient(
    90deg,
    var(--olympic-blue) 0%,
    var(--olympic-blue) 20%,
    var(--olympic-yellow) 20%,
    var(--olympic-yellow) 40%,
    var(--olympic-black) 40%,
    var(--olympic-black) 60%,
    var(--olympic-green) 60%,
    var(--olympic-green) 80%,
    var(--olympic-red) 80%,
    var(--olympic-red) 100%
  );
}
.footer-inner{display:flex;justify-content:space-between;align-items:center}
.footer-muted{color:rgba(15, 23, 42, .55); font-size:14px}
