:root{
  --grass:#0f7a3b;
  --grass-dark:#064423;
  --night:#071021;
  --ink:#071021;
  --panel:rgba(7,16,33,.78);
  --panel-strong:rgba(4,10,22,.92);
  --glass:rgba(255,255,255,.09);
  --line:rgba(255,255,255,.18);
  --text:#f7fbff;
  --muted:#b8c7d9;
  --gold:#ffd15c;
  --red:#e5252a;
  --blue:#246dff;
  --green:#32b957;
  --danger:#ff5b74;
  --warn:#ffd15c;
  --radius:28px;
  --shadow:0 26px 90px rgba(0,0,0,.44);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 50% -12%, rgba(255,255,255,.18) 0 8%, transparent 28%),
    radial-gradient(circle at 15% 12%, rgba(229,37,42,.38), transparent 24%),
    radial-gradient(circle at 84% 9%, rgba(36,109,255,.42), transparent 27%),
    radial-gradient(circle at 52% 94%, rgba(50,185,87,.42), transparent 30%),
    linear-gradient(135deg,#071021 0%,#08234a 48%,#03110a 100%);
}
body:before{
  content:"";
  position:fixed;inset:0;z-index:-4;pointer-events:none;opacity:.18;
  background:
    linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px),
    radial-gradient(circle at center, transparent 0 86px, rgba(255,255,255,.52) 87px 89px, transparent 90px),
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(255,255,255,.48) calc(50% - 1px) calc(50% + 1px), transparent calc(50% + 1px));
  background-size:92px 92px,92px 92px,520px 520px,100% 100%;
  background-position:center;
}
body:after{
  content:"";position:fixed;left:0;right:0;bottom:0;height:38vh;z-index:-5;pointer-events:none;
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 70px,rgba(255,255,255,.01) 70px 140px),
    linear-gradient(180deg,transparent,var(--grass-dark) 38%,#052815 100%);
  clip-path:polygon(0 30%,100% 0,100% 100%,0 100%);
}
.stadium-lights{position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(ellipse at 18% 0%,rgba(255,255,255,.28),transparent 28%),radial-gradient(ellipse at 82% 0%,rgba(255,255,255,.22),transparent 28%);mix-blend-mode:screen}.ball-watermark{position:fixed;right:clamp(20px,6vw,90px);bottom:clamp(20px,6vw,80px);font-size:clamp(110px,18vw,260px);opacity:.07;z-index:-2;filter:grayscale(1);transform:rotate(-15deg)}
.confetti{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:linear-gradient(45deg,var(--red) 0 10px,transparent 10px),linear-gradient(45deg,var(--blue) 0 8px,transparent 8px),linear-gradient(45deg,var(--green) 0 7px,transparent 7px),linear-gradient(45deg,var(--gold) 0 5px,transparent 5px);background-size:170px 170px,220px 220px,190px 190px,250px 250px;background-position:10% 10%,60% 20%,35% 65%,90% 80%}.confetti-b{transform:rotate(8deg);opacity:.09}
button,a.button-link,.admin-link{transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}button:hover,a.button-link:hover,.admin-link:hover{transform:translateY(-2px);filter:brightness(1.06)}
.site-hero{max-width:1220px;margin:0 auto;padding:22px 18px 18px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:34px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--text)}.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;color:#05101d;font-size:24px;font-weight:1000;background:linear-gradient(135deg,#fff,#dfe7f5);box-shadow:0 16px 34px rgba(0,0,0,.26);position:relative}.brand-mark:after{content:"";position:absolute;inset:6px;border:2px solid rgba(7,16,33,.15);border-radius:13px}.brand b{display:block;font-size:15px;letter-spacing:.02em}.brand small{display:block;color:var(--muted);font-weight:800}.admin-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;border:1px solid rgba(255,209,92,.38);color:#08101e;background:linear-gradient(135deg,var(--gold),#fff1b3);border-radius:999px;padding:12px 18px;font-weight:1000;box-shadow:0 18px 44px rgba(255,209,92,.18)}.admin-link:before{content:"🔐"}.admin-page .admin-link:before{content:"🏟️"}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:stretch}.hero-copy{position:relative;padding:34px 0 24px}.eyebrow,.section-kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:1000;color:#ddffe8}.eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(90deg,rgba(229,37,42,.18),rgba(36,109,255,.18),rgba(50,185,87,.18));padding:10px 13px;border-radius:999px}h1{margin:0;font-size:clamp(54px,9vw,116px);line-height:.78;letter-spacing:-.08em;text-transform:uppercase;text-shadow:0 18px 50px rgba(0,0,0,.52)}h1 span{color:transparent;background:linear-gradient(90deg,var(--red),#fff,var(--blue),var(--green));-webkit-background-clip:text;background-clip:text}.sub{max-width:760px;color:#d5e3f5;font-size:clamp(18px,2vw,24px);line-height:1.45;margin:20px 0 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:14px 18px;font-weight:1000;color:#061226;background:linear-gradient(135deg,#fff,#dbe9ff);box-shadow:0 18px 42px rgba(0,0,0,.2)}.button-link.secondary{background:rgba(255,255,255,.1);color:var(--text);border:1px solid var(--line)}.last-updated{margin-top:18px;color:var(--muted);font-weight:800}.scoreboard-card{position:relative;min-height:360px;border-radius:36px;border:1px solid rgba(255,255,255,.2);background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(5,15,33,.88));box-shadow:var(--shadow);overflow:hidden;padding:26px;display:flex;flex-direction:column;justify-content:space-between}.scoreboard-card:before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 180deg,var(--red),var(--blue),var(--green),var(--gold),var(--red));opacity:.28;filter:blur(34px);animation:slowSpin 18s linear infinite}.scoreboard-card>*{position:relative}.scoreboard-top{align-self:flex-start;background:#071021;color:#dff4ff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:9px 12px;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:1000}.scoreboard-number{font-size:clamp(78px,9vw,134px);font-weight:1000;line-height:.8;color:#fff;text-shadow:0 14px 44px rgba(0,0,0,.45)}.scoreboard-card p{color:#d4e1f1;font-weight:850}.mini-pitch{height:108px;border:2px solid rgba(255,255,255,.55);border-radius:18px;position:relative;background:linear-gradient(90deg,rgba(50,185,87,.45),rgba(15,122,59,.55));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.mini-pitch:before{content:"";position:absolute;top:0;bottom:0;left:50%;border-left:2px solid rgba(255,255,255,.45)}.mini-pitch:after{content:"";position:absolute;width:42px;height:42px;border:2px solid rgba(255,255,255,.45);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.mini-pitch span{position:absolute;width:9px;height:9px;background:#fff;border-radius:50%;box-shadow:0 0 18px #fff}.mini-pitch span:nth-child(1){left:18%;top:24%}.mini-pitch span:nth-child(2){left:50%;top:50%}.mini-pitch span:nth-child(3){right:18%;bottom:24%}@keyframes slowSpin{to{transform:rotate(360deg)}}
main{max-width:1220px;margin:0 auto;padding:12px 18px 46px;display:grid;gap:18px}.layout-public{grid-template-columns:1.2fr .8fr}.layout-public .hero-panel,.layout-public .draw-panel{grid-column:auto}.layout-public .rules,.layout-public .log-panel{grid-column:1/-1}.layout-admin{display:block}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-grid .table-card,.admin-grid .draw-panel,.admin-grid .match-panel,.admin-grid .log-panel{grid-column:1/-1}.panel{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,var(--panel),rgba(255,255,255,.055));box-shadow:var(--shadow);backdrop-filter:blur(18px);padding:24px}.panel:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--red),#fff,var(--blue),var(--green),var(--gold));opacity:.95}.panel-title{margin-bottom:18px}.panel-title h2{margin:0 0 6px;font-size:clamp(24px,3vw,36px);letter-spacing:-.04em}.panel-title p:not(.section-kicker){margin:0;color:var(--muted);line-height:1.4}.split{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.muted{color:var(--muted)}.small{font-size:.92rem}.hidden{display:none!important}.empty{color:var(--muted);font-style:italic}.warning{color:var(--warn);font-weight:900}
button{border:0;border-radius:16px;padding:13px 17px;color:#041019;background:linear-gradient(135deg,var(--green),#9cffb9);font-weight:1000;cursor:pointer}.primary{background:linear-gradient(135deg,var(--gold),#fff0ad)}.ghost{background:rgba(255,255,255,.1);color:var(--text);border:1px solid var(--line)}.danger{background:rgba(255,91,116,.16);color:#ffdbe1;border:1px solid rgba(255,91,116,.48)}button:disabled,input:disabled,textarea:disabled,select:disabled{opacity:.45;cursor:not-allowed;transform:none!important}
input,select,textarea{width:100%;border:1px solid var(--line);background:rgba(0,0,0,.3);color:var(--text);border-radius:16px;padding:14px 15px;font-size:15px;outline:none}input:focus,select:focus,textarea:focus{border-color:rgba(255,209,92,.72);box-shadow:0 0 0 4px rgba(255,209,92,.12)}select option{background:#071021}textarea{min-height:96px;margin-top:10px;resize:vertical}.add-row,.button-row{display:flex;gap:10px;flex-wrap:wrap}.add-row input{flex:1;min-width:220px}code{background:rgba(0,0,0,.36);padding:2px 7px;border-radius:8px;color:#fff}
.leaderboard{display:grid;gap:12px}.leader-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.14);background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(0,0,0,.22));border-radius:22px;padding:14px}.leader-row:first-child{border-color:rgba(255,209,92,.7);background:linear-gradient(90deg,rgba(255,209,92,.24),rgba(0,0,0,.2));box-shadow:0 14px 36px rgba(255,209,92,.1)}.leader-row:first-child .rank:after{content:" 👑"}.rank{font-size:22px;font-weight:1000;color:var(--gold)}.score{font-size:24px;font-weight:1000;color:#fff;text-align:right}.leader-row b{font-size:18px}.leader-row .muted{font-weight:800}.draw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.owner-card{border:1px solid rgba(255,255,255,.15);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(0,0,0,.22));border-radius:24px;padding:16px}.owner-card h3{margin:0 0 12px;font-size:22px}.teams{display:flex;gap:8px;flex-wrap:wrap}.team-pill{border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(36,109,255,.2),rgba(50,185,87,.15));padding:8px 10px;border-radius:999px;font-size:13px;font-weight:900;color:#eff8ff}.team-pill:before{content:"• ";color:var(--gold)}.rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.rule{border:1px solid rgba(255,255,255,.14);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(0,0,0,.2));border-radius:20px;padding:15px}.rule b{display:block;font-size:28px;color:var(--gold);line-height:1}.log{display:grid;gap:10px}.log-entry{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.24);border-radius:20px;padding:14px}.log-entry b{font-size:17px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.chip{background:rgba(255,255,255,.11);border:1px solid var(--line);border-radius:999px;padding:9px 12px;display:flex;gap:8px;align-items:center;font-weight:900}.chip button{padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.16);color:var(--text)}.live-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.live-grid label,.match-form label{display:flex;flex-direction:column;gap:7px;font-weight:900;color:#eaf2ff}.sync-status{margin-top:12px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#dbeafe}.sync-status.good{border-color:rgba(34,197,94,.48);background:rgba(34,197,94,.14)}.sync-status.bad{border-color:rgba(248,113,113,.58);background:rgba(248,113,113,.14)}.match-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.wide{grid-column:1/-1}.site-footer{max-width:1220px;margin:0 auto;padding:24px 18px 40px;color:var(--muted);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.site-footer a{color:var(--gold);font-weight:1000;text-decoration:none}.admin-page{background:radial-gradient(circle at 20% 10%,rgba(255,209,92,.26),transparent 22%),radial-gradient(circle at 83% 10%,rgba(229,37,42,.28),transparent 24%),linear-gradient(135deg,#0b0715,#111936 52%,#05160d)}.admin-page .panel:before{background:linear-gradient(90deg,var(--gold),var(--red),var(--blue))}.login-panel{max-width:760px;margin:0 auto 18px}.command-card{border-color:rgba(255,209,92,.22)}
@media(max-width:900px){.hero-grid,.layout-public,.admin-grid{grid-template-columns:1fr}.scoreboard-card{min-height:260px}.topbar{align-items:flex-start}.brand-mark{width:46px;height:46px}.site-hero{padding-top:14px}h1{font-size:clamp(48px,17vw,92px)}.split{flex-direction:column}.leader-row{grid-template-columns:46px 1fr}.leader-row .score{grid-column:2;text-align:left}.site-footer{display:block}.site-footer a{display:inline-block;margin-top:10px}.live-grid{grid-template-columns:1fr}}
@media(max-width:560px){.panel{padding:18px;border-radius:22px}.hero-copy{padding-top:16px}.button-link,.admin-link,button{width:100%;justify-content:center}.topbar{gap:10px}.brand small{display:none}.add-row button{width:100%}.scoreboard-number{font-size:88px}.log-entry{grid-template-columns:1fr}.log-entry .score{text-align:left}.match-form{grid-template-columns:1fr}}
