.container--calendar{padding:28px 36px}.tpl-calendar{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.cal-header{flex-shrink:0;justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.cal-monthname,.cal-yearname{font-family:var(--ws-font-title);letter-spacing:1px;color:var(--ws-text);font-size:34px;font-weight:400;line-height:1}.cal-monthname{text-transform:uppercase}.cal-weekdays{flex-shrink:0;grid-template-columns:repeat(7,1fr);margin-bottom:8px;display:grid}.cal-weekday{letter-spacing:1px;color:var(--ws-text-muted);text-align:center;font-size:12px;font-weight:600}.cal-grid{grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(var(--cal-rows,5), 1fr);border-top:1px solid var(--ws-border-content);border-left:1px solid var(--ws-border-content);flex:1;min-height:0;display:grid}.cal-cell{border-right:1px solid var(--ws-border-content);border-bottom:1px solid var(--ws-border-content);flex-direction:column;min-height:0;padding:20px 5px 3px;display:flex;position:relative;overflow:hidden}.cal-cell--blank{background:0 0}.cal-daynum{color:var(--ws-text);font-size:13px;position:absolute;top:4px;right:7px}.cal-holiday{flex-shrink:0;align-items:baseline;gap:5px;margin-bottom:2px;display:flex}.cal-holiday-dot{background:var(--ws-brand);border-radius:50%;flex-shrink:0;width:6px;height:6px;transform:translateY(-1px)}.cal-holiday-name{color:var(--ws-brand);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.cal-notes{min-height:0;color:var(--ws-text);word-break:break-word;outline:none;flex:1;font-size:12px;line-height:1.25;overflow:hidden}.cal-holidays{align-items:center;gap:10px;display:flex}.cal-controls{--cal-ctrl-h:38px;flex-direction:column;align-items:stretch;gap:22px}.cal-controls-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.cal-controls-bottom{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.cal-controls-bottom .customize-buttons{margin-left:auto}.cal-controls .toggle-button,.cal-controls .customize-btn,.cal-controls .save-pdf-btn,.cal-controls .print-btn,.cal-nav-btn{height:var(--cal-ctrl-h)}.cal-controls .save-pdf-btn,.cal-controls .print-btn{justify-content:center;align-items:center;display:inline-flex}.cal-controls .toggle-option{align-items:center;display:flex}.cal-monthnav{align-items:center;gap:8px;display:flex}.cal-nav-btn{width:var(--cal-ctrl-h);height:var(--cal-ctrl-h);background-color:var(--ws-brand);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:all .2s;display:inline-flex}.cal-nav-btn:hover{background-color:var(--ws-brand-hover);transform:translateY(-1px);box-shadow:0 4px 12px #0828454d}.cal-dd{position:relative}.cal-dd-btn{height:var(--cal-ctrl-h);border:1px solid var(--ws-border-ui);background:var(--ws-bg-page);color:var(--ws-text);font-size:var(--ws-body-size);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-family:inherit;font-weight:500;transition:border-color .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.cal-dd-btn:hover{border-color:var(--ws-brand)}.cal-dd-caret{color:var(--ws-text-muted);margin-left:2px;font-size:12px}.cal-flag{border-radius:2px;flex-shrink:0;width:21px;height:14px;display:inline-flex;overflow:hidden;box-shadow:inset 0 0 0 1px #0000001f}.cal-flag-svg{width:100%;height:100%;display:block}.cal-dd-menu{z-index:20;background:var(--ws-bg-page);border:1px solid var(--ws-border-ui);border-radius:10px;min-width:100%;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0000001f}.cal-dd-option{width:100%;color:var(--ws-text);font-size:var(--ws-body-size);cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-family:inherit;display:flex}.cal-dd-option:hover{background:var(--ws-bg-subtle)}.cal-dd-option.selected{color:var(--ws-brand);font-weight:600}@media (max-width:940px){.cal-controls-top{flex-direction:column;align-items:stretch}.cal-monthnav{justify-content:space-between}.cal-monthnav .cal-dd{flex:1}.cal-monthnav .cal-dd-btn{justify-content:space-between;width:100%}.controls-actions{width:100%}.save-pdf-btn,.print-btn{flex:1}}@media screen and (max-width:768px){.cal-notes{font-size:16px}}@media print{.container--calendar{padding:6px 10px}}
