/* ============================================================
   Compliance Calendar: calendar-only styles.
   Gate + shared pieces come from ../assessment/assessment.css.
   ============================================================ */

.cal-wrap{max-width:860px;padding:52px 0 72px}
.cal-title{font-size:clamp(30px,4vw,44px);letter-spacing:-.02em;line-height:1.08;margin:12px 0 10px}
.cal-sub{font-size:16.5px;color:var(--muted)}

.cal-tabs{display:flex;justify-content:center;gap:10px;margin:0 0 26px}
.cal-tab{font-family:inherit;font-size:15.5px;font-weight:700;padding:12px 26px;border-radius:999px;cursor:pointer;
  border:1.5px solid var(--line);background:#fff;color:var(--muted);transition:all .18s}
.cal-tab:hover{border-color:var(--amber);color:var(--orange-dark)}
.cal-tab.active{background:var(--grad-brand);color:#fff;border-color:transparent;box-shadow:var(--sh-orange-lg,0 10px 30px -10px rgba(249,115,22,.5))}

.cal-h2{font-size:clamp(20px,2.6vw,25px);letter-spacing:-.02em;margin:30px 0 14px}
.cal-body .cal-h2:first-child{margin-top:0}
.cal-row{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:var(--sh-sm);padding:18px 22px;margin-bottom:12px}
.cal-when{flex:none;width:190px;font-size:14px;font-weight:800;color:var(--orange-dark);background:var(--bg-peachtint);
  border:1px solid #FBE0C6;border-radius:12px;padding:10px 14px;text-align:center}
.cal-row b{font-size:16px;letter-spacing:-.01em}
.cal-row p{font-size:14px;color:var(--muted);line-height:1.55;margin:6px 0 0}
.cal-row.annual .cal-when{background:#fff;border-style:dashed}

.cal-actions{text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);
  padding:28px;margin-top:30px}
.cal-icsnote{font-size:13.5px;color:var(--muted);margin:12px auto 18px;max-width:520px;line-height:1.55}
.cal-cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cal-fine{font-size:12.5px;color:var(--muted);line-height:1.6;margin-top:22px;text-align:center}

@media(max-width:640px){
  .cal-row{flex-direction:column;gap:10px}
  .cal-when{width:auto;align-self:flex-start}
  .cal-cta-row{flex-direction:column}
}

@media print{
  .nav,.footer,.cal-actions,.xc-launch,.xc-panel,.xc-nudge,#cookieyes{display:none!important}
  .cal-wrap{padding:0}
}
