.cwc-calendar{--line:#e2e2e2;--soft:#f5f5f5;--muted:#707070;max-width:1480px;margin:35px auto;padding:0 20px;color:#111;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.cwc-calendar *{box-sizing:border-box}.cwc-front-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:28px 30px;background:#111;color:#fff;border-radius:18px}.cwc-front-header>div:first-child>span{display:block;font-size:10px;letter-spacing:.2em;font-weight:800;color:#aaa}.cwc-front-header h2{font-size:31px;margin:7px 0;color:#fff}.cwc-front-header small{color:#aaa;font-size:11px}.cwc-front-controls{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:260px}.cwc-front-nav{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.cwc-view-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0}.cwc-view-nav label{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#aaa}.cwc-view-nav select{height:40px;min-width:170px;padding:0 30px 0 12px;border:1px solid #444;border-radius:8px;background:#252525;color:#fff;font-size:12px;font-weight:700;cursor:pointer;outline:none}.cwc-view-nav select:focus{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.18)}.cwc-front-nav button,.cwc-go-date{border:1px solid #444;background:#252525;color:#fff;padding:10px 13px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700}.cwc-front-nav button:nth-child(2),.cwc-go-date{background:#fff;color:#111;border-color:#fff}.cwc-front-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:10px 0 6px}.cwc-front-filters select{width:100%;height:40px;padding:9px 11px;background:#fff;border:1px solid #d8d8d8;border-radius:8px;color:#222;font-size:12px}.cwc-clear-filters{height:40px;border:1px solid #111;background:#fff;color:#111;border-radius:8px;padding:0 14px;cursor:pointer;font-size:11px;font-weight:800}.cwc-front-message{min-height:20px;color:#777;font-size:12px;margin:8px 2px}.cwc-week-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.cwc-day{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.05);min-width:0}.cwc-day-header{background:#f4f4f4;padding:13px 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e5e5}.cwc-day-header span{text-transform:uppercase;font-size:10px;letter-spacing:.1em;font-weight:800;color:#666}.cwc-day-header b{font-size:17px}.cwc-day-header small{font-size:9px;color:#777;display:block;margin-top:2px}.cwc-empty{padding:30px 13px;color:#aaa;font-size:11px;text-align:center}.cwc-event{margin:9px;padding:13px;border:1px solid #dedede;border-left:3px solid #111;background:#fff;border-radius:9px;box-shadow:0 2px 7px rgba(0,0,0,.05)}.cwc-event.cwc-cancelled{border-left-color:#c0002b;background:#fff8fa;opacity:.82}.cwc-event.cwc-cancelled h3{text-decoration:line-through}.cwc-event.cwc-postponed{border-left-color:#b57900;background:#fffaf0}.cwc-event.cwc-relocated{border-left-color:#666;background:#f8f8f8}.cwc-event-type{font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.1em;color:#777}.cwc-event h3{font-size:14px;line-height:1.3;margin:7px 0}.cwc-event-time{font-size:12px;font-weight:750;margin-top:5px}.cwc-meta,.cwc-location{font-size:11px;color:#666;margin-top:6px}.cwc-status{display:inline-block;padding:3px 6px;border-radius:999px;margin-left:5px;font-size:8px;background:#111;color:#fff}.cwc-cancelled .cwc-status{background:#c0002b}.cwc-postponed .cwc-status{background:#b57900}.cwc-relocated .cwc-status{background:#666}.cwc-event details{margin-top:10px;font-size:11px}.cwc-event summary{cursor:pointer;font-weight:750}.cwc-details{padding-top:8px;color:#555;line-height:1.5}.cwc-details p{margin:5px 0}.cwc-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.cwc-actions a{font-size:10px;color:#111;text-decoration:underline}.cwc-actions .cwc-register{font-weight:800}.cwc-month-day .cwc-day-header{min-height:58px;align-items:flex-start}.cwc-month-day .cwc-day-header>div{display:flex;flex-direction:column}.cwc-two-week-day .cwc-day-header{min-height:52px}@media(max-width:1100px){.cwc-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cwc-front-filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.cwc-calendar{padding:0 12px;margin:20px auto}.cwc-front-header{padding:23px 20px;flex-direction:column;align-items:stretch}.cwc-front-header h2{font-size:27px}.cwc-front-controls{min-width:0;width:100%;gap:9px}.cwc-view-nav{justify-content:stretch}.cwc-view-nav label{font-size:9px}.cwc-view-nav select{flex:1;min-width:0;width:100%}.cwc-front-nav{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}.cwc-front-nav button{width:100%}.cwc-front-filters{grid-template-columns:1fr 1fr}.cwc-week-grid{grid-template-columns:1fr}.cwc-day-header{padding:12px 14px}.cwc-event{margin:8px}.cwc-clear-filters{grid-column:1/-1}}

/* Event details modal */
body.cwc-modal-open{overflow:hidden}
.cwc-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}
.cwc-modal.is-open{display:flex}
.cwc-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}
.cwc-modal-dialog{position:relative;width:min(720px,100%);max-height:min(88vh,820px);overflow:auto;background:#fff;border:1px solid #dedede;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.28);color:#111;padding:0;animation:cwcModalIn .18s ease-out}
.cwc-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid #e7e7e7;position:sticky;top:0;background:#fff;z-index:2}
.cwc-modal-kicker{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#777;margin-bottom:6px}
.cwc-modal-head h3{font-size:25px;line-height:1.2;margin:0;color:#111}
.cwc-modal-close{width:38px;height:38px;border:1px solid #ddd;background:#f5f5f5;color:#111;border-radius:10px;font-size:25px;line-height:1;cursor:pointer;flex:0 0 auto}
.cwc-modal-close:hover{background:#111;color:#fff;border-color:#111}
.cwc-modal-status{padding:0 26px}
.cwc-modal-status-pill{display:inline-flex;margin-top:16px;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:#111;color:#fff}
.cwc-modal-status-cancelled{background:#c0002b}.cwc-modal-status-postponed{background:#b57900}.cwc-modal-status-relocated{background:#666}
.cwc-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#e7e7e7;margin:18px 26px 0;border:1px solid #e7e7e7;border-radius:12px;overflow:hidden}
.cwc-modal-field{background:#fff;padding:14px 15px;min-width:0}
.cwc-modal-field-full{grid-column:1/-1}
.cwc-modal-field span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#777;margin-bottom:5px}
.cwc-modal-field strong{display:block;font-size:13px;line-height:1.55;font-weight:600;color:#171717;overflow-wrap:anywhere}
.cwc-modal-actions{display:flex;flex-wrap:wrap;gap:9px;padding:20px 26px 24px}
.cwc-modal-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border:1px solid #222;border-radius:9px;background:#fff;color:#111;text-decoration:none;font-size:11px;font-weight:800;cursor:pointer}
.cwc-modal-action:hover{background:#111;color:#fff;border-color:#111}
.cwc-modal-action.cwc-action-register{background:#111;color:#fff;border-color:#111}.cwc-modal-action.cwc-action-register:hover{background:#333}
.cwc-modal-action.cwc-action-close{margin-left:auto;background:#f4f4f4;border-color:#ddd}
.cwc-modal-empty{margin:20px 26px;color:#777;font-size:12px}
.cwc-view-details{display:inline-flex;align-items:center;justify-content:center;margin-top:11px;min-height:32px;padding:0 10px;border:1px solid #222;border-radius:7px;background:#111;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.cwc-view-details:hover{background:#333}
.cwc-event{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.cwc-event:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.09);border-color:#bdbdbd}
.cwc-event:focus-visible{outline:2px solid #111;outline-offset:2px}
@keyframes cwcModalIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:650px){.cwc-modal{padding:12px}.cwc-modal-dialog{max-height:94vh;border-radius:14px}.cwc-modal-head{padding:20px 18px 15px}.cwc-modal-head h3{font-size:21px}.cwc-modal-status{padding:0 18px}.cwc-modal-grid{grid-template-columns:1fr;margin:14px 18px 0}.cwc-modal-field-full{grid-column:auto}.cwc-modal-actions{padding:16px 18px 20px}.cwc-modal-action{flex:1 1 calc(50% - 9px)}.cwc-modal-action.cwc-action-close{margin-left:0}}
