:root { --bg:#1a120b; --card:#2a1d12; --accent:#e0a93b; --text:#f4e9d8; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, sans-serif; background:var(--bg); color:var(--text); }
.hero { text-align:center; padding:2rem 1rem; background:linear-gradient(#3a2616,#1a120b); }
.hero h1 { margin:0 0 1rem; }
.pot-amount { font-size:3rem; font-weight:800; color:var(--accent); }
.pot-label { opacity:.8; }
main { max-width:900px; margin:0 auto; padding:1rem; }
h2 { border-bottom:2px solid var(--accent); padding-bottom:.25rem; }
table.standings { width:100%; border-collapse:collapse; }
table.standings th, table.standings td { padding:.4rem .5rem; text-align:left; border-bottom:1px solid #3a2a1a; }
table.standings .pts { font-weight:700; color:var(--accent); }
ul.matches { list-style:none; padding:0; }
ul.matches li { display:flex; justify-content:center; gap:1rem; padding:.4rem; background:var(--card); margin:.25rem 0; border-radius:6px; }
ul.matches .score { min-width:90px; text-align:center; display:flex; flex-direction:column; align-items:center; }
ul.matches .score .goals { font-weight:700; color:var(--accent); }
ul.matches .when { font-size:.7rem; opacity:.6; white-space:nowrap; }
.tz-pick { font-size:.85rem; opacity:.85; margin:.5rem 0; text-align:right; }
.tz-pick select { background:var(--card); color:var(--text); border:1px solid #3a2a1a; border-radius:4px; padding:.2rem .3rem; }
ul.matches .team { flex:1; }
ul.matches .team:first-child { text-align:right; }
ul.matches .team .name { display:block; }
ul.matches .owner { display:block; font-size:.85rem; font-weight:600; opacity:.9; }
ul.matches .owner .mp { color:var(--accent); font-weight:700; }
ul.matches .detail { display:block; font-size:.72rem; opacity:.6; }
ul.matches li:target { outline:2px solid var(--accent); }
table.standings tr.clickable { cursor:pointer; }
table.standings tr.clickable:hover { background:var(--card); }
table.standings td a { color:inherit; text-decoration:none; }
table.standings td a:hover { text-decoration:underline; }
footer { text-align:center; padding:2rem; opacity:.5; }
.login { max-width:320px; margin:4rem auto; text-align:center; }
.login input, .login button { width:100%; padding:.6rem; margin:.3rem 0; font-size:1rem; }
.error { color:#ff8080; }
/* admin */
.admin-grid { display:grid; gap:1rem; }
.admin table { width:100%; border-collapse:collapse; }
.admin td, .admin th { padding:.3rem; border-bottom:1px solid #3a2a1a; }
.admin input, .admin select { padding:.3rem; }
.flash { background:#3a2616; padding:.6rem; border-radius:6px; }
.flash.err { background:#5a2020; }
