.planner_shell__fP1yu{min-height:100vh;background:#f9fafb}.planner_topbar__uuz2Z{background:#ffffff;border-bottom:1px solid #e5e7eb;position:-webkit-sticky;position:sticky;top:0;z-index:10}.planner_topbarInner__AqpzX{max-width:80rem;margin:0 auto;padding:0 16px;display:flex;justify-content:space-between;align-items:center;height:64px}@media (min-width:640px){.planner_topbarInner__AqpzX{padding:0 24px}}@media (min-width:1024px){.planner_topbarInner__AqpzX{padding:0 32px}}.planner_topbarLeft__hK3T5{display:flex;align-items:center;gap:12px}.planner_topbarRight__MuwcU{display:flex;align-items:center;gap:16px}.planner_hamburger__R5fEj{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#374151;padding:4px;border-radius:.5rem;transition:background .12s}.planner_hamburger__R5fEj:hover{background:#f3f4f6}@media (min-width:1024px){.planner_hamburger__R5fEj{display:none}}.planner_logoutLabel__dg7na{display:none}@media (min-width:480px){.planner_logoutLabel__dg7na{display:inline}}.planner_brandName__b_ZxA{font-size:1.25rem;font-weight:700;color:#4f46e5;margin:0}.planner_logoutBtn__cAvWM{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid #e5e7eb;border-radius:.625rem;font-size:.875rem;font-weight:500;color:#374151;background:transparent;cursor:pointer;transition:background-color .12s}.planner_logoutBtn__cAvWM:hover{background-color:#f3f4f6}.planner_body__OKiHG{max-width:80rem;margin:0 auto;padding:32px 16px;display:flex;gap:32px}@media (min-width:640px){.planner_body__OKiHG{padding:32px 24px}}@media (min-width:1024px){.planner_body__OKiHG{padding:32px}}.planner_drawerOverlay__fDcm_{display:none}@media (max-width:1023px){.planner_drawerOverlay__fDcm_{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:40}}.planner_sidebar__1W0eT{display:none;width:256px;flex-shrink:0}@media (min-width:1024px){.planner_sidebar__1W0eT{display:block}}@media (max-width:1023px){.planner_sidebar__1W0eT{display:block;position:fixed;top:0;left:0;bottom:0;width:260px;z-index:50;transform:translateX(-100%);transition:transform .22s ease}.planner_sidebarOpen__gpq0z{transform:translateX(0)}}.planner_sidebarInner__sOMfo{background:#ffffff;border-radius:0;box-shadow:4px 0 16px rgba(0,0,0,.1);padding:16px;height:100%;overflow-y:auto}@media (min-width:1024px){.planner_sidebarInner__sOMfo{border-radius:.625rem;box-shadow:0 1px 3px rgba(0,0,0,.07);position:-webkit-sticky;position:sticky;top:88px;height:auto;overflow-y:visible}}.planner_sidebarNav__UwRmR{display:flex;flex-direction:column;gap:4px}.planner_navItem__Y7U7o{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:.625rem;font-size:.875rem;font-weight:500;color:#374151;text-decoration:none;transition:background-color .12s,color .12s;border:none;background:none;cursor:pointer;width:100%;text-align:left}.planner_navItem__Y7U7o:hover{background-color:#f3f4f6}.planner_navItemActive__069iI{background-color:#4f46e5;color:#ffffff}.planner_navItemActive__069iI:hover{background-color:#4338ca}.planner_navBadge__W7DaO{margin-left:auto;color:inherit;border-radius:9999px;padding:1px 7px;font-size:11px;font-weight:600}.planner_navBadge__W7DaO,.planner_navItemActive__069iI .planner_navBadge__W7DaO{background:rgba(255,255,255,.25)}.planner_navItem__Y7U7o:not(.planner_navItemActive__069iI) .planner_navBadge__W7DaO{background:#e0e7ff;color:#4f46e5}.planner_main__P1fcN{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:24px}.planner_panel__Ostmv{background:#ffffff;border:1px solid #e5e7eb;border-radius:.625rem}.planner_panelHeader__m2wGZ{padding:24px;display:flex;align-items:center;justify-content:space-between}.planner_panelHeaderText__j7jFf{display:flex;flex-direction:column;gap:4px}.planner_panelTitle__AJHrM{margin:0;font-size:1rem;font-weight:600;color:#111827}.planner_panelText__uyrJP{margin:4px 0 0;color:#6b7280;font-size:.875rem;line-height:1.5}.planner_panelBody__H920X{padding:0 24px 24px}.planner_filterBar__rIrpd{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.planner_formRow__aLfAg{display:flex;flex-direction:column;gap:6px}.planner_formLabel__gKakH{font-size:.875rem;font-weight:500;color:#374151}.planner_formInput__VbxkL{height:36px;padding:0 12px;border:1px solid #e5e7eb;border-radius:.625rem;background:#ffffff;color:#111827;font-size:.875rem;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box;font-family:inherit}.planner_formInput__VbxkL:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.planner_primaryBtn__Ot1M_{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:.625rem;font-weight:500;font-size:.875rem;background:#4f46e5;color:#ffffff;border:none;cursor:pointer;transition:opacity .15s;white-space:nowrap}.planner_primaryBtn__Ot1M_:hover:not(:disabled){opacity:.85}.planner_primaryBtn__Ot1M_:disabled{opacity:.5;cursor:not-allowed}.planner_outlineBtn__f4U2w{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid #e5e7eb;border-radius:.625rem;font-size:.875rem;font-weight:500;color:#374151;background:transparent;cursor:pointer;transition:background-color .12s;white-space:nowrap}.planner_outlineBtn__f4U2w:hover{background-color:#f9fafb}.planner_errorMsg__qQajv{font-size:.85rem;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:.625rem;padding:9px 13px;margin-bottom:12px}.planner_tableWrap__55x_Y{overflow-x:auto}.planner_table__mVj_a{width:100%;border-collapse:collapse;font-size:.875rem}.planner_table__mVj_a th{text-align:left;padding:10px 12px;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;white-space:nowrap;background:#f9fafb}.planner_table__mVj_a td{padding:12px;border-bottom:1px solid #f3f4f6;color:#111827;vertical-align:middle}.planner_table__mVj_a tr:last-child td{border-bottom:none}.planner_table__mVj_a tbody tr:hover td{background:#f9fafb}.planner_emptyRow__ebFzf td{color:#9ca3af;font-style:italic;text-align:center;padding:32px}.planner_slotList___Gbad{list-style:none;display:flex;flex-direction:column;gap:8px;padding:0;margin:0}.planner_slotItem__5OeHy{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid #e5e7eb;border-radius:.625rem;font-size:.875rem;transition:border-color .12s;gap:12px}.planner_slotItem__5OeHy:hover{border-color:#a5b4fc}.planner_slotTime__ZN4ie{color:#111827;font-weight:500;flex:1 1;min-width:0}.planner_deleteBtn__B63Wr{display:inline-flex;align-items:center;padding:5px 12px;background:transparent;border:1px solid #fecaca;border-radius:.625rem;color:#b91c1c;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color .12s;flex-shrink:0}.planner_deleteBtn__B63Wr:hover:not(:disabled){background:#fef2f2}.planner_deleteBtn__B63Wr:disabled{opacity:.5;cursor:not-allowed}.planner_slotBooked__Rvm2g{opacity:.5}.planner_bookedBadge__RAeQg{display:inline-flex;align-items:center;padding:2px 10px;border-radius:9999px;font-size:.72rem;font-weight:600;background:#f3f4f6;color:#6b7280;flex-shrink:0}.planner_newSlotForm__kWFNv{display:grid;grid-template-columns:1fr 1fr 1fr auto;grid-gap:12px;gap:12px;align-items:end}@media (max-width:768px){.planner_newSlotForm__kWFNv{grid-template-columns:1fr 1fr}}@media (max-width:480px){.planner_newSlotForm__kWFNv{grid-template-columns:1fr}}.planner_formRowSpan__a3_X_{grid-column:1/-1}.planner_emptySlots__gCmdu{color:#9ca3af;font-style:italic;font-size:.875rem}.planner_viewSwitcher__JAPPn{display:flex;gap:0;border:1px solid #e5e7eb;border-radius:.625rem;overflow:hidden;flex-shrink:0}.planner_viewBtn__fHH11{padding:6px 14px;font-size:.8125rem;font-weight:500;color:#6b7280;background:#fff;border:none;border-right:1px solid #e5e7eb;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.planner_viewBtn__fHH11:last-child{border-right:none}.planner_viewBtn__fHH11:hover{background:#f3f4f6;color:#111827}.planner_viewBtnActive__d9Wag{background:#4f46e5;color:#fff}.planner_viewBtnActive__d9Wag:hover{background:#4338ca;color:#fff}.planner_calNav__amYFA{display:flex;align-items:center;gap:10px;margin-bottom:16px;justify-content:space-between;flex-wrap:wrap}.planner_calNavTitle___mtr3{font-size:.9375rem;font-weight:600;color:#111827;flex:1 1;text-align:center}.planner_calNavBtn__VU6mD{padding:5px 12px;border:1px solid #e5e7eb;border-radius:.625rem;background:#fff;color:#374151;font-size:.875rem;cursor:pointer;transition:background .12s}.planner_calNavBtn__VU6mD:hover{background:#f3f4f6}.planner_monthGrid__i_iHy{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid #e5e7eb;border-radius:.625rem;overflow:hidden}.planner_monthDow__aSZ4K{text-align:center;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;padding:8px 4px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.planner_monthCell__V5o5h{min-height:72px;padding:6px;border-right:1px solid #f3f4f6;border-bottom:1px solid #f3f4f6;vertical-align:top;background:#fff;cursor:default}.planner_monthCell__V5o5h:nth-child(7n){border-right:none}.planner_monthCellHasItems__Am_6Y{cursor:pointer}.planner_monthCellHasItems__Am_6Y:hover{background:#f5f3ff}.planner_monthCellOtherMonth__YhKFf{background:#fafafa}.planner_monthCellToday__WizNm{background:#eef2ff}.planner_monthDayNum__uGJVh{font-size:.8125rem;font-weight:500;color:#374151;margin-bottom:4px;display:block}.planner_monthDayNumToday__IAzWj{background:#4f46e5;color:#fff;border-radius:50%;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}.planner_monthChip__P2SvA{font-size:.6875rem;font-weight:500;padding:1px 5px;border-radius:4px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.planner_monthChipAppt__D9hm3{background:#dbeafe;color:#1e40af}.planner_monthChipAvail__j8Vyr{background:#dcfce7;color:#166534}.planner_monthChipBooked__UYCWT{background:#fee2e2;color:#991b1b}.planner_weekGrid__SX_GE{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.planner_weekCol__l2_BL{display:flex;flex-direction:column;gap:4px}.planner_weekHead__uYP00{text-align:center;font-size:.75rem;font-weight:600;color:#6b7280;padding:6px 2px;border-bottom:1px solid #e5e7eb;margin-bottom:4px;white-space:nowrap}.planner_weekHeadToday__FUwef{color:#4f46e5;border-bottom-color:#4f46e5}.planner_weekChip___QlVQ{border-radius:6px;padding:4px 6px;font-size:.75rem;font-weight:500;line-height:1.3;cursor:pointer;transition:opacity .12s;overflow:hidden}.planner_weekChip___QlVQ:hover{opacity:.8}.planner_weekChipAppt__MPSnb{background:#dbeafe;color:#1e40af}.planner_weekChipAvail__ZeTT6{background:#dcfce7;color:#166534}.planner_weekChipBooked__CYcIC{background:#fee2e2;color:#991b1b}.planner_weekEmpty__1w_eP{font-size:.75rem;color:#d1d5db;text-align:center;padding:8px 0}.planner_dayTimeline__IEy8n{display:flex;flex-direction:column;gap:0;border:1px solid #e5e7eb;border-radius:.625rem;overflow:hidden}.planner_dayHourRow__C8nE4{display:flex;align-items:stretch;border-bottom:1px solid #f3f4f6;min-height:44px}.planner_dayHourRow__C8nE4:last-child{border-bottom:none}.planner_dayHourLabel__6pJJx{width:48px;flex-shrink:0;font-size:.6875rem;color:#9ca3af;padding:6px 6px 0;border-right:1px solid #f3f4f6;text-align:right}.planner_dayHourSlots__wmK4M{flex:1 1;display:flex;flex-direction:column;gap:3px;padding:4px 8px}.planner_dayChip___spr0{border-radius:5px;padding:3px 8px;font-size:.8rem;font-weight:500}.planner_dayChipAppt__BjWEs{background:#dbeafe;color:#1e40af}.planner_dayChipAvail__WBdvP{background:#dcfce7;color:#166534}.planner_dayChipBooked___7i06{background:#fee2e2;color:#991b1b}.planner_schemaGrid__f5A_c{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-gap:12px;gap:12px;align-items:end}@media (max-width:900px){.planner_schemaGrid__f5A_c{grid-template-columns:1fr 1fr}}@media (max-width:480px){.planner_schemaGrid__f5A_c{grid-template-columns:1fr}}.planner_dayCheckboxRow__t0G85{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.planner_dayCheckbox__c7Hrq{display:flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;font-size:.8125rem;font-weight:500;color:#374151;transition:border-color .12s,background .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.planner_dayCheckbox__c7Hrq:hover{border-color:#a5b4fc;background:#f5f3ff}.planner_dayCheckboxActive__V2TfZ{border-color:#4f46e5;background:#eef2ff;color:#4f46e5}.planner_generateProgress__axjmG{font-size:.8125rem;color:#6b7280;margin-top:6px}.planner_timeBlockGrid__aDmz_{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.planner_timeBlock__ZZLMy{padding:5px 10px;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.8rem;font-weight:500;cursor:pointer;background:#fff;color:#374151;transition:border-color .1s,background .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.planner_timeBlock__ZZLMy:hover{border-color:#a5b4fc;background:#f5f3ff}.planner_timeBlockSelected__i2b1N{border-color:#4f46e5;background:#eef2ff;color:#4f46e5}.planner_historyMonth__RfuDW{margin-bottom:20px}.planner_historyMonthHeader__n_Tq0{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #e5e7eb;margin-bottom:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.planner_historyMonthTitle__cIUvk{font-size:.875rem;font-weight:600;color:#374151;flex:1 1;text-transform:capitalize}.planner_historyMonthCount__el3vH{font-size:.75rem;color:#9ca3af}.planner_vacationForm__i3NZk{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.planner_schemaToggle__jO3vG{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:.625rem;background:#f0fdf4;border:1px solid #bbf7d0;font-size:.875rem;color:#166534;margin-bottom:16px}.planner_schemaToggleInactive__kRgF7{background:#f9fafb;border-color:#e5e7eb;color:#6b7280}.planner_toggleSwitch__ByOJg{position:relative;width:36px;height:20px;flex-shrink:0}.planner_toggleSwitch__ByOJg input{opacity:0;width:0;height:0}.planner_toggleSlider__dWb8O{position:absolute;inset:0;background:#d1d5db;border-radius:9999px;cursor:pointer;transition:background .2s}.planner_toggleSlider__dWb8O:before{content:"";position:absolute;width:14px;height:14px;left:3px;top:3px;background:white;border-radius:50%;transition:transform .2s}.planner_toggleSwitch__ByOJg input:checked+.planner_toggleSlider__dWb8O{background:#4f46e5}.planner_toggleSwitch__ByOJg input:checked+.planner_toggleSlider__dWb8O:before{transform:translateX(16px)}.planner_loginPage__GTGEZ{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f9fafb}.planner_loginCard__kmr3g{background:#ffffff;border:1px solid #e5e7eb;border-radius:.625rem;box-shadow:0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);padding:2rem;width:100%;max-width:400px}.planner_loginTitle__8YBjd{font-size:1.5rem;font-weight:700;color:#4f46e5;margin-bottom:.25rem}.planner_loginSubtitle__DqfFM{color:#6b7280;margin-bottom:1.75rem;font-size:.875rem}.planner_formGroup__x5w_p{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1rem}.planner_label__cm89e{font-size:.875rem;font-weight:500;color:#374151}.planner_input__o583c{height:36px;padding:0 12px;border:1px solid #e5e7eb;border-radius:.625rem;background:#ffffff;color:#111827;font-size:.875rem;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box;font-family:inherit}.planner_input__o583c:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.1)}.planner_submitBtn__AfLsV{width:100%;background:#4f46e5;color:#ffffff;border:none;border-radius:.625rem;padding:.625rem 1rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:opacity .15s;margin-top:.5rem}.planner_submitBtn__AfLsV:hover:not(:disabled){opacity:.85}.planner_submitBtn__AfLsV:disabled{opacity:.6;cursor:not-allowed}.planner_pagination__i4PQ9{display:flex;align-items:center;justify-content:space-between;padding:10px 0 2px;gap:8px}.planner_paginationInfo__rsVnJ{font-size:.8rem;color:#6b7280;text-align:center;flex:1 1}.planner_slotSectionLabel__W4QaS{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#9ca3af;padding:8px 0 4px}.planner_modalOverlay__wWYvi{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0}@media (min-width:600px){.planner_modalOverlay__wWYvi{align-items:center;padding:16px}}.planner_modalPanel__aSoXb{background:#fff;width:100%;max-width:480px;border-radius:16px 16px 0 0;box-shadow:0 -4px 32px rgba(0,0,0,.15);display:flex;flex-direction:column;max-height:90vh;overflow-y:auto}@media (min-width:600px){.planner_modalPanel__aSoXb{border-radius:12px;box-shadow:0 8px 40px rgba(0,0,0,.18);max-height:80vh}}.planner_modalHeader__ipgbL{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px;border-bottom:1px solid #f3f4f6}.planner_modalTitle__hvzvN{font-size:1rem;font-weight:600;color:#111827;margin:0}.planner_modalClose__WL9yp{background:none;border:none;font-size:1.1rem;color:#6b7280;cursor:pointer;padding:4px 6px;border-radius:6px;line-height:1}.planner_modalClose__WL9yp:hover{background:#f3f4f6;color:#111827}.planner_modalBody__GgM_g{padding:16px 20px;display:flex;flex-direction:column}.planner_modalFooter__p7R3t{display:flex;align-items:center;justify-content:space-between;padding:12px 20px 20px;border-top:1px solid #f3f4f6;gap:8px}@media (max-width:400px){.planner_modalFooter__p7R3t{flex-direction:column-reverse;align-items:stretch}.planner_modalFooter__p7R3t>div{display:flex;gap:8px}.planner_modalFooter__p7R3t>div>button{flex:1 1}.planner_modalFooter__p7R3t>.planner_deleteBtn__B63Wr{width:100%}}