.rudra-header { padding: 18px 0 12px; }
.rudra-header .section-title { margin-bottom: 18px; }
.rudra-intro { max-width: 750px; margin: auto; padding: 14px 18px; background: #fff8e1; border: 1px solid #e7c477; border-left: 4px solid #a11146; border-radius: 10px; color: #3a1a00; font-size: .95rem; line-height: 1.5; }
.rudra-intro p { margin: 0 0 6px; }
.rudra-intro p:last-child { margin-bottom: 0; }
.rudra-intro a { color: #8b173d; }
.rudra-date-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rudra-date { display: flex; align-items: center; gap: 10px; border: 1px solid #d4b896; border-radius: 8px; padding: 12px; cursor: pointer; color: #3a1a00; background: #fffaf3; }
.rudra-date:has(input:checked) { background: #fff0d7; border-color: #cc4e00; }
.rudra-date:has(input:focus-visible) { outline: 3px solid #a11146; outline-offset: 2px; }
.rudra-date input { width: 18px; height: 18px; accent-color: #a11146; flex-shrink: 0; }
.rudra-date span { font-weight: 700; }
.rudra-date small { display: block; font-weight: 400; font-size: .8rem; }
.form-alert { display: none; margin-top: 20px; padding: 16px; border-radius: 8px; line-height: 1.6; }
.form-alert.show { display: block; }
.form-alert.success { color: #1b5e20; background: #e9f5eb; border: 1px solid #a7d5ae; }
.form-alert.error { color: #9c1b1b; background: #fdeaea; border: 1px solid #efb4b4; }
@media (max-width: 767px) {
  .rudra-date-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rudra-header .section-title { font-size: 1.6rem; }
}
