.calendar-heading{border:1px solid var(--brand-line);background:var(--brand-paper);border-radius:26px;justify-content:space-between;align-items:flex-end;gap:24px;min-height:154px;padding:28px;display:flex;box-shadow:0 5px 18px #4f3e320e}.calendar-heading p,.calendar-agenda>header p,.calendar-sidebar-card>p{color:var(--brand-wine);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:.58rem;font-weight:900}.calendar-heading h1{letter-spacing:-.055em;margin:0;font:900 clamp(2.4rem,5vw,3.6rem)/.95 Montserrat,sans-serif}.calendar-heading div>span{max-width:570px;color:var(--brand-muted);margin-top:9px;font-size:.78rem;line-height:1.5;display:block}.calendar-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.calendar-heading-actions a{border:1px solid var(--brand-wine);border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:48px;padding:0 15px;font-size:.65rem;font-weight:800;text-decoration:none;display:inline-flex}.calendar-heading-actions a.is-search{background:var(--brand-white);color:var(--brand-wine)}.calendar-heading-actions a.is-create{background:var(--brand-wine);color:#fff}.calendar-heading-actions a:hover{border-color:var(--brand-wine-deep)}.calendar-heading-actions a.is-search:hover{background:var(--brand-cream)}.calendar-heading-actions a.is-create:hover{background:var(--brand-wine-deep)}.calendar-filters{border:1px solid var(--brand-line);scrollbar-width:none;background:#fffdf8c7;border-radius:16px;gap:3px;margin:14px 0;padding:4px;display:flex;overflow-x:auto}.calendar-filters button{min-width:max-content;min-height:42px;color:var(--brand-muted);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:0 14px;font-size:.65rem;font-weight:800}.calendar-filters button.is-active{background:var(--brand-paper);color:var(--brand-wine);box-shadow:0 2px 9px #4f3e3217}.calendar-board{border:1px solid var(--brand-line);background:var(--brand-paper);border-radius:24px;padding:20px}.calendar-board>header{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;display:grid}.calendar-board>header h2{text-align:center;text-transform:capitalize;margin:0;font:800 clamp(1.35rem,3vw,1.9rem)/1.1 Montserrat,sans-serif}.calendar-board>header button{border:1px solid var(--brand-line);background:var(--brand-paper);width:44px;height:44px;color:var(--brand-wine);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{border-bottom:1px solid var(--brand-line);margin-top:18px}.calendar-weekdays span{color:var(--brand-muted);text-align:right;text-transform:uppercase;padding:8px;font-size:.56rem;font-weight:900}.calendar-grid{border-left:1px solid var(--brand-line)}.calendar-grid>article{border-right:1px solid var(--brand-line);border-bottom:1px solid var(--brand-line);background:var(--brand-paper);min-width:0;min-height:124px;padding:8px}.calendar-grid>article.is-outside{color:#aaa096;background:#faf7f0}.calendar-grid>article>time{border-radius:50%;place-items:center;width:27px;height:27px;margin-left:auto;font-size:.62rem;font-weight:800;display:grid}.calendar-grid>article.is-today>time{background:var(--brand-wine);color:#fff}.calendar-grid article>div{gap:4px;margin-top:5px;display:grid}.calendar-grid article a{border-left:3px solid var(--brand-gold);color:var(--brand-ink);background:#fff2ce;border-radius:7px;padding:6px 7px;font-size:.57rem;font-weight:800;line-height:1.35;text-decoration:none;display:grid;overflow:hidden}.calendar-grid article a span{color:var(--brand-wine);font-size:.5rem}.calendar-grid article a.is-union{border-color:var(--brand-wine);background:#f3e4e5}.calendar-grid article a.is-learning{border-color:var(--brand-success);background:#e7eee2}.calendar-agenda{border:1px solid var(--brand-line);background:var(--brand-paper);border-radius:22px;margin-top:16px;padding:24px}.calendar-agenda>header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.calendar-agenda h2{margin:0;font:800 clamp(1.35rem,3vw,1.9rem)/1.15 Montserrat,sans-serif}.calendar-agenda>header>span{background:var(--brand-cream);min-width:36px;height:36px;color:var(--brand-wine);border-radius:999px;place-items:center;padding:0 9px;font-size:.7rem;font-weight:900;display:grid}.calendar-agenda>div{gap:8px;margin-top:16px;display:grid}.calendar-agenda>div>a{background:var(--brand-cream);min-height:76px;color:var(--brand-ink);border-radius:15px;grid-template-columns:52px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:11px 13px;text-decoration:none;display:grid}.calendar-agenda time{background:var(--brand-paper);min-height:52px;color:var(--brand-wine);border-radius:12px;align-content:center;place-items:center;display:grid}.calendar-agenda time strong{font:800 1.1rem/1 Montserrat,sans-serif}.calendar-agenda time span{font-size:.52rem}.calendar-agenda a>span{gap:3px;display:grid}.calendar-agenda a>span strong{font-size:.72rem}.calendar-agenda a>span small{color:var(--brand-muted);font-size:.57rem}.calendar-agenda a>.social-icon{color:var(--brand-wine)}.calendar-agenda>div>p{background:var(--brand-cream);color:var(--brand-muted);border-radius:14px;margin:0;padding:18px;font-size:.7rem}.calendar-sidebar-card{border:1px solid var(--brand-line);background:var(--brand-paper);border-radius:20px;padding:18px}.calendar-sidebar-card h2{margin:0;font:800 1rem/1.28 Montserrat,sans-serif}.calendar-sidebar-card>span{color:var(--brand-muted);margin-top:8px;font-size:.63rem;line-height:1.5;display:block}.calendar-sidebar-card>a{border-top:1px solid var(--brand-line);min-height:46px;color:var(--brand-wine);justify-content:space-between;align-items:flex-end;gap:8px;margin-top:12px;font-size:.62rem;font-weight:800;text-decoration:none;display:flex}.calendar-heading a:focus-visible,.calendar-filters button:focus-visible,.calendar-board button:focus-visible,.calendar-grid a:focus-visible,.calendar-agenda a:focus-visible{outline:3px solid var(--brand-gold);outline-offset:3px}@media (max-width:820px){.calendar-grid,.calendar-weekdays{min-width:760px}.calendar-board{overscroll-behavior-inline:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;scroll-padding-inline:12px;overflow-x:auto}}@media (max-width:520px){.calendar-heading{border-radius:20px;flex-direction:column;align-items:flex-start;margin-inline:12px;padding:20px 16px}.calendar-heading h1{font-size:2.5rem}.calendar-heading-actions{flex-direction:column;align-items:stretch;width:100%}.calendar-heading-actions a{width:100%}.calendar-filters{margin-inline:12px}.calendar-board{border-left:0;border-right:0;border-radius:0;padding:14px 12px}.calendar-board>header h2{font-size:1.25rem}.calendar-agenda{border-radius:20px;margin:14px 12px 0;padding:19px 16px}.calendar-agenda>div>a{grid-template-columns:48px minmax(0,1fr) 20px;gap:9px;padding-inline:10px}}
