#editor{box-sizing:border-box;line-height:1.65;padding-top:24px}#editor *,#editor *::before,#editor *::after{box-sizing:border-box}#editor .muted{color:#53667a;font-size:.85rem}#editor button,#editor input,#editor select{font:inherit}#editor button,#editor select,#editor input{min-height:44px}#editor button{cursor:pointer;border-radius:7px;padding:9px 15px;border:1px solid #b9c9d8;font-weight:600;background:#fff;color:#175aa0}#editor button:disabled{opacity:.45;cursor:not-allowed}#editor button:focus-visible,#editor input:focus-visible,#editor select:focus-visible,#editor a:focus-visible{outline:3px solid #f0b64c;outline-offset:3px}#editor input:not([type=checkbox]),#editor select{width:100%;border:1px solid #b9c9d8;border-radius:5px;background:#fff;color:#253346;padding:8px;min-width:0}#editor input[type=checkbox]{accent-color:#175aa0;width:18px;min-height:18px;height:18px}#editor .primary{color:#fff;background:#175aa0;border-color:#175aa0}#editor h1{font-size:clamp(1.6rem, 3vw, 2.25rem);margin:6px 0 12px;letter-spacing:.02em}#editor h1 span{white-space:nowrap}#editor h2{font-size:1.05rem;margin:0 0 12px}#editor p{margin:0 0 12px}#editor .eyebrow{color:#175aa0;font-size:.8rem;font-weight:700;letter-spacing:.08em}#editor .intro{margin-bottom:24px}#editor .workspace{display:grid;grid-template-columns:330px minmax(0, 1fr);gap:24px;align-items:start}#editor .controls,#editor .preview-panel{border:1px solid #dce4ed;border-radius:12px;background:#fff;padding:22px;min-width:0}#editor .controls h2:not(:first-child){margin-top:24px}#editor label{display:block;font-size:.88rem}#editor label input:not([type=checkbox]),#editor label select{margin-top:5px}#editor .field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}#editor fieldset{padding:0;margin:24px 0 12px;border:0}#editor legend{font-weight:700;margin-bottom:10px}#editor .weekdays{display:grid;grid-template-columns:repeat(7, minmax(0, 1fr));gap:2px}#editor .weekdays label{display:flex;align-items:center;gap:3px;min-height:44px}#editor .weekdays input{margin:0;flex-shrink:0}#editor .check{display:flex;align-items:center;gap:8px}#editor .exception-list{list-style:none;margin:10px 0;padding:0;max-height:280px;overflow:auto}#editor .exception-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #e3e9f0;padding:6px 0;font-size:.8rem}#editor .exception-list span{overflow-wrap:anywhere}#editor .exception-list button{flex-shrink:0;padding:6px 8px}#editor #update{width:100%;margin:8px 0}#editor hr{border:0;border-top:1px solid #dce4ed;margin:24px 0}#editor .file-label input{font-size:.8rem}#editor .toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}#editor .toolbar h2{margin:0}#editor .toolbar>div{display:flex;gap:8px;flex-wrap:wrap}#editor #message:not(:empty){background:#eaf3fc;padding:12px 16px;border-radius:7px;margin-bottom:20px}#editor #message.error,#editor .error{background:#fff0eb;color:#9e3420}#editor .empty{padding:40px 10px;text-align:center;color:#53667a}#editor .calendar-summary{padding:12px;background:#f1f5fa;border-radius:7px;margin-bottom:20px;font-size:.9rem}#editor .calendar-summary p{margin:6px 0 0;font-size:.8rem}#editor .forecast{color:#8a4c13}#editor .calendar-month{margin-bottom:28px}#editor .month-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px}#editor .month-heading h2{font-size:1.35rem}#editor .month-heading p{font-size:.85rem}#editor .calendar-grid{width:100%;border-collapse:collapse;table-layout:fixed}#editor .calendar-grid th{padding:7px 0;background:#f0f4f9;border:1px solid #cdd8e3;font-weight:500}#editor .calendar-grid td{height:94px;padding:5px;vertical-align:top;border:1px solid #cdd8e3}#editor .calendar-grid td.closed{background:#fff3ef}#editor .calendar-grid td.outside{background:#f7f8fa}#editor .day-heading{display:flex;align-items:center;justify-content:space-between;gap:2px}#editor .day-number{font-weight:700;font-size:1.05rem}#editor .day-state{font-size:.65rem;color:#9c3625;border:1px solid #c98d7f;border-radius:3px;padding:0 3px}#editor .day-state.open{color:#175aa0;border-color:#175aa0}#editor .day-label,#editor .holiday-name{display:block;font-size:.65rem;line-height:1.4;overflow-wrap:anywhere}#editor .day-label{margin-top:5px;font-weight:600}#editor .holiday-name{color:#77554b;margin-top:3px}#editor .calendar-footnote{font-size:.67rem;color:#53667a;margin-top:8px;overflow-wrap:anywhere}#editor .print-help{margin-top:24px;color:#53667a;font-size:.8rem}#editor .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#editor .print-stale{display:none}#editor [hidden]{display:none !important}@media (max-width: 800px){#editor .workspace{grid-template-columns:1fr;gap:18px}#editor .controls,#editor .preview-panel{padding:16px}#editor .calendar-grid td{padding:3px;height:86px}#editor .day-label,#editor .holiday-name{font-size:.6rem}#editor .day-state{padding:0 2px}}@page{size:A4 portrait;margin:12mm}@media print{body.business-calendar-page{min-width:0;background:#fff;color:#000;font-size:10pt}#editor .screen-only,#editor .visually-hidden{display:none !important}#editor,#editor .preview-panel{margin:0;padding:0;max-width:none;border:0;border-radius:0}body.business-calendar-page>:not(.content-wrap),body.business-calendar-page>.content-wrap>:not(.business-calendar-content),.business-calendar-content>:not(#editor){display:none !important}body.business-calendar-page>.content-wrap,.business-calendar-content{padding:0;margin:0;max-width:none}#editor .workspace{display:block}#editor .calendar-month{margin:0;break-after:page;page-break-after:always;break-inside:avoid}#editor .calendar-month:last-child{break-after:auto;page-break-after:auto}#editor .month-heading{padding:4mm 0}#editor .month-heading h2{font-size:20pt}#editor .calendar-grid td{height:31mm;padding:2mm}#editor .calendar-grid th{padding:2mm}#editor .day-number{font-size:14pt}#editor .day-label,#editor .holiday-name{font-size:8pt}#editor .day-state{font-size:9pt}#editor .calendar-footnote{font-size:8pt;margin-top:3mm}.has-unapplied #editor #result{display:none}.has-unapplied #editor .print-stale{display:block}}
