.regulatory-calendar-page{max-width:1320px;margin:0 auto}.calendar-heading{align-items:flex-start;gap:24px}.calendar-mode-switch,.calendar-view-tabs,.calendar-layer-tabs{flex-wrap:wrap;gap:8px;display:flex}.calendar-mode-switch{margin:20px 0 14px}.calendar-view-tabs{margin:14px 0}.calendar-layer-tabs{margin:14px 0 20px}.calendar-mode-switch button,.calendar-view-tabs button,.calendar-layer-tabs button,.calendar-month-nav button,.calendar-back,.calendar-entry-action button{border:1px solid var(--border,#d8dee8);background:var(--surface,#fff);min-height:42px;color:inherit;cursor:pointer;font:inherit;border-radius:10px;padding:0 14px}.calendar-mode-switch button.active,.calendar-view-tabs button.active,.calendar-layer-tabs button.active{background:var(--surface-strong,#f5f6f8);border-color:currentColor;font-weight:750}.calendar-mode-switch button:focus-visible,.calendar-view-tabs button:focus-visible,.calendar-layer-tabs button:focus-visible,.calendar-month-nav button:focus-visible,.calendar-back:focus-visible,.calendar-entry-action button:focus-visible,.calendar-filters select:focus-visible,.calendar-source-health summary:focus-visible{outline-offset:2px;outline:3px solid}.calendar-month-nav{border:1px solid var(--border,#d8dee8);background:var(--surface,#fff);border-radius:16px;grid-template-columns:minmax(150px,auto) minmax(220px,1fr) minmax(150px,auto);align-items:center;gap:14px;margin:10px 0 14px;padding:16px;display:grid}.calendar-month-nav>div{text-align:center;gap:3px;display:grid}.calendar-month-nav small{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;font-weight:700}.calendar-month-nav strong{font-size:1.35rem}.calendar-filters{border:1px solid var(--border,#d8dee8);border-radius:14px;grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;margin:0 0 24px;padding:16px 18px 18px;display:grid}.calendar-filters legend{padding:0 8px;font-weight:750}.calendar-filters label{gap:6px;font-size:.88rem;font-weight:650;display:grid}.calendar-filters select{border:1px solid var(--border,#d8dee8);background:var(--surface,#fff);width:100%;min-height:44px;color:inherit;font:inherit;border-radius:9px;padding:0 10px}.calendar-mode-note,.calendar-state{border:1px solid var(--border,#d8dee8);border-radius:12px;margin:18px 0;padding:16px 18px}.calendar-state{gap:4px;display:grid}.calendar-state.empty span,.calendar-source-health small,.calendar-business-meta{color:var(--muted)}.calendar-month-list{gap:26px;margin-top:22px;display:grid}.calendar-date-group{grid-template-columns:minmax(155px,190px) minmax(0,1fr);gap:24px;display:grid}.calendar-date-marker{padding-top:2px;position:relative}.calendar-date-marker:after{content:"";background:var(--border,#d8dee8);width:1px;position:absolute;top:34px;bottom:-26px;left:8px}.calendar-date-group:last-child .calendar-date-marker:after{display:none}.calendar-date-marker span{font-size:.95rem;font-weight:800;display:inline-block}.calendar-date-events{gap:12px;display:grid}.calendar-business-card,.calendar-entry-card,.calendar-business-detail{border:1px solid var(--border,#d8dee8);background:var(--surface,#fff);border-radius:16px}.calendar-business-card{padding:18px 20px}.calendar-business-card-heading,.calendar-entry-title-row,.calendar-business-detail-topline{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.calendar-business-card-heading>div{min-width:0}.calendar-business-card h2,.calendar-entry-title-row h2{margin:8px 0 0;font-size:1.05rem;line-height:1.35}.calendar-business-card>p,.calendar-entry-main>p{margin:10px 0;line-height:1.55}.calendar-layer,.calendar-status{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;min-height:28px;padding:2px 9px;font-size:.76rem;font-weight:750;display:inline-flex}.layer-reference,.status-reference{border-style:dotted}.status-review_required{border-style:dashed}.status-overdue{font-weight:850}.calendar-business-meta{flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-size:.84rem;display:flex}.calendar-entry-action{border-top:1px solid var(--border,#d8dee8);justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:14px;display:flex}.calendar-entry-action strong,.calendar-entry-action>span{max-width:760px;font-size:.88rem;line-height:1.4}.calendar-entry-list{gap:12px;margin-top:20px;display:grid}.calendar-entry-card{grid-template-columns:minmax(180px,230px) minmax(0,1fr);gap:20px;padding:18px;display:grid}.calendar-entry-date{align-content:start;gap:6px;display:grid}.calendar-entry-date span{color:var(--muted);font-size:.84rem}.calendar-back{margin-bottom:16px}.calendar-detail-heading{margin-bottom:18px}.calendar-business-detail{gap:20px;padding:24px;display:grid}.calendar-business-detail section{gap:7px;display:grid}.calendar-business-detail section h2{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin:0;font-size:.82rem}.calendar-business-detail section p{margin:0;line-height:1.55}.calendar-business-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.calendar-detail-value{font-size:1.02rem;font-weight:700}.calendar-business-detail a{color:inherit;text-underline-offset:3px;font-weight:700}.calendar-technical-proof,.calendar-source-health{border:1px solid var(--border,#d8dee8);background:var(--surface-strong,#f5f6f8);border-radius:12px}.calendar-technical-proof{margin-top:4px}.calendar-technical-proof summary,.calendar-source-health summary{cursor:pointer;padding:14px 16px;font-weight:750;list-style:none}.calendar-technical-proof summary::-webkit-details-marker{display:none}.calendar-source-health summary::-webkit-details-marker{display:none}.calendar-technical-proof dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0;padding:0 16px 16px;display:grid}.calendar-technical-proof dl>div{min-width:0}.calendar-technical-proof dt{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:750}.calendar-technical-proof dd{overflow-wrap:anywhere;margin:0}.calendar-source-health{margin-top:28px}.calendar-source-health summary{justify-content:space-between;gap:16px;display:flex}.calendar-source-health summary span{color:var(--muted);font-size:.82rem;font-weight:650}.calendar-source-health-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 14px;display:grid}.calendar-source-health-grid>div{border:1px solid var(--border,#d8dee8);background:var(--surface,#fff);border-radius:10px;gap:3px;padding:12px;display:grid}.calendar-source-health-grid span{font-size:.8rem;font-weight:700}@media (width<=980px){.calendar-date-group{grid-template-columns:1fr;gap:10px}.calendar-date-marker:after{display:none}.calendar-entry-card{grid-template-columns:1fr}.calendar-source-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.calendar-mode-switch,.calendar-view-tabs,.calendar-layer-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.calendar-month-nav{grid-template-columns:1fr}.calendar-month-nav>div{order:-1}.calendar-filters,.calendar-business-detail-grid,.calendar-technical-proof dl,.calendar-source-health-grid{grid-template-columns:1fr}.calendar-business-card-heading,.calendar-entry-title-row,.calendar-business-detail-topline,.calendar-entry-action,.calendar-source-health summary{flex-direction:column;align-items:stretch}.calendar-entry-action button,.calendar-month-nav button,.calendar-mode-switch button,.calendar-view-tabs button,.calendar-layer-tabs button{width:100%}}@media (prefers-reduced-motion:reduce){.regulatory-calendar-page *{scroll-behavior:auto!important;transition:none!important}}.calendar-card-payroll{color:#66707b;border-top:1px dashed #e1e3e1;flex-wrap:wrap;gap:7px 14px;margin-top:9px;padding-top:8px;font-size:10px;display:flex}.calendar-card-payroll span{align-items:baseline;gap:5px;display:inline-flex}.calendar-card-payroll strong{color:#20252a;font-size:10px}.calendar-payroll-timing{background:#f8fbff;border:1px solid #dbe4ef;border-radius:8px;padding:13px}.calendar-payroll-timing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:9px;display:grid}.calendar-payroll-timing-grid>div{background:#fff;border:1px solid #e2e7ec;border-radius:6px;padding:9px}.calendar-payroll-timing-grid span,.calendar-payroll-timing-grid strong{display:block}.calendar-payroll-timing-grid span{text-transform:uppercase;color:#78818a;font-size:9px;font-weight:800}.calendar-payroll-timing-grid strong{margin-top:4px;font-size:12px}.calendar-payroll-timing small{color:#6b7480;margin-top:5px;line-height:1.45;display:block}@media (width<=700px){.calendar-payroll-timing-grid{grid-template-columns:1fr}.calendar-card-payroll{flex-direction:column;gap:4px}}.calendar-source-list{gap:7px;margin-top:8px;display:grid}.calendar-source-evidence{background:#fff;border:1px solid #e1e4e7;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.calendar-source-evidence strong,.calendar-source-evidence span{display:block}.calendar-source-evidence strong{font-size:11px}.calendar-source-evidence span{color:#747d86;text-transform:uppercase;letter-spacing:.03em;margin-top:2px;font-size:9px;font-weight:700}.calendar-source-evidence a{white-space:nowrap;font-size:10px;font-weight:800}@media (width<=600px){.calendar-source-evidence{flex-direction:column;align-items:flex-start}}.calendar-statutory-shift{border:1px solid;border-radius:999px;align-items:center;width:fit-content;margin-top:4px;padding:3px 7px;font-size:10px;font-weight:650;display:inline-flex}
