.calendar-entry{position:relative;z-index:1;margin-top:16px;text-align:left;font:inherit;cursor:pointer}
.manual-calendar{max-width:1050px;margin:auto;padding:0}
.calendar-full{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#f0f6ff;border:1px solid #d4e1f5;border-radius:16px;margin:24px 0;color:#102351}
.calendar-full p{font-size:14px;line-height:1.5;margin:6px 0 0;color:#475569}
.calendar-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.calendar-filters label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#152c57}
.calendar-filters input,.calendar-filters select{width:100%;min-width:0;min-height:46px;padding:11px;border:1px solid #bbcce3;border-radius:9px;background:#fff;font:inherit;color:#152c57}
.calendar-selection-bar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0;font-size:13px}
.calendar-check-label{display:flex;align-items:center;gap:8px;cursor:pointer}
.manual-calendar input[type=checkbox]{appearance:auto;width:20px;height:20px;flex:0 0 20px;accent-color:#0063ff;cursor:pointer}
.calendar-export{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:#fff;border:1px solid #ccd8eb;border-radius:12px;margin:16px 0}
.calendar-export small{display:block;max-width:470px;margin-top:6px;line-height:1.5;color:#475569}
.calendar-note{font-size:12px;line-height:1.6;color:#536178}
.calendar-notice{border-left:3px solid #0063ff;background:#eef5ff;padding:14px;font-size:14px;line-height:1.5;color:#163469}
.calendar-list{display:grid;gap:12px;margin:18px 0}
.calendar-card{border:1px solid #d6deeb;background:white;border-radius:12px;padding:18px;color:#14254d}
.calendar-card.is-selected{border-color:#0063ff;box-shadow:inset 3px 0 #0063ff;background:#f8fbff}
.calendar-panel-choice{display:flex;align-items:flex-start;gap:14px;cursor:pointer}
.calendar-panel-choice input{margin:3px 0}
.calendar-panel-choice strong{display:block;font-size:16px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.calendar-panel-meta{font-size:12px;font-weight:600;color:#445572}
.calendar-panel-details{padding-left:34px;margin-top:8px}
.calendar-panel-details>small{color:#52617b;font-size:12px}
.calendar-conflict{display:inline-block;font-size:12px;color:#8a4300;background:#fff1d6;padding:6px 10px;border-radius:6px;margin-top:10px}
.calendar-empty{padding:30px 16px;border:1px dashed #b9c8df;border-radius:12px;line-height:1.6}
.manual-calendar button{cursor:pointer}
.manual-calendar button:disabled{opacity:.5;cursor:not-allowed}
.manual-calendar :focus-visible,.calendar-entry:focus-visible{outline:3px solid #0063ff;outline-offset:3px}
.program-note .calendar-entry{font-size:13px;background:#fff;color:#153c78;border:1px solid #cedaef}
.workspace-nav>.calendar-entry{font-size:13px;width:100%;justify-content:flex-start}
@media(max-width:700px){.manual-calendar{padding:0}.calendar-full,.calendar-export{flex-direction:column;align-items:stretch}.calendar-filters{grid-template-columns:1fr 1fr}.calendar-search{grid-column:1/-1}.calendar-export button,.calendar-full button{width:100%;white-space:normal;line-height:1.5}.calendar-selection-bar{gap:14px}.calendar-card{padding:14px}.calendar-panel-choice strong{font-size:14px}.calendar-panel-details{padding-left:0}.manual-calendar .panel-heading h2{font-size:28px}}

.manual-calendar .panel-heading h2{font-size:clamp(28px,4vw,48px);line-height:1.1}
.manual-calendar .calendar-full .secondary-action{margin:0;flex-shrink:0;max-width:100%;padding:12px 20px}
.manual-calendar .calendar-export .primary-action{padding:12px 20px}
