.calendar-main{background:#f8f6f0;color:#18233a}
.calendar-main [hidden]{display:none!important}
.calendar-main *{box-sizing:border-box}
.calendar-hero{background:linear-gradient(115deg,#061b43,#124189);color:#fff;padding:75px 0}
.calendar-hero-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
.calendar-hero h1{font:800 clamp(3.5rem,8vw,7rem)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;max-width:930px;margin:16px 0 22px}
.calendar-hero p{font-size:1.17rem;color:#dce9fc;line-height:1.55;margin:0}
.calendar-hero img{flex:none;max-width:20vw;object-fit:contain}
.calendar-eyebrow{color:#f2bf49;text-transform:uppercase;letter-spacing:.17em;font-weight:800;font-size:.85rem}
.calendar-content{padding:45px 0 85px}
.calendar-demo-notice{padding:15px 20px;border-left:5px solid #f2bf49;background:#fff;line-height:1.5;margin-bottom:26px}
.calendar-toolbar,.calendar-view-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.calendar-team-tabs,.calendar-view-tabs{display:flex;gap:7px;flex-wrap:wrap}
.calendar-team-tabs button,.calendar-view-tabs button{border:0;background:#e3eaf3;color:#061b43;padding:14px 18px;font-weight:800;min-height:50px;cursor:pointer}
.calendar-team-tabs button[aria-pressed=true],.calendar-view-tabs button[aria-pressed=true]{background:#092b68;color:#fff}
.calendar-team-tabs button:hover,.calendar-view-tabs button:hover{filter:brightness(.93)}
.calendar-subscribe{background:#f2bf49;color:#061b43;border:0;padding:15px 20px;min-height:50px;font-weight:900;cursor:pointer}
.calendar-subscription{margin:22px 0;padding:24px;background:#fff;border-top:5px solid #f2bf49;box-shadow:0 12px 30px #061b4312}
.calendar-subscription h2,.calendar-alerts h2,.calendar-reminders h2{font:800 2.2rem 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:0 0 12px}
.calendar-subscription p,.calendar-reminders p{line-height:1.6;color:#50617a}
.calendar-subscription-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.calendar-subscription-links a{padding:11px 14px;background:#092b68;color:#fff;font-weight:800}
.calendar-subscription-links a[aria-disabled=true]{opacity:.45;pointer-events:none}
.calendar-alerts{margin:25px 0;padding:21px 24px;background:#fff8e8;border-left:5px solid #e38830}
.calendar-change{padding:10px 0;border-top:1px solid #decdaa;line-height:1.4}
.calendar-change button{background:none;border:0;color:#092b68;text-decoration:underline;font-weight:800;cursor:pointer}
.calendar-view-bar{margin:32px 0 14px;border-bottom:2px solid #092b68;padding-bottom:12px}
.calendar-month-nav{display:flex;align-items:center;gap:13px;color:#061b43}
.calendar-month-nav strong{min-width:145px;text-align:center;text-transform:capitalize}
.calendar-month-nav button{width:43px;height:43px;border:1px solid #b6c6dc;background:#fff;color:#061b43;font-size:1.6rem;cursor:pointer}
.calendar-feedback{min-height:20px;color:#6a4965;font-size:.9rem}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#d6e0ec;border:1px solid #d6e0ec}
.calendar-weekday{padding:13px 5px;text-align:center;background:#092b68;color:#fff;font-weight:800;font-size:.82rem}
.calendar-day{background:#fff;min-height:125px;padding:9px;min-width:0}
.calendar-day.is-outside{background:#f3f6fa}
.calendar-day.is-today{box-shadow:inset 0 0 0 3px #f2bf49}
.calendar-day-number{display:block;font-weight:900;color:#092b68;margin-bottom:8px}
.calendar-day-event{display:block;text-align:left;width:100%;margin:4px 0;padding:6px 7px;border:0;border-left:4px solid #e5b030;background:#fff7e0;color:#061b43;font-size:.71rem;line-height:1.3;cursor:pointer;overflow-wrap:anywhere}
.calendar-day-event.status-confirmed{border-color:#168349;background:#e5f5eb}
.calendar-day-event.status-changed{border-color:#e07822;background:#fff0e0}
.calendar-day-event.status-cancelled{border-color:#bd333a;background:#fde9ea;text-decoration:line-through}
.calendar-list{display:grid;gap:13px}
.calendar-event-card{background:#fff;border-left:6px solid #e5b030;border-radius:8px;box-shadow:0 8px 25px #071e4310;padding:19px 22px}
.calendar-event-card.status-confirmed{border-color:#168349}.calendar-event-card.status-changed{border-color:#e07822}.calendar-event-card.status-cancelled{border-color:#bd333a}
.calendar-event-card h3{font:800 2rem 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:7px 0}
.calendar-event-card p{margin:6px 0;line-height:1.5}.calendar-event-card button{border:1px solid #092b68;background:#fff;color:#092b68;padding:9px 13px;font-weight:800;cursor:pointer;margin-top:10px}
.calendar-status{display:inline-block;padding:5px 9px;border-radius:4px;background:#fff0ca;color:#6d4e00;font-size:.72rem;font-weight:900;text-transform:uppercase}
.calendar-status.status-confirmed{background:#dbf1e3;color:#135a37}.calendar-status.status-changed{background:#ffebd8;color:#8a4200}.calendar-status.status-cancelled{background:#fae2e3;color:#95262a}
.calendar-reminders{margin-top:42px;padding:27px;background:#fff;border-top:5px solid #f2bf49}
.calendar-reminders label{display:block;font-weight:800;margin:17px 0 8px}.calendar-reminders select{font:inherit;padding:11px;border:1px solid #afc0d8;min-height:46px;background:#fff;color:#061b43}
.calendar-dialog{width:min(92vw,660px);max-height:90dvh;border:0;border-top:6px solid #f2bf49;padding:28px 30px;box-shadow:0 24px 75px #0008;color:#18233a}
.calendar-dialog::backdrop{background:#03112cbd}.calendar-dialog h2{font:800 clamp(2rem,5vw,3.2rem)/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;margin:14px 30px 16px 0}
.calendar-dialog p{line-height:1.55}.calendar-dialog-close{position:absolute;right:13px;top:10px;border:0;background:#e6ebf3;color:#061b43;font-size:1.7rem;width:40px;height:40px;cursor:pointer}
.calendar-detail-row{padding:9px 0;border-top:1px solid #e0e5ec}.calendar-detail-row strong{display:block;color:#092b68}
.calendar-detail-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.calendar-detail-actions a{padding:11px 13px;background:#092b68;color:#fff;font-weight:800}.calendar-detail-actions a:first-child{background:#f2bf49;color:#061b43}
.calendar-warning{padding:11px 13px;background:#fff3d7;border-left:4px solid #e2a823}
.calendar-empty{background:#fff;padding:24px;color:#50617a}
.calendar-main button:focus-visible,.calendar-main a:focus-visible,.calendar-main select:focus-visible{outline:3px solid #f2bf49;outline-offset:3px}
@media(max-width:850px){.calendar-hero img{display:none}.calendar-day{min-height:85px;padding:4px}.calendar-day-event{font-size:.64rem;padding:4px}.calendar-day-number{font-size:.78rem}}
@media(max-width:570px){.calendar-content{padding:25px 0 60px}.calendar-team-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.calendar-team-tabs button{padding:11px 7px;font-size:.85rem;line-height:1.2}.calendar-subscribe{width:100%}.calendar-view-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.calendar-month-nav{width:100%;justify-content:center}.calendar-grid{overflow:visible}.calendar-weekday{font-size:.65rem;padding:8px 0}.calendar-day{min-height:60px;padding:3px}.calendar-day-event{font-size:0;height:9px;padding:0;border-left-width:0;border-radius:6px}.calendar-day-event:focus-visible{outline:3px solid #061b43}.calendar-day-number{margin-bottom:3px}.calendar-event-card{padding:16px}.calendar-dialog{padding:22px 18px}}

/* Lokalni raspored prema dostavljenoj referenci, u bojama i tipografiji kluba. */
.calendar-stage{padding:68px 0 65px;background:linear-gradient(#061b4399,#061b4366 47%,#f8f6f0 100%),url('stadion/stadion-02.jpg') center 30%/cover no-repeat}
.calendar-shell.container{width:min(1500px,calc(100% - 36px));display:grid;grid-template-columns:minmax(195px,.56fr) minmax(410px,1.42fr) minmax(365px,1.05fr);align-items:stretch;gap:16px}
.calendar-panel{min-width:0;background:#fff;border:1px solid #bed0e6;border-radius:18px;box-shadow:0 18px 45px #061b432b}
.calendar-sidebar{padding:29px 22px;background:linear-gradient(145deg,#f4f8ff,#e7effa)}
.calendar-side-crest{display:block;width:66px;height:66px;object-fit:contain;margin-bottom:22px}
.calendar-sidebar .calendar-eyebrow,.calendar-center .calendar-eyebrow,.calendar-aside .calendar-eyebrow{color:#0e429b;font-size:.72rem}
.calendar-sidebar h2,.calendar-aside h2{font:800 clamp(1.9rem,2.4vw,2.5rem)/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:#061b43;margin:12px 0 22px}
.calendar-team-tabs{display:grid;grid-template-columns:1fr;gap:9px}
.calendar-team-tabs button{width:100%;text-align:left;border:1px solid #cad7e7;border-radius:9px;background:#fff;box-shadow:0 2px 5px #061b4308;padding:13px 15px;min-height:51px;font-size:.92rem}
.calendar-team-tabs button[aria-pressed=true]{background:#0e429b;color:#fff;border-color:#0e429b;box-shadow:0 7px 16px #0e429b38}
.calendar-subscribe{width:100%;margin-top:23px;border-radius:8px;text-align:center}
.calendar-sidebar-note{font-size:.84rem;line-height:1.55;color:#52627a;margin:18px 0 0}
.calendar-center{padding:34px clamp(20px,2.5vw,38px) 30px}
.calendar-center h1{font:800 clamp(2.8rem,3.7vw,4.4rem)/.95 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:#061b43;margin:10px 0 12px}
.calendar-intro{color:#56647a;line-height:1.5;margin:0 0 23px;font-size:.93rem}
.calendar-view-tabs{display:inline-flex;gap:0;border:1px solid #b6c9e2;border-radius:8px;overflow:hidden;margin-bottom:25px}
.calendar-view-tabs button{border-radius:0;background:#eef3f9;color:#061b43;padding:11px 18px;min-height:48px}
.calendar-view-tabs button[aria-pressed=true]{background:#0e429b;color:#fff}
.calendar-month-nav{display:flex;justify-content:space-between;margin:2px 0 15px}
.calendar-month-nav strong{font:800 1.7rem 'Barlow Condensed',Impact,sans-serif;color:#061b43;min-width:0;text-transform:capitalize}
.calendar-month-nav button{border:0;background:transparent;font-size:2rem;color:#0e429b;width:38px;height:38px}
.calendar-feedback{margin:0;min-height:4px}
.calendar-grid{background:#d9e3ef;border-color:#d9e3ef;border-radius:9px;overflow:hidden}
.calendar-weekday{background:#f3f6fa;color:#061b43;font-size:.78rem;padding:11px 2px}
.calendar-day{min-height:77px;padding:9px 6px;text-align:center}
.calendar-day.is-outside{background:#f6f8fb;color:#9baac0}.calendar-day.is-outside .calendar-day-number{color:#9baac0}
.calendar-day.is-today{box-shadow:inset 0 0 0 2px #0e429b;background:#eef5ff}
.calendar-day-number{font-weight:700;font-size:.9rem;margin-bottom:6px}
.calendar-day-event,.calendar-day-event.status-confirmed,.calendar-day-event.status-changed,.calendar-day-event.status-cancelled{display:inline-block;width:12px;min-width:12px;height:12px;min-height:12px;border:0;border-radius:50%;padding:0;margin:2px;background:#e6b93a;font-size:0;vertical-align:middle;text-decoration:none}
.calendar-day-event.type-training{background:#2d84dd}.calendar-day-event.type-match{background:#2daa54}.calendar-day-event.type-club{background:#e2aa25}
.calendar-day-event.status-changed{outline:2px solid #de761b;outline-offset:2px}.calendar-day-event.status-cancelled{background:#be3644;outline:2px solid #be3644;outline-offset:2px}
.calendar-day-event:focus-visible{outline:3px solid #061b43;outline-offset:3px}
.calendar-legend{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:20px;color:#26334b;font-size:.83rem}
.calendar-legend span{display:inline-flex;align-items:center;gap:7px}.calendar-legend i{width:12px;height:12px;border-radius:50%;display:inline-block}.calendar-legend .legend-match{background:#2daa54}.calendar-legend .legend-training{background:#2d84dd}.calendar-legend .legend-club{background:#e2aa25}
.calendar-status-key{display:flex;gap:8px 13px;flex-wrap:wrap;margin-top:11px;color:#53647b;font-size:.7rem}.calendar-status-key span{font-weight:800}
.calendar-status-key .key-confirmed{color:#168349}.calendar-status-key .key-pending{color:#9b7000}.calendar-status-key .key-changed{color:#b85b11}.calendar-status-key .key-cancelled{color:#bd333a}
.calendar-day-event.status-pending{box-shadow:0 0 0 2px #e5b030}.calendar-day-event.status-confirmed{box-shadow:0 0 0 2px #168349}.calendar-day-event.status-changed{box-shadow:0 0 0 2px #e07822}.calendar-day-event.status-cancelled{box-shadow:0 0 0 2px #bd333a}
.calendar-aside{padding:34px 23px}.calendar-aside h2{margin:10px 0 24px}
.calendar-upcoming{display:grid;gap:14px}.calendar-upcoming .calendar-empty{padding:17px;border:1px solid #d6e0ec;border-radius:9px}
.calendar-upcoming-card{padding:16px 17px;border:1px solid #d1deec;border-left:5px solid #e5b030;border-radius:10px;background:#fff;box-shadow:0 5px 16px #061b430b}
.calendar-upcoming-card.status-confirmed{border-left-color:#168349}.calendar-upcoming-card.status-changed{border-left-color:#e07822}.calendar-upcoming-card.status-cancelled{border-left-color:#bd333a}
.calendar-upcoming-top{display:flex;justify-content:space-between;gap:8px;align-items:start}
.calendar-upcoming-card h3{font:800 1.65rem/1 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;color:#061b43;margin:2px 0 8px}
.calendar-upcoming-card p{margin:5px 0;color:#43536b;font-size:.83rem;line-height:1.45}
.calendar-upcoming-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:13px;flex-wrap:wrap}
.calendar-upcoming-actions button,.calendar-upcoming-actions a{padding:8px 11px;border:1px solid #b7cbe4;border-radius:6px;background:#f2f6fb;color:#092b68;font-weight:800;font-size:.75rem;cursor:pointer;text-align:center}
.calendar-upcoming-actions a{background:#0e429b;color:#fff;border-color:#0e429b}
.calendar-lower{padding:35px 0 72px;background:#f8f6f0}.calendar-lower>.container{width:min(1400px,calc(100% - 36px))}
.calendar-reminders{border-radius:12px;box-shadow:0 8px 25px #061b430a}
@media(max-width:1190px){.calendar-shell.container{grid-template-columns:210px minmax(0,1fr)}.calendar-aside{grid-column:1/-1}.calendar-upcoming{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.calendar-stage{padding:24px 0 38px}.calendar-shell.container{grid-template-columns:1fr;width:calc(100% - 24px)}.calendar-sidebar{padding:20px}.calendar-side-crest{display:none}.calendar-sidebar h2{margin:8px 0 15px}.calendar-team-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-sidebar-note{display:none}.calendar-subscribe{margin-top:15px}.calendar-aside{grid-column:auto}.calendar-upcoming{grid-template-columns:1fr}.calendar-center,.calendar-aside{padding:22px}.calendar-center h1{font-size:clamp(2.7rem,8vw,3.9rem)}}
@media(max-width:570px){.calendar-center,.calendar-aside{padding:18px}.calendar-team-tabs button{font-size:.82rem;text-align:center;min-height:47px;padding:9px 6px}.calendar-view-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.calendar-center .calendar-grid{overflow:hidden}.calendar-center .calendar-day{min-height:54px;padding:4px 1px}.calendar-center .calendar-day-event{height:10px;min-height:10px;width:10px;min-width:10px;margin:2px}.calendar-upcoming-card{padding:14px}.calendar-upcoming-top{display:block}.calendar-upcoming-top .calendar-status{margin:6px 0}.calendar-lower>.container{width:calc(100% - 24px)}}
