.planning-calendar{padding:20px;border:1px solid #bac9d2;border-radius:14px;background:#fff;color:#163448;margin:16px 0;min-width:0}.planning-calendar [hidden]{display:none!important}.plc-top h3{margin:0 0 6px}.plc-help,.plc-status{font-size:.9rem;line-height:1.5;color:#405568;margin:6px 0 14px}.plc-nav{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:8px;width:100%;max-width:430px;margin:0 auto 12px}.plc-nav>button{min-height:46px;width:100%;margin:0;white-space:nowrap}.plc-nav>button:first-child,.plc-nav>button:last-child{font-size:1.6rem}.plc-nav>[data-calendar-heading]{font-size:1rem;font-weight:750;overflow:hidden;text-overflow:ellipsis}.plc-jump{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:end;margin:12px 0}.planning-calendar label{display:grid;gap:6px;font-size:.88rem;font-weight:650}.planning-calendar select,.planning-calendar input{min-height:44px;border:1px solid #819aa8;border-radius:8px;padding:8px;font:inherit;width:100%;box-sizing:border-box}.plc-plan-label{max-width:430px;margin-bottom:12px}.plc-scroll{overflow-x:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto}.plc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid #d2dce1;border-top:1px solid #d2dce1;min-width:620px}.plc-weekday{text-align:center;padding:9px 3px;color:#405568;background:#f0f4f5;font-size:.8rem;font-weight:750;border-bottom:1px solid #d2dce1}.plc-day{min-height:115px;padding:6px 3px;border-right:1px solid #d2dce1;border-bottom:1px solid #d2dce1;min-width:0;background:#fff}.plc-day.is-outside{background:#f4f6f7}.plc-day.is-outside .plc-day-number{color:#75868f}.plc-day-number{display:inline-grid;place-items:center;width:30px;min-height:30px!important;padding:0!important;font-size:.82rem!important;border:0!important;background:transparent!important;color:#183448}.plc-day-number[aria-current]{border-radius:50%;background:#183448!important;color:#fff}.plc-event{display:grid;width:100%;box-sizing:border-box;gap:3px;text-align:left;padding:5px!important;border-radius:5px;border:1px solid #d2dce1!important;min-height:0!important;margin:5px 0 0;font-size:.75rem!important;line-height:1.3;overflow-wrap:anywhere;background:#edf1f3!important;color:#52636e!important;box-shadow:none!important}.plc-event-title{font-weight:650}.plc-event small{font-size:.66rem;line-height:1.25}.plc-event.is-plan{background:#f0f4e9!important;border-color:#bccca4!important;color:#496033!important}.plc-event.is-current{background:#183b51!important;border-color:#183b51!important;color:#fff!important;box-shadow:inset 3px 0 #e7c378!important}.plc-event.is-current .plc-event-title{font-weight:800}.plc-undated{margin-top:12px}.plc-undated h4{font-size:1rem}.plc-undated button{margin:4px 6px 4px 0;text-align:left}.planning-calendar button:focus-visible{outline:3px solid #947016;outline-offset:2px}.pc-view-tools{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.pc-view-tools [aria-pressed="true"]{background:#183b51;color:#fff;border-color:#183b51}.pc-calendar-slot{min-width:0}@media(max-width:760px){.planning-calendar{padding:12px}.plc-grid{min-width:560px}.plc-day{min-height:102px}.plc-jump{grid-template-columns:minmax(0,1fr) 95px}.plc-jump>button{grid-column:1/-1}.plc-help:after{content:' Swipe sideways to see the whole week.'}.plc-nav{max-width:100%}}

.plc-nav{grid-template-columns:40px minmax(150px,180px) 40px auto;max-width:none;width:max-content;margin:0 0 12px;gap:6px}.plc-nav>button{min-height:40px}.plc-nav>button:last-child{font-size:.9rem}.plc-nav>[data-calendar-next]{font-size:1.6rem}.plc-nav>[data-calendar-heading]{font-weight:800}@media(max-width:650px){.plc-nav{width:100%;grid-template-columns:40px minmax(0,1fr) 40px auto}}

/* Calendar controls share a row; optional planning help stays tucked away. */
.plc-compact { padding: 12px; margin: 0; }
.plc-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 18px; margin-bottom: 12px; }
.plc-toolbar .plc-nav, .plc-toolbar .plc-visibility { margin: 0; }
.plc-toolbar .plc-visibility { gap: 8px; }
.plc-visibility button { min-height: 40px; margin: 0; border: 1px solid #819aa8; }
.plc-visibility button[aria-pressed="false"] { background: #fff; color: #12233d; border-style: dashed; }
.plc-options { position: relative; flex: 0 0 auto; margin-left: auto; color: #12233d; }
.plc-options > summary { cursor: pointer; min-height: 40px; padding: 10px 12px; box-sizing: border-box; font-weight: 700; }
.plc-options > summary:focus-visible { outline: 3px solid #947016; outline-offset: 2px; }
.plc-options-dropdown { position: absolute; z-index: 5; top: calc(100% + 6px); right: 0; width: min(430px, calc(100vw - 48px)); box-sizing: border-box; padding: 12px; border: 1px solid #d2dce1; border-radius: 10px; background: #fff; box-shadow: 0 6px 18px #12233d26; }
.plc-options .plc-plan-label { margin: 8px 0; }
.plc-options .plc-help { margin: 8px 0 0; }
@media(max-width:650px) { .plc-toolbar .plc-nav { width: 100%; } .plc-options { margin-left: 0; } .plc-options-dropdown { right: auto; left: 0; } }

.plc-imported-filter{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;cursor:pointer}.plc-imported-filter input{width:18px;height:18px;accent-color:#12233d;flex-shrink:0}
