/* Public UI */
.mm-card{border:1px solid rgba(0,0,0,.12);border-radius:14px;padding:14px;margin:14px 0;background:#fff}
.mm-title{margin:0 0 6px 0;font-size:20px;font-weight:900}
.mm-sub{margin:0 0 14px 0;opacity:.8}
.mm-alert{border-radius:12px;padding:10px 12px;margin:10px 0}
.mm-alert-success{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.25)}
.mm-alert-error{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.25)}
.mm-round{margin:18px 0 10px 0;font-size:16px}
.mm-round-pts{opacity:.75;font-weight:normal}
.mm-games{display:grid;gap:10px}
.mm-game{border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:10px}
.mm-game.mm-locked{opacity:.85}
.mm-game-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.mm-time{font-size:13px;opacity:.85}
.mm-locktag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;border:1px solid rgba(0,0,0,.2);font-size:12px}
.mm-region{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;border:1px solid rgba(0,0,0,.15);font-size:12px;opacity:.85}
.mm-matchup{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width: 640px){ .mm-matchup{grid-template-columns:1fr} }
.mm-team{display:flex;align-items:center;gap:10px;border-radius:12px;padding:10px;border:2px solid rgba(0,0,0,.08);cursor:pointer;position:relative;min-height:52px}
.mm-team input{margin:0}
.mm-team-logo{width:34px;height:34px;object-fit:contain;border-radius:8px;background:rgba(255,255,255,.7);padding:4px;border:1px solid rgba(0,0,0,.08)}
.mm-team-name{font-weight:600}
.mm-picked{outline:3px solid rgba(59,130,246,.35)}
.mm-winner{border-color:rgba(16,185,129,.6)}
.mm-badge{position:absolute;right:10px;top:10px;background:rgba(16,185,129,.9);color:#fff;border-radius:999px;padding:2px 8px;font-size:12px}
.mm-actions{margin-top:14px}
.mm-btn{border:0;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer;background:#111;color:#fff}
.mm-btn:hover{opacity:.92}

/* Round dropdown */
.mm-round-select{display:flex;align-items:center;gap:8px;margin:10px 0 12px 0;flex-wrap:wrap}
.mm-round-select select{border:1px solid rgba(0,0,0,.18);border-radius:10px;padding:8px 10px;font-weight:700}

/* All picks table */
.mm-th-sub{font-size:12px;opacity:.75;font-weight:500}
.mm-allpicks-table td.mm-correct{background:rgba(16,185,129,.12)}
.mm-allpicks-table td.mm-wrong{background:rgba(239,68,68,.10)}
.mm-roundpts{font-weight:800}
.mm-pick-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;font-size:12px;margin-left:6px;vertical-align:middle;border:1px solid rgba(0,0,0,.12)}
.mm-pick-icon-ok{background:rgba(16,185,129,.18)}
.mm-pick-icon-bad{background:rgba(239,68,68,.16)}

/* Leaderboard */
.mm-user-summary{padding:16px 18px;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:#fff;margin:0 0 14px 0}
.mm-us-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6b7280;font-weight:900;margin-bottom:8px}
.mm-us-main{font-size:18px;font-weight:900;color:#111827}
.mm-us-sep{display:inline-block;margin:0 10px;color:#9ca3af;font-weight:800}
.mm-us-sub{margin-top:6px;font-size:13px;color:#6b7280;font-weight:800}
.mm-us-dot{margin:0 8px;color:#9ca3af}
.mm-table-wrap{overflow:auto}
.mm-table{width:100%;border-collapse:collapse;font-size:14px;min-width:840px}
.mm-table th,.mm-table td{padding:10px 10px;border-bottom:1px solid rgba(0,0,0,.08);text-align:left;white-space:nowrap}
.mm-table thead th{position:sticky;top:0;background:#f6f7f8;z-index:1}
.mm-table tr.mm-me{background:rgba(59,130,246,.12)}
.mm-table tr.mm-me td{font-weight:800}
.mm-table tr.mm-me td:first-child{box-shadow:inset 4px 0 0 rgba(59,130,246,.85)}


/* Auto-contrast text on team tiles */
.mm-team.mm-text-light{color:#fff}
.mm-team.mm-text-light .mm-team-logo{background:rgba(255,255,255,.75)}
.mm-team.mm-text-dark{color:#111}

/* Emphasize actual winners */
.mm-team.mm-winner .mm-team-name{font-weight:900;text-decoration:underline}

.mm-pos{white-space:nowrap}
.mm-medal{display:inline-block;margin-right:6px}

/* Championship tie-breaker */
.mm-tiebreak{margin:12px 0 12px 0;padding:12px;border:1px dashed rgba(0,0,0,.18);border-radius:14px;background:rgba(0,0,0,.02)}
.mm-tb-title{font-weight:900;margin:0 0 4px 0}
.mm-tb-sub{font-size:13px;opacity:.8;margin-bottom:10px}
.mm-tb-input{width:240px;max-width:100%;border:1px solid rgba(0,0,0,.18);border-radius:12px;padding:10px 12px;font-weight:800}
.mm-tb-lock{margin-top:8px;font-size:12px;opacity:.75;font-weight:800}
