:root { --bg:#0b1020; --card:#151b2f; --card2:#1d2540; --text:#f6f7fb; --muted:#b8bfd6; --accent:#ffd166; --win:#2ecc71; --loss:#ef476f; --draw:#4cc9f0; }
* { box-sizing:border-box; }
body, .ftt-embed { margin:0; font-family:Arial, Helvetica, sans-serif; background:linear-gradient(160deg,#07101f,#111832); color:var(--text); }
body { padding:16px; }
.ftt-embed { padding:16px; border-radius:14px; }
.wrap { max-width:1100px; margin:0 auto; }
header { text-align:center; padding:18px 12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:18px; margin-bottom:16px; }
h1 { margin:0 0 8px; font-size:30px; color:var(--text); }
.prize { color:var(--accent); font-size:18px; font-weight:700; }
.hint { color:var(--muted); margin-top:8px; font-size:14px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; }
.player { background:var(--card); border:1px solid rgba(255,255,255,.12); border-radius:16px; overflow:hidden; box-shadow:0 10px 28px rgba(0,0,0,.25); }
.player-head { display:flex; justify-content:space-between; align-items:center; padding:12px 14px; background:var(--card2); }
.name { font-size:22px; font-weight:800; color:var(--text); }
.total { background:var(--accent); color:#111; padding:7px 12px; border-radius:999px; font-weight:900; min-width:70px; text-align:center; }
.team { display:grid; grid-template-columns:1fr 95px 48px; gap:8px; align-items:center; padding:10px 12px; border-top:1px solid rgba(255,255,255,.08); }
.team-name { font-size:16px; font-weight:700; color:var(--text); }
.team-status { padding:7px 9px; border-radius:999px; background:#0d1326; text-align:center; font-weight:800; font-size:13px; }
.team-status.win, .win { color:var(--win); }
.team-status.loss, .loss { color:var(--loss); }
.team-status.draw, .draw { color:var(--draw); }
.team-status.notplayed { color:var(--muted); }
.team-points { text-align:right; font-weight:900; color:var(--accent); }
.match-note { color:var(--muted); font-size:13px; padding:0 12px 9px; margin-top:-3px; }
.leaderboard, .rules, .panel { margin:16px 0; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:14px; overflow-x:auto; }
h2 { margin:0 0 12px; color:var(--text); }
table { width:100%; border-collapse:collapse; overflow:hidden; border-radius:12px; }
th,td { padding:10px; border-bottom:1px solid rgba(255,255,255,.12); text-align:left; color:var(--text); }
th { color:var(--accent); background:rgba(0,0,0,.18); }
.result-form { display:grid; grid-template-columns: 150px 1fr 80px 35px 80px 1fr 130px; gap:8px; align-items:center; }
input, select { width:100%; padding:10px; border-radius:10px; border:1px solid rgba(255,255,255,.18); background:#0d1326; color:var(--text); font-size:15px; }
.vs { text-align:center; font-weight:900; color:var(--accent); }
button { border:0; border-radius:12px; padding:11px 14px; font-weight:800; cursor:pointer; background:var(--accent); color:#111; }
button.secondary { background:#303a5d; color:var(--text); padding:8px 10px; }
.reset-form { margin-top:12px; text-align:right; }
@media (max-width:760px){ .result-form{grid-template-columns:1fr 70px 30px 70px 1fr;} .result-form input[type=date]{grid-column:1/-1;} .result-form button{grid-column:1/-1;} }
@media (max-width:460px){ body,.ftt-embed{padding:10px;} .team{grid-template-columns:1fr 82px 42px; gap:6px; padding:9px 10px;} h1{font-size:25px;} .name{font-size:20px;} th,td{padding:8px; font-size:13px;} }
