/* ===== MM 2026 ennustus — kujundus (roheline/kuldne) ===== */
:root{
  --green:#0b6b3a;        /* sügav roheline (muru) */
  --green-d:#084a28;
  --green-l:#13854c;
  --gold:#f4c20d;         /* kuldne */
  --gold-d:#caa106;
  --ink:#1d2129;
  --bg:#f4f6f4;
  --card:#ffffff;
  --line:#e2e8e2;
  --muted:#6b7280;
}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.2}

/* Header */
.site-head,.admin-head{background:linear-gradient(90deg,var(--green-d),var(--green));color:#fff;border-bottom:4px solid var(--gold)}
.head-inner{max-width:1500px;margin:0 auto;padding:.6rem 1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:.6rem;color:#fff;font-weight:800;font-size:1.25rem}
.logo img{height:46px;width:auto;display:block}
.logo-text{letter-spacing:.5px}
.nav{margin-left:auto;display:flex;gap:1rem;flex-wrap:wrap}
.nav a{color:#fff;font-weight:600;opacity:.92}
.nav a:hover{opacity:1;text-decoration:none}
.admin-head{background:linear-gradient(90deg,#222,#3a3a3a)}
.admin-head .nav a{font-weight:500;font-size:.92rem}

.wrap{max-width:1500px;margin:0 auto;padding:1.2rem 1rem 3rem}
.narrow{max-width:520px;margin:0 auto}
.site-foot{text-align:center;color:var(--muted);padding:2rem;font-size:.9rem}

/* Cards & forms */
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;margin:1rem 0;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.card h2{margin-top:0}
label{display:block;margin:.5rem 0;font-weight:600;font-size:.92rem}
input,select{font:inherit;padding:.45rem .55rem;border:1px solid #cdd5cd;border-radius:8px;background:#fff;width:100%}
label input,label select{margin-top:.25rem}
.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem 1rem;align-items:end}
button,.btn{background:var(--green);color:#fff;border:0;border-radius:8px;padding:.55rem 1rem;font-weight:700;cursor:pointer;font-size:.95rem}
button:hover{background:var(--green-d)}
.btn-link{background:none;color:var(--muted);padding:.55rem .6rem}
.link-danger{background:none;color:#b00020;padding:0;font-weight:600}
.form-actions{display:flex;gap:.6rem;align-items:center;grid-column:1/-1}

/* Flash & badges */
.flash{padding:.7rem 1rem;border-radius:8px;margin:1rem 0;font-weight:600}
.flash.ok{background:#e6f4ea;color:#0b6b3a;border:1px solid #b6e0c2}
.flash.err{background:#fdecec;color:#b00020;border:1px solid #f5c2c2}
.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.78rem;font-weight:700;vertical-align:middle}
.badge.green{background:#e6f4ea;color:#0b6b3a}
.badge.red{background:#fdecec;color:#b00020}
.badge.amber{background:#fff4d6;color:#9a7600}
.badge.grey{background:#eceff1;color:#546e7a}
.hint{color:var(--muted);font-size:.9rem}

/* Stat cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin:1rem 0}
.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem;text-align:center;font-size:.9rem;color:var(--muted)}
.stat .num{display:block;font-size:1.8rem;font-weight:800;color:var(--ink)}

/* Generic tables */
.tbl{width:100%;border-collapse:collapse;font-size:.92rem}
.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:.45rem .5rem;text-align:left}
.tbl th{background:#f0f4f0;font-size:.82rem;text-transform:uppercase;letter-spacing:.4px;color:#516051}
.row-actions{display:flex;gap:.5rem;align-items:center}
.row-actions form{display:inline}
.inline-result{display:flex;align-items:center;gap:.3rem}
.inline-result input{width:3.2em}

/* Prediction input tables */
.predtbl td{vertical-align:middle}
.predtbl .dt{color:var(--muted);font-size:.82rem;white-space:nowrap;width:7em}
.predtbl .t1{text-align:right;width:40%}
.predtbl .t2{text-align:left;width:40%}
.predtbl .sc{text-align:center;white-space:nowrap}
.predtbl .sc input{width:3.2em;display:inline-block;text-align:center}

/* Advancers grid */
.adv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem}
fieldset{border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;margin:.4rem 0}
legend{font-weight:700;font-size:.85rem;color:var(--green-d);padding:0 .3rem}
.chk{font-weight:500;display:flex;gap:.4rem;align-items:center}
.chk input{width:auto}

/* Hero (public) */
.hero{display:flex;gap:1rem;flex-wrap:wrap;align-items:stretch;margin:1rem 0}
.hero-rules{flex:2;min-width:280px;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--gold);border-radius:12px;padding:1rem 1.2rem}
.hero-rules h1{margin:.2rem 0 .5rem;color:var(--green-d)}
.rules-line{font-size:.92rem;color:#374151}
.hero-prizes{flex:1;min-width:220px;background:linear-gradient(180deg,var(--green),var(--green-d));color:#fff;border-radius:12px;padding:1rem 1.2rem}
.hero-prizes h3{margin:.2rem 0 .6rem;color:var(--gold)}
.hero-prizes ul{list-style:none;margin:0;padding:0}
.hero-prizes li{padding:.2rem 0;border-bottom:1px solid rgba(255,255,255,.15)}

/* Matrix table (public scoreboard) */
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}
.matrix{border-collapse:collapse;font-size:.8rem;min-width:100%}
.matrix th,.matrix td{border:1px solid #e8ede8;padding:.3rem .4rem;text-align:center;white-space:nowrap}
.matrix .corner,.matrix .matchcell{position:sticky;left:0;z-index:2;background:#fff;text-align:left;min-width:170px;max-width:170px}
.matrix thead th{position:sticky;top:0;z-index:1}
.matrix .namerow th{background:var(--green);color:#fff;font-size:.82rem;vertical-align:bottom}
.matrix .namerow .corner{background:var(--green-d);color:#fff;z-index:3}
.matrix .rankrow th{background:var(--green-d);color:var(--gold);font-weight:800}
.matrix .rankrow .corner{z-index:3}
.matrix .totalrow th{background:var(--gold);color:#000;font-weight:800;font-size:.95rem}
.matrix .totalrow .corner{z-index:3}
.matrix .sectionrow td{background:#eef3ee;text-align:left;font-weight:800;color:var(--green-d);text-transform:uppercase;letter-spacing:.5px;font-size:.78rem;position:sticky;left:0}
.lockmini{font-weight:500;text-transform:none;color:var(--muted);letter-spacing:0}
.matchcell{font-weight:600}
.matchcell .mdate{display:block;color:var(--muted);font-weight:400;font-size:.72rem}
.matchcell .mteams{display:inline}
.matchcell .mres{display:inline-block;margin-left:.4rem;background:var(--ink);color:#fff;border-radius:6px;padding:0 .35rem;font-size:.75rem}
.predcell .pv{font-weight:600}
.predcell .pp{display:inline-block;margin-left:.25rem;min-width:1.1em;border-radius:5px;font-size:.72rem;padding:0 .25rem;color:#fff;background:#9aa0a6}
.pp0{background:#c2c7cc;color:#333}
.pp1{background:#7fae8a}
.pp2{background:#3f9c5c}
.pp3{background:#0b6b3a}
.pp6{background:#0b6b3a}
.hidden-pred{color:#c2c7cc}
.advlist .adv-ok{color:#0b6b3a;font-weight:700}
.advlist .adv-no{color:#aab0b6}
.advcell{font-size:.72rem;max-width:200px;white-space:normal}

@media (max-width:700px){
  .head-inner{gap:.5rem}
  .nav{gap:.6rem;font-size:.9rem}
  .hero{flex-direction:column}
}
