:root{--training-card-header-bg: #111827;--training-card-border: #f3f4f6;--training-card-bg: #ffffff;--training-card-shadow: 0 1px 3px rgba(0, 0, 0, .06);--training-time-color: #f87171;--training-label-color: #9ca3af;--training-location-link: #111827;--training-location-link-hover: #dc2626;--training-note-color: #6b7280;--training-note-border: #f3f4f6;--training-next-bg: #111827;--training-next-date-color: #ef4444;--training-next-meta-color: #9ca3af;--training-next-time-color: #f87171;--training-next-badge-extra: #2563eb;--announcement-warning-bg: #dc2626;--announcement-warning-color: #ffffff;--announcement-warning-icon: "⚠️";--announcement-info-bg: #1d4ed8;--announcement-info-color: #ffffff;--announcement-info-icon: "ℹ️";--cal-day-font-size: 13px;--cal-header-bg: #111827;--cal-header-text: #ffffff;--cal-nav-btn-border: rgba(255, 255, 255, .15);--cal-body-bg: #ffffff;--cal-weekday-color: #9ca3af;--cal-border: #e5e7eb;--cal-shadow: 0 1px 3px rgba(0, 0, 0, .06);--cal-num-default: #9ca3af;--cal-num-event: #111827;--cal-num-cancelled: #f87171;--cal-cell-cancelled-bg: #fef2f2;--cal-cell-competition-bg: #f0fdf4;--dot-training: #1d4ed8;--dot-extra: #3b82f6;--dot-competition: #16a34a;--dot-cancelled: #ef4444;--popup-training-bg: #eff6ff;--popup-training-border: #bfdbfe;--popup-training-text: #1d4ed8;--popup-competition-bg: #f0fdf4;--popup-competition-border: #bbf7d0;--popup-competition-text: #15803d;--popup-extra-bg: #eff6ff;--popup-extra-border: #bfdbfe;--popup-extra-text: #2563eb;--popup-cancelled-bg: #fef2f2;--popup-cancelled-border: #fecaca;--popup-cancelled-text: #dc2626;--popup-overlay-bg: rgba(0, 0, 0, .4);--popup-card-bg: #ffffff;--popup-card-shadow: 0 20px 40px rgba(0, 0, 0, .15);--popup-close-border: #e5e7eb;--popup-close-color: #6b7280;--popup-date-color: #111827;--popup-label-color: #9ca3af;--popup-value-color: #111827;--popup-note-bg: #f9fafb;--popup-note-color: #6b7280;--sidebar-day-chip-bg: #111827;--sidebar-day-chip-text: #f87171;--sidebar-divider: #f3f4f6;--sidebar-label-color: #9ca3af;--sidebar-name-color: #111827;--sidebar-meta-color: #6b7280;--arrow-btn-bg: #ffffff;--arrow-btn-border: #e5e7eb;--arrow-btn-color: #4b5563;--arrow-btn-hover-bg: #111827;--arrow-btn-hover-color: #ffffff;--arrow-btn-hover-border: #111827}.announcement{color:#fff}.announcement--warning{background:var(--announcement-warning-bg)}.announcement--info{background:var(--announcement-info-bg)}.announcement__inner{max-width:72rem;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:flex-start;gap:.75rem;font-size:.875rem}.announcement__icon{font-size:1.125rem;line-height:1;margin-top:.125rem;flex-shrink:0}.schedule-card{background:var(--training-card-bg);border-radius:1rem;box-shadow:var(--training-card-shadow);border:1px solid var(--training-card-border);overflow:hidden}.schedule-card__header{background:var(--training-card-header-bg);color:#fff;padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem}.schedule-card__day{font-weight:700;font-size:1.125rem;line-height:1.25}.schedule-card__time{color:var(--training-time-color);font-family:monospace;font-size:.875rem}.schedule-card__body{padding:1rem 1.25rem}.schedule-card__body>*+*{margin-top:.75rem}.schedule-card__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--training-label-color);margin-bottom:.25rem}.schedule-card__location-link{font-weight:600;color:var(--training-location-link);text-decoration:none;transition:color .15s}.schedule-card__location-link:hover{color:var(--training-location-link-hover)}.schedule-card__location-address{color:var(--training-note-color);font-size:.75rem;margin-top:.125rem}.schedule-card__groups{font-weight:500;color:#1f2937}.schedule-card__note{color:var(--training-note-color);font-style:italic;font-size:.75rem;border-top:1px solid var(--training-note-border);padding-top:.75rem}.schedule-arrow-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--arrow-btn-bg);box-shadow:0 1px 4px #0000001f;border:1px solid var(--arrow-btn-border);color:var(--arrow-btn-color);cursor:pointer;transition:opacity .2s,background .15s,color .15s,border-color .15s}.schedule-arrow-btn:hover{background:var(--arrow-btn-hover-bg);color:var(--arrow-btn-hover-color);border-color:var(--arrow-btn-hover-border)}.cal-popup-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--popup-overlay-bg);backdrop-filter:blur(2px)}.cal-popup-card{background:var(--popup-card-bg);border-radius:1rem;padding:1.5rem;max-width:360px;width:100%;box-shadow:var(--popup-card-shadow);position:relative}.cal-popup-close{position:absolute;top:.875rem;right:.875rem;width:1.75rem;height:1.75rem;border-radius:50%;border:1px solid var(--popup-close-border);background:var(--popup-card-bg);cursor:pointer;font-size:1rem;color:var(--popup-close-color);display:flex;align-items:center;justify-content:center;line-height:1}.cal-popup-badge{display:inline-flex;align-items:center;gap:.375rem;border-radius:1.25rem;padding:.25rem .75rem;margin-bottom:.875rem;border:1px solid;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.cal-popup-badge__dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0}.cal-popup-badge--training{background:var(--popup-training-bg);border-color:var(--popup-training-border);color:var(--popup-training-text)}.cal-popup-badge--competition{background:var(--popup-competition-bg);border-color:var(--popup-competition-border);color:var(--popup-competition-text)}.cal-popup-badge--extra{background:var(--popup-extra-bg);border-color:var(--popup-extra-border);color:var(--popup-extra-text)}.cal-popup-badge--cancelled{background:var(--popup-cancelled-bg);border-color:var(--popup-cancelled-border);color:var(--popup-cancelled-text)}.cal-popup-date{font-size:1.125rem;font-weight:700;color:var(--popup-date-color);margin-bottom:1rem}.cal-popup-row{display:flex;gap:.625rem;margin-bottom:.625rem;align-items:flex-start}.cal-popup-row__label{font-size:.75rem;color:var(--popup-label-color);width:3.75rem;flex-shrink:0;padding-top:.1rem}.cal-popup-row__value{font-size:.875rem;color:var(--popup-value-color)}.cal-popup-row__value--mono{font-family:monospace;font-weight:600}.cal-popup-note{margin-top:.875rem;padding:.75rem;background:var(--popup-note-bg);border-radius:.5rem;font-size:.8125rem;color:var(--popup-note-color);line-height:1.5}.cal-sidebar__heading{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--sidebar-label-color);margin-bottom:.5rem}.cal-sidebar__row{display:flex;align-items:center;gap:.75rem;padding:.625rem 0;border-bottom:1px solid var(--sidebar-divider)}.cal-sidebar__chip{width:2.5rem;height:2.5rem;border-radius:.5rem;background:var(--sidebar-day-chip-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.625rem;font-weight:700;color:var(--sidebar-day-chip-text);text-transform:uppercase;letter-spacing:.05em}.cal-sidebar__name{font-weight:600;font-size:.875rem;color:var(--sidebar-name-color)}.cal-sidebar__meta{font-size:.75rem;color:var(--sidebar-meta-color);font-family:monospace}.cal-sidebar__grid{display:grid;gap:24px;align-items:start;grid-template-columns:1fr}@media(min-width:768px){.cal-sidebar__grid{grid-template-columns:1fr 1fr}}.cal-sidebar__location{font-size:.75rem;color:var(--sidebar-label-color);margin-top:.25rem}@media(min-width:1024px){:root{--cal-day-font-size: 36px}}
