/* FULBO 2.22: fecha compacta, alertas de gol sin apilado y simulador de marcador directo */
.context-toolbar .date-strip{flex:0 0 160px;max-width:160px;height:37px;overflow:hidden}
.context-toolbar .date-center{flex:1;min-width:0;max-width:100%;gap:3px;font-size:10.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 3px}
.context-toolbar .date-center #dateLabel{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0!important;font-weight:800}
.context-toolbar .date-arrow{flex:0 0 22px;width:22px}
.context-toolbar .search-wrap{min-width:0}
.context-toolbar[data-view="live"] .date-strip{display:none!important}
.context-toolbar[data-view="live"] .context-filters{display:none!important}
.context-toolbar[data-view="live"] .controls{flex:1 1 auto;width:100%;margin-left:0!important}
.context-toolbar[data-view="live"] .search-wrap{width:100%;flex:1 1 auto}
.goal-alerts{position:fixed!important;top:auto!important;right:max(14px,env(safe-area-inset-right,0px))!important;bottom:22px!important;width:min(310px,calc(100vw - 28px))!important;max-height:calc(100dvh - 130px);display:block!important;z-index:500!important;pointer-events:none}
.goal-alerts .goal-alert{max-width:100%;max-height:calc(100dvh - 155px);overflow:auto;margin:0!important;pointer-events:auto;animation:goal-arrive .2s ease-out}
.goal-alerts .goal-queue-count{display:block;font-weight:750;color:#bad19e;margin:2px 0 5px;text-align:right}
@media(max-width:750px){.goal-alerts{right:10px!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;width:min(300px,calc(100vw - 20px))!important;max-height:35dvh}}
@media(max-width:450px){.context-toolbar:not(.is-league) .date-strip{flex:0 0 105px;max-width:105px}.context-toolbar:not(.is-league) .date-arrow{display:none}.context-toolbar:not(.is-league) .date-center{font-size:10px!important}.context-toolbar:not(.is-league) .search-wrap{min-width:0}}
/* Simulador: cuatro columnas simétricas y compactas, sin alineación vertical artificial */
.sim-shell{max-width:1180px;margin:0 auto!important}
.sim-bracket{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;align-items:start!important}
.sim-round{min-width:0;margin:0!important;align-self:start!important}
.sim-round .sim-games,.sim-round:nth-child(n) .sim-games{display:flex!important;flex-direction:column!important;grid-template-rows:none!important;gap:5px!important;margin:0!important}
.sim-round h4{min-height:0!important;margin:0 0 5px!important;padding:6px 5px!important;font-size:12px!important}
.sim-game{padding:5px!important;border-radius:7px!important;margin:0!important;min-width:0!important}
.sim-game-title{padding:1px 2px 4px!important;gap:4px;white-space:normal!important;font-size:9.5px!important;min-width:0}
.sim-game-title>span:last-child{display:block;max-width:64%;text-align:right;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-win-label{color:var(--accent)!important;font-weight:850}.sim-neutral-label{color:var(--muted)!important}
.sim-competitor{display:flex;align-items:center;gap:4px;min-width:0;width:100%;border:1px solid var(--line);border-radius:5px;background:var(--surface);padding:2px 3px;margin:2px 0;min-height:27px;box-sizing:border-box}
.sim-competitor.chosen{background:rgba(95,190,74,.15);border-color:#69b46c}
.sim-competitor.pending{opacity:.5}
.sim-competitor .sim-team-text{flex:1 1 auto;min-width:0;gap:0!important}
.sim-competitor .sim-team-text strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.8px!important;line-height:1.2!important}
.sim-competitor .sim-team-text small{display:none}
.sim-competitor .sim-crest{width:18px!important;height:18px!important;flex:0 0 18px!important}
.sim-counter{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:2px;white-space:nowrap}
.sim-counter b{display:inline-block;font-size:12px;font-variant-numeric:tabular-nums;min-width:11px;text-align:center;font-weight:900;color:var(--ink)}
.sim-counter button{border:1px solid var(--line);border-radius:4px;width:23px;height:23px;line-height:1;display:grid;place-items:center;font-size:14px;font-weight:850;background:var(--panel2);color:var(--accent);padding:0;cursor:pointer}
.sim-counter button:hover:not(:disabled){background:rgba(118,211,84,.19);border-color:var(--accent)}
.sim-counter button:disabled{opacity:.28;cursor:default}
.sim-penalty-inline{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:4px 2px 0;border-top:1px dashed var(--line);font-size:9px;color:var(--muted)}
.sim-penalty-inline .sim-counter button{width:19px;height:20px;font-size:13px}
.sim-penalty-inline .sim-counter b{font-size:11px}
.sim-scenario-note{margin-bottom:8px!important}
.sim-page-container{max-width:1200px!important}
@media(max-width:940px){.sim-bracket{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.sim-bracket{grid-template-columns:1fr!important;gap:9px!important}.sim-round .sim-games,.sim-round:nth-child(n) .sim-games{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.sim-round:nth-child(4) .sim-games{grid-template-columns:1fr!important}.sim-competitor .sim-team-text strong{font-size:10px!important}.sim-counter button{width:19px;height:22px}.sim-counter b{font-size:11px}.sim-competitor{gap:2px}.sim-competitor .sim-crest{width:16px!important;height:16px!important;flex-basis:16px!important}}
@media(max-width:360px){.sim-round .sim-games,.sim-round:nth-child(n) .sim-games{grid-template-columns:1fr!important}}
