/* Shared calendar-entry shell and appointment refinements, DF-61. */
.team-dialog.planning-create-dialog{width:min(680px,calc(100vw - 24px));padding:20px;max-height:calc(100dvh - 24px);background:var(--surface,#fffdf9)}
.planning-create-dialog>h2{font-size:18px;margin:0 32px 16px 0}
.planning-create-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:18px;border-bottom:1px solid var(--line,#e3ddd1)}
.planning-create-tab{padding:12px 6px;min-height:44px;border:0;border-bottom:3px solid transparent;border-radius:8px 8px 0 0;background:transparent;color:var(--muted,#6d665c);font:inherit;font-size:14px;font-weight:500}
.planning-create-tab[aria-selected=true]{background:var(--soft,#eee9de);color:var(--accent,#657354);border-bottom-color:var(--accent,#657354);font-weight:600}
.planning-create-tab:disabled{cursor:default;opacity:.45}
.planning-create-dialog [role=tabpanel][hidden]{display:none!important}
.planning-create-dialog .planning-editor-dates{grid-template-columns:repeat(3,minmax(0,1fr))}
.planning-create-dialog .planning-editor-dates>label:last-child{grid-column:auto;max-width:none}
.planning-create-dialog .planning-task-results{position:absolute;z-index:5;top:100%;left:0;right:0;box-shadow:0 8px 24px #302e2822}
.planning-task-combobox{display:flex;align-items:stretch;position:relative}
.planning-task-combobox>input,.calendar-task-combobox.planning-task-combobox>input{padding-right:40px!important}
.planning-task-combobox>:is([data-plan-search-toggle],.task-relation-toggle){position:absolute;right:3px;top:3px;bottom:3px;min-width:34px;border:0;background:transparent;color:var(--muted);padding:0}
.planning-people-dropdown{position:relative}
.planning-people-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;min-height:42px;border:1px solid var(--crm-control,#898170);border-radius:8px;padding:9px 12px;background:var(--surface,#fffdf9);color:inherit}
.planning-people-options{position:absolute;left:0;right:0;top:100%;z-index:4;border:1px solid var(--crm-control,#898170);border-radius:8px;padding:8px;background:var(--surface,#fffdf9);box-shadow:0 8px 24px #302e2822}
.planning-person-picker .planning-people-options>[data-plan-persons]{display:flex;flex-wrap:wrap;gap:5px;max-height:150px;overflow:auto}
.planning-people-search{margin-bottom:6px}
.planning-person-picker.planning-person-dropdown{padding:0;border:0}
.planning-person-dropdown legend{margin:0 0 5px;padding:0}
.planning-no-match-create{display:block;width:100%;padding:10px;text-align:left;border:0;background:var(--soft,#eee9de);color:var(--accent-dark,#536344)}
.calendar-meeting-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:0;padding:0;margin:10px 0}
.calendar-meeting-types legend{font-size:12px;font-weight:600;margin-bottom:5px}
.calendar-meeting-types label{margin:0!important;display:flex!important;flex-direction:row!important;align-items:center;gap:6px;padding:9px;border:1px solid var(--crm-control,#898170);border-radius:7px;font-size:13px!important}
.calendar-meeting-types label:has(input:checked){background:var(--soft,#eee9de);border-color:var(--accent,#657354);color:var(--accent-dark,#536344)}
.calendar-meeting-types input[type=radio]{width:15px;min-height:0;margin:0}
.calendar-meeting-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.calendar-meeting-link-row a{display:flex;align-items:center;justify-content:center;min-height:40px;white-space:nowrap;text-decoration:none}
.calendar-meeting-link-row a[aria-disabled=true]{pointer-events:none;opacity:.5}
.calendar-meeting-details:empty{display:none}
.calendar-event-duration{display:block;font-size:11px;font-weight:400;color:var(--muted);line-height:1.45;text-align:left;margin:0}.calendar-event-duration.is-invalid{color:var(--danger,#a13d35)}
.calendar-editor-time{align-items:start}
.calendar-extra-options{border-top:1px solid var(--line);padding-top:10px;margin-top:8px}
.calendar-extra-options>summary{cursor:pointer;font-weight:600;font-size:13px}
.planning-create-dialog .calendar-editor-time{grid-template-columns:1.2fr 1fr 1fr}
@media(max-width:540px){.team-dialog.planning-create-dialog{padding:16px}.planning-create-tab{font-size:12px;padding:10px 4px}.calendar-meeting-link-row{grid-template-columns:minmax(0,1fr)}.calendar-meeting-link-row a{justify-self:start}.calendar-meeting-types{gap:5px}.calendar-meeting-types label{padding:8px 5px;font-size:12px!important}.planning-create-dialog .calendar-editor-time{grid-template-columns:1fr 1fr}.planning-create-dialog .calendar-editor-time>label:first-child{grid-column:1/-1}}

/* DF-78: three fields on desktop; wrap only when the viewport is narrow. */
@media(max-width:540px){.planning-create-dialog .planning-editor-dates{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-create-dialog .planning-editor-dates>label:last-child{grid-column:1/-1}}
@media(max-width:380px){.planning-create-dialog .planning-editor-dates{grid-template-columns:minmax(0,1fr)}}

/* DF-80: the linked-task chooser spans the same available width as Aufgabe. */
.calendar-editor-dialog .calendar-task-link>label:not(.check-label){grid-column:1/-1;min-width:0}
.planning-create-dialog .calendar-task-link{grid-template-columns:minmax(0,1fr);padding:0;border:0;background:transparent}

/* DF-80: identical grouped task-list rhythm; retained links keep their own selection cue. */
.calendar-task-combobox .task-relation-dropdown{padding:0;border-color:#b9b3a6;border-radius:7px;max-height:min(220px,var(--relation-dropdown-height,220px))}
.calendar-task-combobox .task-relation-search-status:empty{display:none}
.calendar-task-combobox .task-relation-option-group>.task-relation-option{display:block;width:100%;box-sizing:border-box;text-align:left;border-radius:0;padding:8px 10px;font-size:13px;min-height:34px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:680px){.calendar-task-combobox .task-relation-option-group>.task-relation-option{min-height:40px}}
