/* Deal calendar (deal-calendar.js, 2026-10-23): property + share on the
   calendar form, and the "Add dates to calendar" pop-up. */
.dc-form-fields { display: grid; gap: 6px; }
.dc-form-fields select { width: 100%; }
.dc-share.is-disabled { opacity: 0.55; }
.dc-hint { display: block; color: var(--sv-text-muted); font-size: 0.8rem; }

.dc-host:empty { display: none; }
.dc-backdrop { position: fixed; inset: 0; z-index: 1200; display: flex; align-items: flex-start; justify-content: center; padding: 6vh 16px 16px; background: rgba(5, 12, 20, 0.62); overflow-y: auto; }
.dc-modal { width: min(560px, 100%); display: grid; gap: 10px; padding: 18px 20px 16px; border-radius: 14px; background: var(--sv-surface); color: var(--sv-text); border: 1px solid var(--sv-line); box-shadow: 0 18px 50px rgba(0, 0, 0, 0.45); }
.dc-modal h2 { margin: 0; color: var(--sv-heading); }
.dc-modal .eyebrow { margin: 0; color: var(--sv-text-muted); }
.dc-sub { margin: 0; color: var(--sv-text-muted); }
.dc-all, .dc-share-all { display: flex; align-items: center; gap: 8px; }
.dc-all input[type="checkbox"], .dc-share-all input[type="checkbox"], .dc-dates input[type="checkbox"] { width: 18px; min-width: 18px; height: 18px; padding: 0; margin: 2px 0 0; flex: 0 0 auto; }
.dc-dates { list-style: none; margin: 0; padding: 0; display: grid; border-top: 1px solid var(--sv-line); }
.dc-dates li { padding: 8px 0; border-bottom: 1px solid var(--sv-line); display: flex; gap: 10px; align-items: flex-start; }
.dc-dates label { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; width: 100%; }
.dc-dates li span { display: grid; gap: 2px; min-width: 0; }
.dc-dates small { color: var(--sv-text-muted); }
.dc-dates .dc-basis { font-size: 0.76rem; }
.dc-dates li.is-on { opacity: 0.7; }
.dc-check { color: #2e8b57; font-weight: 800; width: 18px; text-align: center; }
.dc-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
