.calendar-sharing-dialog { width:min(700px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; }
.calendar-sharing-dialog .edit-dialog-header h2 { font:750 23px/1.15 var(--font-display); }
.calendar-sharing-dialog .edit-event-form { padding:24px; }
.calendar-sharing-dialog .calendar-sharing-privacy { margin:0 0 16px; color:var(--muted); font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-audience-tools { display:flex; align-items:flex-end; gap:10px; margin-bottom:20px; }
.calendar-sharing-field { display:grid; flex:1; min-width:0; gap:6px; color:var(--ink); font:650 12px var(--font-ui); }
.calendar-sharing-dialog :is(input:not([type=checkbox]),select) { box-sizing:border-box; width:100%; min-width:0; min-height:41px; padding:9px 10px; color:var(--ink); background:#fff; border:1px solid #cbd3df; border-radius:7px; font:500 13px var(--font-ui); }
.calendar-sharing-dialog input[readonly] { background:#f5f8fb; font-size:12px; }
.calendar-sharing-form .edit-form-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); }
.calendar-sharing-calendars { margin-top:20px; }
.calendar-sharing-calendars legend { margin-bottom:9px; }
.calendar-sharing-calendars legend .standard-form-label { display:inline-flex; align-items:center; gap:4px; white-space:nowrap; }
.calendar-sharing-calendars .calendar-checkbox-options { gap:9px; }
.calendar-sharing-calendars .calendar-checkbox-options label { min-height:38px; border-radius:8px; }
.calendar-sharing-calendars input[type=checkbox] { width:16px; height:16px; flex-shrink:0; accent-color:var(--navy); }
.calendar-sharing-subscription-fields { margin-top:20px; }
.calendar-sharing-dialog .calendar-sharing-field-help { color:var(--muted); font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-dialog .calendar-sharing-time-note { margin:13px 0 0; font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-details { margin-top:16px; border-top:1px solid var(--border); }
.calendar-sharing-details summary { padding:12px 0; color:var(--ink); cursor:pointer; font:650 12px var(--font-ui); }
.calendar-sharing-details-content { display:grid; gap:12px; padding:0 0 12px; }
.calendar-sharing-details-content > label { display:grid; gap:6px; color:var(--ink); font:650 12px var(--font-ui); }
.calendar-sharing-details-content .calendar-sharing-time-note { margin:0; }
.calendar-sharing-edit-options > .calendar-sharing-form { padding:0 0 12px; }
.calendar-sharing-draft-note { margin:10px 0 0; color:#8a5b17; font:650 12px/1.4 var(--font-ui); }
.calendar-sharing-draft-note:empty,.calendar-sharing-status:empty { margin:0; min-height:0; }
.calendar-sharing-dialog .dialog-actions { flex-wrap:wrap; margin-top:16px; }
.calendar-sharing-dialog .button { min-height:40px; font:650 12px var(--font-ui); }
.calendar-sharing-saved { display:grid; gap:10px; margin-top:20px; padding-top:18px; border-top:1px solid var(--border); }
.calendar-sharing-saved h3,.calendar-sharing-saved p { margin:0; }
.calendar-sharing-saved h3 { color:var(--ink); font:750 16px var(--font-display); }
.calendar-sharing-saved p { color:var(--muted); font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-saved .calendar-sharing-selected-audience { color:var(--ink); font-weight:650; }
.calendar-sharing-saved .calendar-sharing-saved-calendar-name { color:var(--ink); font-weight:650; }
.calendar-sharing-link-row { display:flex; align-items:center; gap:8px; }
.calendar-sharing-link-row input { flex:1; }
.calendar-sharing-link-row .button { flex-shrink:0; }
.calendar-sharing-actions,.calendar-sharing-manage-actions { display:flex; flex-wrap:wrap; gap:8px; }
.calendar-sharing-manage-actions { margin-top:0; padding-top:0; }
.calendar-sharing-more-options { margin-top:2px; }
.calendar-sharing-dialog .calendar-sharing-warning,.calendar-sharing-dialog .calendar-sharing-capability { margin:0 0 15px; padding:11px 12px; color:#76551b; background:#fff8e9; border:1px solid #e9d7ad; border-radius:8px; font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-confirmation { margin-top:18px; padding:15px; color:var(--ink); background:#f4f8fc; border:1px solid #bfcfe0; border-radius:9px; }
.calendar-sharing-confirmation[hidden] { display:none; }
.calendar-sharing-confirmation h3 { margin:0 0 7px; font:750 15px var(--font-display); }
.calendar-sharing-confirmation p { margin:0; font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-status { margin:14px 0 0; min-height:18px; color:var(--muted); font:500 12px/1.5 var(--font-ui); }
.calendar-sharing-status[data-state=error] { color:#a93a31; }
.calendar-sharing-dialog :disabled { cursor:not-allowed; opacity:.6; }
[data-theme=dark] .calendar-sharing-dialog { color:#ededed; background:#171717; border-color:#404040; }
[data-theme=dark] .calendar-sharing-dialog :is(input:not([type=checkbox]),select) { color:#ededed; background:#101010; border-color:#4a4a4a; }
[data-theme=dark] .calendar-sharing-dialog .calendar-sharing-privacy { color:#c4c4c4; }
[data-theme=dark] .calendar-sharing-confirmation { color:#e0e0e0; background:#242424; border-color:#4a4a4a; }
[data-theme=dark] .calendar-sharing-dialog :is(.calendar-sharing-warning,.calendar-sharing-capability) { color:#f1d39c; background:#3b3222; border-color:#6a5734; }
[data-theme=dark] .calendar-sharing-dialog :is(h2,h3,.standard-form-label,legend,.calendar-sharing-field) { color:#ededed; }
[data-theme=dark] .calendar-sharing-dialog :is(.muted,.calendar-sharing-saved p,.calendar-sharing-status) { color:#c4c4c4; }
[data-theme=dark] .calendar-sharing-dialog .calendar-sharing-field-help { color:#c4c4c4; }
[data-theme=dark] .calendar-sharing-dialog :is(.calendar-sharing-details summary,.calendar-sharing-details-content > label,.calendar-sharing-selected-audience,.calendar-sharing-saved-calendar-name) { color:#ededed; }
[data-theme=dark] .calendar-sharing-details { border-color:#404040; }
[data-theme=dark] .calendar-sharing-dialog .calendar-sharing-draft-note { color:#f0cb82; }
[data-theme=dark] .calendar-sharing-dialog .calendar-sharing-status[data-state=error] { color:#ffb9ac; }
[data-theme=dark] .calendar-sharing-dialog .calendar-checkbox-options label { color:#ededed; background:#242424; border-color:#505050; }
@media(max-width:700px) {
  .calendar-sharing-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }
  .calendar-sharing-dialog .edit-event-form { padding:19px; }
  .calendar-sharing-audience-tools { align-items:stretch; flex-direction:column; }
  .calendar-sharing-form .edit-form-grid { grid-template-columns:1fr; }
  .calendar-sharing-dialog .dialog-actions .button { flex:1; }
  .calendar-sharing-actions,.calendar-sharing-manage-actions { gap:8px; }
  .calendar-sharing-actions .button,.calendar-sharing-manage-actions .button { flex:1; }
}
