.calendar-toolbar .field{min-width:150px;flex:1}
.calendar-toolbar h3{margin:0;flex:1}
.calendar-content{margin:16px 0}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.calendar-single{grid-template-columns:1fr}
.calendar-day{min-height:145px;border:1px solid var(--line,#2b3540);border-radius:10px;padding:8px;background:var(--panel,#151b22);color:var(--text,#f2f4f6)}
.calendar-day h4{margin:0 0 8px;font-size:.85rem}
.calendar-day.today{border:2px solid var(--gold,#f2c21a)}
.calendar-entry{display:flex;align-items:flex-start;gap:7px;border-left:3px solid #b2a278;background:#b99a3220;border-radius:5px;padding:6px;margin:5px 0;overflow-wrap:anywhere}
.calendar-entry input{flex:none;margin-top:5px;width:18px;height:18px}
.calendar-entry-title{appearance:none;border:0;background:transparent;text-align:left;padding:0;color:inherit;min-width:0;cursor:pointer;flex:1}
.calendar-entry-title strong,.calendar-entry-title small{display:block}
.calendar-entry-title small{font-size:.75rem;margin-top:3px;opacity:.8}
.calendar-entry.priority-2{border-left-color:#e3a633}
.calendar-entry.priority-3{border-left-color:#ff7777}
.calendar-entry.completed strong{text-decoration:line-through;opacity:.65}
.calendar-dialog{width:min(760px,calc(100vw - 30px));max-height:90dvh;overflow:auto;border:1px solid #b4a472;border-radius:14px;background:var(--panel,#151b22);color:var(--text,#f2f4f6);padding:24px}
.calendar-dialog::backdrop{background:#0007}
.calendar-dialog fieldset{border:0;padding:0;margin:0}
.calendar-dialog .field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}
.calendar-dialog input:not([type=checkbox]),.calendar-dialog select,.calendar-dialog textarea{width:100%;box-sizing:border-box;min-height:40px}
.calendar-dialog textarea{min-height:85px}
.calendar-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.calendar-reminder{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:10px 0;border-bottom:1px solid var(--line,#2b3540)}
.calendar-reminder span{font-size:.85rem}
.calendar-reminder strong{flex:1}
#calendarBadge:empty{display:none}
.calendar-dialog [role=alert],.calendar-toolbar [role=alert]{color:var(--danger,#ef6b70)}
@media(max-width:900px){.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-single{grid-template-columns:1fr}}
@media(max-width:520px){.calendar-grid,.calendar-form-grid{grid-template-columns:1fr}.calendar-day{min-height:85px}.calendar-dialog{padding:16px}.calendar-toolbar .row-actions{flex-wrap:wrap}}

.calendar-dashboard-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.calendar-dashboard-columns ul{list-style:none;padding:0}.calendar-dashboard-columns li{border-bottom:1px solid #8884;padding:.5rem 0}.calendar-dashboard-columns button{width:100%;min-height:44px;text-align:left;overflow-wrap:anywhere}[data-calendar-dashboard] select{max-width:100%}[data-calendar-dashboard] .row-actions{flex-wrap:wrap}@media(max-width:650px){.calendar-dashboard-columns{grid-template-columns:1fr}}

.calendar-assignees{grid-column:1/-1;max-height:240px;overflow:auto;border:1px solid #8884;border-radius:8px}.calendar-assignees label{display:flex;gap:.6rem;align-items:center;min-height:44px}.calendar-assignees input{width:auto}
