.gmc{--gmc-accent:#ba2434;--gmc-ink:#222d32;--gmc-muted:#58656b;--gmc-line:#dce2e5;box-sizing:border-box;max-width:800px;margin:24px auto;padding:24px;border:1px solid var(--gmc-line);border-radius:18px;background:#fff;color:var(--gmc-ink);font:inherit;line-height:1.5}
.gmc *{box-sizing:border-box}.gmc .gmc-city{font-size:1.5rem;line-height:1.2;margin:0 0 20px;color:var(--gmc-ink)}
.gmc .gmc-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.gmc .gmc-nav h3{font-size:1.3rem;text-align:center;margin:0;color:var(--gmc-ink)}
.gmc button{font:inherit;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:normal}.gmc .gmc-arrow{border:1px solid var(--gmc-line);border-radius:50%;background:#fff;color:var(--gmc-ink);width:44px;height:44px;padding:0;font-size:28px;line-height:1}
.gmc .gmc-grid{table-layout:fixed;border-collapse:separate;border-spacing:4px;width:100%;margin:0;border:0}.gmc .gmc-grid th,.gmc .gmc-grid td{border:0;padding:0;background:transparent;text-align:center}.gmc .gmc-grid th{font-size:.8rem;color:var(--gmc-muted);padding:5px 0;font-weight:600}
.gmc .gmc-day{position:relative;display:flex;align-items:flex-start;justify-content:flex-start;width:100%;min-height:66px;border:1px solid var(--gmc-line);border-radius:9px;padding:8px;background:#fff;color:var(--gmc-ink);font-weight:600}
.gmc .gmc-day:hover,.gmc .gmc-arrow:hover{background:#f8edef;border-color:var(--gmc-accent);color:var(--gmc-ink)}.gmc .gmc-day[aria-current=date]{border:2px solid var(--gmc-accent)}.gmc .gmc-day[aria-pressed=true]{background:var(--gmc-accent);border-color:var(--gmc-accent);color:#fff}
.gmc .gmc-badge{position:absolute;bottom:6px;right:6px;min-width:23px;padding:1px 5px;border-radius:20px;background:#f4e3e6;color:#8a1724;font-size:.75rem;line-height:1.5}.gmc .gmc-day[aria-pressed=true] .gmc-badge{background:#fff;color:#8a1724}
.gmc button:focus-visible,.gmc a:focus-visible{outline:3px solid #176b9d;outline-offset:3px}.gmc .gmc-events{margin-top:24px;border-top:1px solid var(--gmc-line);padding-top:20px}.gmc .gmc-events h3{font-size:1.15rem;margin:0 0 16px;color:var(--gmc-ink)}.gmc .gmc-events ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}.gmc .gmc-events li{margin:0;padding:16px;background:#f6f8f9;border-radius:10px}.gmc .gmc-events h4{font-size:1.05rem;margin:4px 0 8px;color:var(--gmc-ink)}.gmc .gmc-time{margin:0;color:var(--gmc-muted);font-size:.9rem}.gmc .gmc-events a{color:#9d1c2a;text-decoration:underline;font-weight:600}.gmc .gmc-status{font-size:.8rem;margin:18px 0 0;color:var(--gmc-muted)}.gmc .gmc-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:480px){.gmc{padding:12px;border-radius:12px}.gmc .gmc-grid{border-spacing:2px}.gmc .gmc-day{padding:5px;min-height:57px;font-size:.85rem}.gmc .gmc-badge{right:3px;bottom:4px;min-width:19px;padding:0 4px;font-size:.7rem}.gmc .gmc-city{font-size:1.3rem}}
.gmc [hidden]{display:none!important}.gmc .gmc-arrow:disabled{opacity:.35;cursor:default;background:#fff;border-color:var(--gmc-line);color:var(--gmc-muted)}
