/* Serpents Padel – fresh light theme */
:root{
  --bg: #f6fbfd;
  --bg2:#ffffff;
  --card:#ffffffcc;
  --text:#0b1220;
  --muted:#5b6b82;
  --line:rgba(12, 28, 52, .10);

  /* Logo vibe */
  --teal:#4ad7e5;
  --teal2:#7ce7f0;
  --blue:#2a78ff;

  --shadow: 0 14px 40px rgba(12, 28, 52, .10);
  --shadow2: 0 10px 24px rgba(12, 28, 52, .08);
  --radius: 22px;
  --radius2: 16px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(74,215,229,.28), transparent 60%),
    radial-gradient(1200px 600px at 85% 0%, rgba(42,120,255,.16), transparent 55%),
    linear-gradient(180deg, var(--bg), #ffffff 70%);
}

a{color:var(--blue); text-decoration:none}
a:hover{text-decoration:underline}

.container{
  width:min(1150px, calc(100% - 32px));
  margin: 26px auto 70px;
}

.topbar{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border:1px solid var(--line);
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(10px);
  border-radius: var(--radius);
  box-shadow: var(--shadow2);
}

.brand{
  display:flex; align-items:center; gap:14px;
  min-width:240px;
}
.brand img{
  width:56px; height:56px; object-fit:contain;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--line);
  padding:6px;
}
.brand .title{
  display:flex; flex-direction:column; line-height:1.1;
}
.brand .title b{font-size:18px}
.brand .title span{font-size:13px; color:var(--muted); font-weight:700}

.nav{
  display:flex; flex-wrap:wrap;
  gap:10px; justify-content:flex-end;
}
.nav a{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px;
  border-radius: 999px;
  border:1px solid var(--line);
  background: rgba(255,255,255,.75);
  color: var(--text);
  font-weight:900;
  box-shadow: 0 8px 18px rgba(12,28,52,.06);
}
.nav a.active{
  border-color: rgba(74,215,229,.55);
  box-shadow: 0 14px 30px rgba(74,215,229,.18);
}
.nav a:hover{ text-decoration:none; transform: translateY(-1px); }

.hero{
  margin-top:18px;
  padding:18px;
  border-radius: var(--radius);
  border:1px solid var(--line);
  background: linear-gradient(135deg, rgba(74,215,229,.18), rgba(255,255,255,.86));
  box-shadow: var(--shadow2);
}

.grid{display:grid; gap:16px}
.grid.cols2{grid-template-columns: 1fr 1fr}
@media (max-width: 900px){
  .grid.cols2{grid-template-columns:1fr}
  .brand{min-width:auto}
}

.card{
  border:1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(10px);
  box-shadow: var(--shadow);
  padding:16px;
}

.card h3, .card h4 {margin:0 0 10px}

.row{display:flex; gap:12px; align-items:center; flex-wrap:wrap}

label{display:block; font-weight:900; margin:10px 0 6px}
input,select{
  width:100%;
  padding:12px 12px;
  border-radius: 14px;
  border:1px solid rgba(12,28,52,.16);
  background: rgba(255,255,255,.9);
  outline:none;
  font-weight:800;
}
input:focus,select:focus{
  border-color: rgba(74,215,229,.75);
  box-shadow: 0 0 0 4px rgba(74,215,229,.18);
}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius: 999px;
  border:1px solid rgba(12,28,52,.16);
  background: rgba(255,255,255,.85);
  font-weight:950;
  cursor:pointer;
  box-shadow: 0 10px 24px rgba(12,28,52,.08);
}
.btn:hover{transform: translateY(-1px)}
.btn.primary{
  border-color: rgba(74,215,229,.60);
  background: linear-gradient(135deg, rgba(74,215,229,.92), rgba(124,231,240,.92));
}
.btn.danger{
  border-color: rgba(255,78,106,.40);
  background: linear-gradient(135deg, rgba(255,78,106,.20), rgba(255,255,255,.85));
}

.pill{
  display:inline-flex; align-items:center;
  padding:8px 12px;
  border-radius: 999px;
  border:1px solid var(--line);
  background: rgba(255,255,255,.78);
  font-weight:900;
}
.pill.ok{border-color:rgba(86, 255, 140, .40); background: rgba(86,255,140,.14)}
.pill.err{border-color:rgba(255,78,106,.40); background: rgba(255,78,106,.12)}
.muted{color:var(--muted); font-weight:800}

table{
  width:100%;
  border-collapse: collapse;
  overflow:hidden;
  border-radius: 18px;
  border: 1px solid var(--line);
}
thead th{
  text-align:left;
  padding:12px;
  font-weight:950;
  color: var(--muted);
  background: rgba(246,251,253,.9);
}
tbody td{
  padding:12px;
  border-top:1px solid var(--line);
  font-weight:850;
}
td.right, th.right{text-align:right}

.footer{
  margin-top:18px;
  color: var(--muted);
  font-weight:800;
  font-size:13px;
}

/* Subtle background watermark */
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;

  background-image: url("assets/serpents-logo.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 45vh; /* scales better on TV */

  opacity: 0.04; /* very subtle */

  filter:
    grayscale(100%)
    contrast(120%)
    brightness(120%)
    drop-shadow(0 0 80px rgba(55,214,208,.35));

  transform: rotate(-8deg);
}