:root{--fc-today-bg-color: transparent;--fc-border-color: rgba(0, 0, 0, .08);--fc-neutral-bg-color: transparent;--fc-page-bg-color: transparent;--fc-event-border-color: transparent;--cat-personlig: #4A90E2;--cat-aflevering: #e24668;--cat-grammatik: #22c55e;--cat-skole: #06b6d4;--cat-proeve: #8b5cf6;--cat-andet: var(--color-warning);--cat-deadline: #d946a8;--cat-moeder: #0ea5e9;--cat-arbejde: #0d9488;--cal-accent: #4A7A68;--cal-accent-hover: #3D6B57;--cal-accent-rgb: 74, 122, 104;--cal-destructive: #c24b60;--cal-destructive-hover: #a83d50;--cal-destructive-rgb: 194, 75, 96;--shadow-popup: 0 8px 24px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--shadow-modal: 0 12px 40px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06);--shadow-toast: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 12px 24px -4px rgba(0, 0, 0, .12);--transition-fast: .15s ease;--transition-spring: .3s cubic-bezier(.32, .72, 0, 1);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px}.cal-main{padding:0!important;overflow:hidden!important;height:100vh;height:100dvh}html:has(.cal-main),body:has(.cal-main){overflow:hidden!important}.cal-layout{display:flex;gap:0;background:var(--color-card);height:100vh;height:100dvh;overflow:hidden}.cal-body{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;position:relative;background:var(--color-card)}.cal-body #calendar{flex:1;min-height:0;padding:0 20px 96px;box-sizing:border-box}.cal-body #calendar .fc{height:100%}.cal-body .fc{font-family:var(--font-family)}.cal-body .fc-toolbar{margin-bottom:12px!important;flex-wrap:nowrap;gap:8px;align-items:center;padding:16px 20px 0;display:flex}.cal-body .fc-toolbar .fc-toolbar-chunk{display:flex;gap:6px;align-items:center;flex-shrink:0}.cal-body .fc-toolbar .fc-toolbar-chunk:first-child{flex-shrink:1;min-width:0;overflow:hidden}.cal-body .fc-toolbar .fc-toolbar-chunk:nth-child(2):empty{display:none}.cal-body .fc-toolbar .fc-toolbar-chunk:last-child{margin-left:auto;gap:8px;flex-shrink:0}.cal-body .fc-toolbar-title{font-size:16px!important;font-weight:650!important;color:var(--color-text-primary);margin:0 4px 0 2px!important;white-space:nowrap;letter-spacing:-.2px;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-body .fc-prev-button,.cal-body .fc-next-button{background:transparent!important;border:none!important;color:var(--color-text-secondary);width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;border-radius:8px!important;box-shadow:none!important;transition:all .15s ease!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.cal-body .fc-prev-button:hover,.cal-body .fc-next-button:hover{background:#0000000a!important;color:var(--color-text-primary)}.cal-body .fc-prev-button:active,.cal-body .fc-next-button:active{transform:scale(.9);transition:transform .08s ease!important}.cal-body .fc-prev-button:focus-visible,.cal-body .fc-next-button:focus-visible{box-shadow:none!important}.cal-body .fc-toolbar .fc-button-group{border:none!important;background:transparent!important;overflow:visible!important;border-radius:0!important;display:flex;gap:2px}.cal-body .fc-today-button,.cal-body .fc-today-button.fc-button,.cal-body .fc-today-button.fc-button.fc-button-primary{background:transparent!important;border:.5px solid rgba(0,0,0,.08)!important;color:var(--color-text-primary);height:36px!important;min-height:36px!important;padding:0 14px!important;border-radius:8px!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;font-family:var(--font-family)!important;text-transform:none!important;transition:all .15s ease!important;line-height:34px!important;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.cal-body .fc-today-button:hover:not(:disabled){background:#0000000a!important;border-color:var(--color-text-primary);color:var(--color-text-primary)}.cal-body .fc-today-button:active:not(:disabled){transform:scale(.95);transition:transform .08s ease!important}.cal-body .fc-today-button:disabled,.cal-body .fc-today-button.fc-button:disabled{opacity:.35!important;cursor:default!important}.cal-body .fc-filterCats-button,.cal-body .fc-filterCats-button.fc-button,.cal-body .fc-filterCats-button.fc-button.fc-button-primary{background:transparent!important;border:.5px solid rgba(0,0,0,.08)!important;color:var(--color-text-primary);height:36px!important;min-height:36px!important;padding:0 14px!important;border-radius:8px!important;box-shadow:none!important;font-size:13px!important;font-weight:500!important;font-family:var(--font-family)!important;text-transform:none!important;transition:all .15s ease!important;line-height:34px!important;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.cal-body .fc-filterCats-button:hover{background:#0000000a!important;border-color:var(--color-text-primary);color:var(--color-text-primary)}.cal-body .fc-filterCats-button:active{transform:scale(.95);transition:transform .08s ease!important}.cal-body .fc-addEvent-button,.cal-body .fc-addEvent-button.fc-button,.cal-body .fc-addEvent-button.fc-button.fc-button-primary{background:var(--cal-accent)!important;border:.5px solid var(--cal-accent)!important;color:#fff!important;height:36px!important;min-height:36px!important;padding:0 16px!important;border-radius:8px!important;font-size:13px!important;font-weight:600!important;font-family:var(--font-family)!important;box-shadow:none!important;transition:all .15s ease!important;text-transform:none!important;letter-spacing:0!important;line-height:34px!important;white-space:nowrap!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.cal-body .fc-addEvent-button:hover{opacity:.9!important;box-shadow:none!important;transform:none!important}.cal-body .fc-addEvent-button:active:not(:disabled){transform:scale(.95)!important;transition:transform .08s ease!important}.cal-body .fc-button-group .fc-button.fc-button-active:after{display:none}.cal-body .fc-timegrid-body{overflow-y:auto;scroll-behavior:smooth}.cal-body .fc-scroller{overflow:hidden!important;scrollbar-width:none}.cal-body .fc-scroller::-webkit-scrollbar{display:none}.cal-body .fc-scroller-liquid-absolute{overflow-x:hidden!important;overflow-y:auto!important;scrollbar-width:none}.cal-body .fc-scroller-liquid-absolute::-webkit-scrollbar{display:none}.cal-body #calendar.cal-month-scroll .fc-view-harness{flex:1 1 0!important;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important}.cal-body #calendar.cal-month-scroll .fc-scrollgrid-section-header>*{position:sticky;top:0;z-index:6;background:var(--color-card)}.cal-body .fc-prev-button:focus-visible,.cal-body .fc-next-button:focus-visible,.cal-body .fc-today-button:focus-visible,.cal-body .fc-addEvent-button:focus-visible,.cal-body .fc-button-group .fc-button:focus-visible{outline:none!important;outline-offset:2px!important;box-shadow:none!important}.cal-body .fc-viewDropdown-button:focus-visible{outline:none!important;outline-offset:2px!important;box-shadow:none!important}.cal-body .fc-event:focus-visible{outline:none!important;outline-offset:2px!important;box-shadow:none!important;z-index:10!important}.cal-drawer-close:focus-visible,.cal-drawer-footer .btn:focus-visible,.cal-drawer-footer .btn-delete:focus-visible{outline:none;outline-offset:2px;box-shadow:none}.cal-drawer-body .input:focus-visible{outline:none}.cal-filter-cb:focus-visible{outline:none;outline-offset:2px}.cal-add-btn:focus-visible,.cal-export-btn:focus-visible,.cal-search-clear:focus-visible,.cal-reset-cats:focus-visible,.cal-add-cat-btn:focus-visible,.cal-custom-delete:focus-visible,.cal-color-swatch:focus-visible{outline:none;outline-offset:2px}.cal-body .fc-daygrid-more-link:focus-visible,.cal-body .fc-timegrid-more-link:focus-visible{outline:none;outline-offset:2px;border-radius:6px}.cal-body .fc-list-event:focus-visible td{background:#0000000a!important}.cal-body .fc-scrollgrid,.cal-body .fc-col-header,.cal-body .fc-daygrid-body,.cal-body .fc-scrollgrid-sync-table,.cal-body .fc-timegrid-body,.cal-body .fc-timegrid-body table{width:100%!important;table-layout:fixed!important}.cal-body .fc{max-width:100%;overflow:hidden}.cal-body .fc-view-harness{overflow:hidden;width:100%}.cal-body .fc-scroller-harness{overflow:hidden}.cal-body .fc-view{animation:cal-view-fadein .2s ease}@keyframes cal-view-fadein{0%{opacity:0}to{opacity:1}}.cal-body .fc-scrollgrid{border:none!important;border-radius:var(--radius-md);overflow:hidden}.cal-body .fc-scrollgrid td,.cal-body .fc-scrollgrid th{border-color:#00000026}.cal-body .fc-scrollgrid td:last-child,.cal-body .fc-scrollgrid th:last-child{border-right:none!important}.cal-body .fc-scrollgrid td:first-child,.cal-body .fc-scrollgrid th:first-child{border-left:none!important}.cal-body .fc-daygrid-body tr:last-child td{border-bottom:none!important}.cal-body .fc-col-header-cell{padding:8px 0;background:transparent;border-bottom:.5px solid rgba(0,0,0,.15)!important}.cal-body .fc-col-header-cell-cushion{font-size:12px;font-weight:650;color:var(--color-text-tertiary);text-transform:capitalize;letter-spacing:.4px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-body .fc-daygrid-day{cursor:pointer;transition:background .2s ease}.cal-body .fc-daygrid-day:hover{background:#0000000a}.cal-body .fc-daygrid-day:active{background:#0000000a;transition-duration:.05s}.cal-body .fc-daygrid-day-number{padding:8px 10px;font-size:14px;font-weight:500;color:var(--color-text-primary);text-decoration:none;font-variant-numeric:tabular-nums}.cal-body .fc-daygrid-day-top{display:flex!important;justify-content:flex-start!important}.cal-body .fc-daygrid-day-frame{min-height:0!important}.cal-body .fc-scrollgrid-sync-table,.cal-body .fc-daygrid-body{height:100%!important}.cal-body .fc-daygrid-body tr:not(:has(>td:not(.fc-day-other))){display:none!important}.cal-body .fc-daygrid-day.fc-day-today{background:transparent!important}.cal-body .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{background:var(--color-text-primary)!important;color:#fff!important;font-weight:600;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;padding:0;margin:4px 6px;font-size:14px}.cal-body .fc-daygrid-day.fc-day-other .fc-daygrid-day-number{color:var(--color-text-tertiary);opacity:1}.cal-body .fc-daygrid-day.fc-day-other{background:transparent!important}.cal-body .fc-event{border:none!important;border-radius:6px!important;padding:4px 8px!important;margin:0 4px!important;font-size:13px!important;font-weight:500!important;line-height:20px!important;color:var(--cat-text, var(--cal-text, var(--color-text-primary)));cursor:grab;transition:background .15s ease,transform .15s ease,box-shadow .15s ease!important;background:var(--cat-bg, rgba(0, 0, 0, .07))!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}.cal-body .fc-event .fc-time-prefix{display:inline-block;margin-right:4px;font-weight:600;opacity:.7;font-size:var(--font-size-xs)}.cal-body .fc-event:hover{background:var(--cat-bg-hover, rgba(0, 0, 0, .15))!important;transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.cal-body .fc-event:active,.cal-body .fc-event.fc-event-dragging{cursor:grabbing;transform:translateY(0) scale(.97);box-shadow:none;transition-duration:.08s!important}.cal-body .fc-event-mirror{opacity:.85;box-shadow:0 4px 12px #00000026;transform:scale(1.02)}.cal-body .fc-daygrid-event-dot{display:none!important}.cal-body .fc-event .fc-event-main{color:var(--cat-text, var(--color-text-primary));font-weight:600!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;min-width:0!important}.cal-body .fc-event .fc-event-title{overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;display:block!important}.cal-body .fc-event .fc-event-title-container{overflow:hidden!important;min-width:0!important}.cal-body .fc-h-event{background:var(--cat-bg, rgba(0, 0, 0, .07))!important;border:none!important}.cal-body .fc-h-event.fc-event-start.fc-event-end{border-radius:6px!important}.cal-body .fc-h-event.fc-event-start:not(.fc-event-end){border-radius:6px 0 0 6px!important}.cal-body .fc-h-event.fc-event-end:not(.fc-event-start){border-radius:0 6px 6px 0!important}.cal-body .fc-h-event:not(.fc-event-start):not(.fc-event-end){border-radius:0!important}.cal-body .fc-h-event .fc-event-main{color:var(--cat-text, var(--color-text-primary));font-weight:600!important}.cal-body .fc-h-event .fc-event-main-frame{padding:0!important}.cal-body .fc-daygrid-block-event .fc-event-time{display:inline!important;font-size:var(--font-size-xs)!important;font-weight:600!important;opacity:.7;margin-right:4px}.cal-body .fc-daygrid-event-harness{margin-top:2px!important}.fc-event.cat-personlig{--cat-color: #4A90E2;--cat-bg: rgba(74, 144, 226, .15);--cat-bg-hover: rgba(74, 144, 226, .22);--cat-text: #2563a8}.fc-event.cat-aflevering{--cat-color: #e24668;--cat-bg: rgba(226, 70, 104, .15);--cat-bg-hover: rgba(226, 70, 104, .22);--cat-text: #be3a59}.fc-event.cat-grammatik{--cat-color: #22c55e;--cat-bg: rgba(34, 197, 94, .15);--cat-bg-hover: rgba(34, 197, 94, .22);--cat-text: #15803d}.fc-event.cat-skole{--cat-color: #06b6d4;--cat-bg: rgba(6, 182, 212, .15);--cat-bg-hover: rgba(6, 182, 212, .22);--cat-text: #0e7490}.fc-event.cat-proeve{--cat-color: #8b5cf6;--cat-bg: rgba(139, 92, 246, .15);--cat-bg-hover: rgba(139, 92, 246, .22);--cat-text: #6d28d9}.fc-event.cat-andet{--cat-color: var(--color-warning);--cat-bg: rgba(245, 158, 11, .15);--cat-bg-hover: rgba(245, 158, 11, .22);--cat-text: #b45309}.fc-event.cat-deadline{--cat-color: #d946a8;--cat-bg: rgba(217, 70, 168, .15);--cat-bg-hover: rgba(217, 70, 168, .22);--cat-text: #a8348a}.fc-event.cat-moeder{--cat-color: #0ea5e9;--cat-bg: rgba(14, 165, 233, .15);--cat-bg-hover: rgba(14, 165, 233, .22);--cat-text: #0369a1}.fc-event.cat-arbejde{--cat-color: #0d9488;--cat-bg: rgba(13, 148, 136, .15);--cat-bg-hover: rgba(13, 148, 136, .22);--cat-text: #115e59}.fc-event.cat-google_cal{--cat-color: #4285F4;--cat-bg: rgba(66, 133, 244, .15);--cat-bg-hover: rgba(66, 133, 244, .22);--cat-text: #1a65d1}.cal-body .fc-event:not([class*=cat-]){--cat-color: #4A90E2;--cat-bg: rgba(74, 144, 226, .15);--cat-bg-hover: rgba(74, 144, 226, .22);--cat-text: #2563a8}.fc-event .fc-event-main{font-weight:600!important;color:var(--cat-text, var(--cal-text, var(--color-text-primary)))}.cal-body .fc-daygrid-more-link{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-tertiary);padding:2px 4px;border-radius:6px;transition:color .15s ease,background .15s ease;min-height:44px;display:inline-flex;align-items:center}.cal-body .fc-daygrid-more-link:hover{color:var(--color-text-primary);background:#0000000a}.cal-body .fc-daygrid-more-link:active{transform:scale(.95);transition-duration:.08s}.fc-event.cat-recurring .fc-event-main:before{content:"\21bb";margin-right:4px;font-size:var(--font-size-xs);opacity:.6}.fc-event.cat-overdue{opacity:.55;text-decoration:line-through;box-shadow:inset 3px 0 0 var(--color-warning-text)!important}.fc-event.cat-urgent{animation:cal-urgent-pulse 2.5s ease infinite;box-shadow:inset 3px 0 0 var(--color-warning),0 0 0 1px #d977062e!important}@keyframes cal-urgent-pulse{0%,to{box-shadow:inset 3px 0 0 var(--color-warning),0 0 0 1px #d977062e}50%{box-shadow:inset 3px 0 0 var(--color-warning),0 0 0 3px #d977061f}}.fc-event.cat-soon{box-shadow:inset 3px 0 0 var(--color-warning)!important}.cal-body .fc-timegrid .fc-col-header-cell{padding:10px 0 8px;vertical-align:bottom}.cal-body .fc-timegrid .fc-col-header-cell-cushion{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.8px;text-decoration:none;opacity:.7;padding:4px 8px}.cal-body .fc-timegrid .fc-col-header-cell.fc-day-today .fc-col-header-cell-cushion{color:var(--color-text-primary);opacity:1;font-weight:650;background:#0000000a;border-radius:8px;padding:6px 12px}.cal-body .fc-timegrid-slot-label{vertical-align:top;padding-right:10px!important;text-align:right;width:60px}.cal-body .fc-timegrid-slot-label-cushion{font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-tertiary);opacity:.55;padding:0 8px 0 0;text-align:right;white-space:nowrap;line-height:1;font-variant-numeric:tabular-nums}.cal-body .fc-timegrid-slot{height:48px;border-color:#0000000a}.cal-body .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":00:00"]{border-top-color:#00000014}.cal-body .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":30:00"]{border-top-color:#0000000d;border-top-style:dashed!important}.cal-body .fc-scrollgrid .fc-timegrid-col{border-right-color:#00000026}.cal-body .fc-timegrid-col:hover{background:#0000000a}.cal-body .fc-timegrid-col.fc-day-today{background:#0000000a!important}.cal-day-header-rich{display:flex;flex-direction:column;align-items:center;gap:1px;padding:2px 0}.cal-day-header-weekday{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-tertiary);letter-spacing:.8px;text-transform:uppercase;opacity:.7}.cal-day-header-num{font-size:24px;font-weight:650;color:var(--color-text-primary);line-height:1.2;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}.cal-day-header-month{font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-tertiary);opacity:.6;text-transform:lowercase}.fc-day-today .cal-day-header-weekday{color:var(--color-text-primary);opacity:1}.fc-day-today .cal-day-header-num{background:#0000000a;color:var(--color-text-primary)}.fc-col-header-cell:not(.fc-day-today) .cal-day-header-num{background:transparent}.fc-view-harness .fc-timeGridDay-view .fc-col-header-cell-cushion{opacity:1;font-size:inherit;text-transform:none;letter-spacing:normal}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-col.fc-day-today{background:transparent!important}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot{background:#00000006}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="08:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="08:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="09:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="09:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="10:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="10:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="11:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="11:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="12:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="12:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="13:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="13:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="14:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="14:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="15:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="15:30:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="16:00:00"],.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="16:30:00"]{background:transparent}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":00:00"]{border-top-color:#00000024}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot-label-cushion{opacity:.7;font-size:12px}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-col:hover{background:transparent}.fc-view-harness .fc-timeGridDay-view .fc-scrollgrid .fc-timegrid-col{border-right-color:transparent}.cal-body .fc-timegrid .fc-daygrid-body{border-bottom:.5px solid rgba(0,0,0,.08)!important}.cal-body .fc-timegrid-divider{padding:0!important;height:0!important;border-top:none!important;border-bottom:none!important}.cal-body .fc-timegrid .fc-daygrid-day-frame{min-height:28px;padding:2px 0}.cal-body .fc-timegrid .fc-daygrid-event{border-radius:6px!important;padding:2px 8px 2px 10px!important;font-size:var(--font-size-xs)!important;font-weight:500!important;border-left:none!important;margin:1px 2px!important}.cal-body .fc-timegrid-event{border-radius:6px!important;border:none!important;padding:4px 8px!important;margin:0 2px!important;font-size:12px!important;font-weight:500!important;line-height:1.35!important;overflow:hidden;top:1px!important;bottom:2px!important;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease!important}.cal-body .fc-timegrid-event .fc-event-main{padding:0!important;font-weight:500!important;color:inherit;overflow:hidden}.cal-body .fc-timegrid-event .fc-event-time{font-size:var(--font-size-xs)!important;font-weight:600!important;opacity:.7;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-body .fc-timegrid-event .fc-event-title-container{flex-grow:1;overflow:hidden}.cal-body .fc-timegrid-event .fc-event-title{font-size:12px!important;font-weight:500!important;overflow:hidden;text-overflow:ellipsis}.cal-body .fc-timegrid-event.fc-short .fc-event-main-frame{flex-direction:row;align-items:center;gap:6px}.cal-body .fc-timegrid-event.fc-short .fc-event-time{flex-shrink:0;margin-bottom:0}.cal-body .fc-timegrid-event:hover{transform:translateY(-1px) translate(1px);box-shadow:0 4px 14px #0000001f,0 1px 3px #0000000f;z-index:10!important}.cal-body .fc-timegrid-event:active{transform:scale(.98);box-shadow:none;transition-duration:.08s}.cal-body .fc-timegrid-event-harness{transition:opacity .15s ease}.cal-body .fc-timegrid-event-harness-inset .fc-timegrid-event{opacity:.92;box-shadow:-1px 0 3px #0000000f}.cal-body .fc-timegrid-event-harness-inset .fc-timegrid-event:hover{opacity:1;box-shadow:0 2px 12px #0000001f}.cal-body .fc-timegrid-col-events{margin:0 2px 0 0}.cal-body .fc-timegrid-now-indicator-line{border-color:#ea4335;border-width:2px 0 0 0!important;z-index:5}.cal-body .fc-timegrid-now-indicator-arrow{display:none!important}.cal-body .fc-timegrid-col.fc-day-today .fc-timegrid-now-indicator-line:before{content:"";position:absolute;left:-4px;top:-5px;width:8px;height:8px;background:#ea4335;border-radius:50%;z-index:6}.cal-body .fc-timegrid-more-link{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-tertiary);padding:1px 4px;border-radius:6px;transition:color .15s ease,background .15s ease}.cal-body .fc-timegrid-more-link:hover{color:var(--color-text-primary);background:#0000000a}.cal-body .fc-timegrid .fc-highlight{background:#0000000a!important;border:.5px solid rgba(0,0,0,.08)!important;border-radius:6px!important;box-shadow:inset 0 0 8px #0000000a!important;transition:background .15s ease,box-shadow .15s ease;animation:cal-drop-pulse .3s cubic-bezier(.16,1,.3,1)}.cal-body .fc-timegrid-slot.fc-slot-highlight{background:#0000000a!important}.cal-body .fc-timegrid-axis{border-right:.5px solid rgba(0,0,0,.15)!important;width:60px}.cal-body .fc-view-harness:has(.fc-list){overflow-y:auto!important;overflow-x:hidden!important}.cal-body .fc-list{border:none!important;border-radius:var(--radius-md);overflow:visible!important;height:auto!important}.cal-body .fc-list .fc-list-table{margin-bottom:96px}.cal-body .fc-list-table{border-collapse:separate;border-spacing:0 6px}.cal-body .fc-list-table td,.cal-body .fc-list-table th{border:none!important}.cal-body .fc-list-day{background:transparent}.cal-body .fc-list-day th{border:none!important;padding:0!important}.cal-body .fc-list-day-cushion{background:var(--color-bg, #f4f5f7)!important;padding:12px 24px!important;margin-top:4px;font-size:14px;font-weight:650;color:var(--color-text-primary, rgb(19, 19, 19));letter-spacing:-.2px}.cal-body .fc-list-day.fc-day-today .fc-list-day-cushion{background:#0000000a!important;color:var(--color-text-primary)}.cal-body .fc-list-day.fc-day-past .fc-list-day-cushion{opacity:.55}.cal-body .fc-list-day-text,.cal-body .fc-list-day-cushion a{font-size:14px!important;font-weight:650!important;color:inherit;text-decoration:none!important}.cal-body .fc-list-day-side-text{font-size:12px!important;font-weight:500!important;color:var(--color-text-tertiary, #64748b);text-decoration:none!important}.cal-body .fc-list-event{cursor:pointer;transition:all .2s ease;--list-cat-color: var(--color-text-primary)}.cal-body .fc-list-event td{padding:12px 20px!important;vertical-align:middle!important;border-bottom:none!important;background:var(--color-card, #fff);transition:all .2s ease}.cal-body .fc-list-event td:first-child{border-left:4px solid var(--list-cat-color)!important;border-radius:8px 0 0 8px}.cal-body .fc-list-event td:last-child{border-radius:0 8px 8px 0}.cal-body .fc-list-event:hover td{background:#00000005!important;box-shadow:0 2px 8px #0000000d}.cal-body .fc-list-event-graphic{display:none!important}.cal-body .fc-list-event-time{font-size:13px!important;font-weight:600!important;color:var(--color-text-secondary);white-space:nowrap;min-width:100px;max-width:120px;font-variant-numeric:tabular-nums;font-family:var(--font-family);padding-left:16px!important}.cal-body .fc-list-event-title{padding-left:0!important;width:100%}.cal-body .fc-list-event-title a{display:none!important}.cal-list-card{display:flex;flex-direction:column;gap:2px}.cal-list-card__title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cal-list-card__title{font-size:15px;font-weight:600;color:var(--color-text-primary);line-height:1.4}.cal-body .fc-list-event:hover .cal-list-card__title{color:var(--color-text-primary)}.cal-list-card__chip{display:inline-flex;align-items:center;font-size:var(--font-size-xs);font-weight:600;padding:2px 8px;border-radius:10px;letter-spacing:.2px;white-space:nowrap;background:color-mix(in srgb,var(--chip-color, var(--color-text-primary)) 12%,transparent);color:var(--chip-color, var(--color-text-primary));line-height:1.6}.cal-list-card__chip.cat-chip--personlig{--chip-color: #4A90E2}.cal-list-card__chip.cat-chip--aflevering{--chip-color: #e24668}.cal-list-card__chip.cat-chip--grammatik{--chip-color: #22c55e}.cal-list-card__chip.cat-chip--skole{--chip-color: #06b6d4}.cal-list-card__chip.cat-chip--proeve{--chip-color: #8b5cf6}.cal-list-card__chip.cat-chip--deadline{--chip-color: #d946a8}.cal-list-card__chip.cat-chip--moeder{--chip-color: #0ea5e9}.cal-list-card__chip.cat-chip--arbejde{--chip-color: #0d9488}.cal-list-card__chip.cat-chip--andet{--chip-color: #f59e0b}.cal-list-card__chip.cat-chip--google_cal{--chip-color: #4285F4}[data-theme=dark] .cal-list-card__chip.cat-chip--personlig{--chip-color: #7ab4f5}[data-theme=dark] .cal-list-card__chip.cat-chip--aflevering{--chip-color: #f87171}[data-theme=dark] .cal-list-card__chip.cat-chip--grammatik{--chip-color: #4ade80}[data-theme=dark] .cal-list-card__chip.cat-chip--skole{--chip-color: #22d3ee}[data-theme=dark] .cal-list-card__chip.cat-chip--proeve{--chip-color: #a78bfa}[data-theme=dark] .cal-list-card__chip.cat-chip--deadline{--chip-color: #fb7185}[data-theme=dark] .cal-list-card__chip.cat-chip--moeder{--chip-color: #38bdf8}[data-theme=dark] .cal-list-card__chip.cat-chip--arbejde{--chip-color: #2dd4bf}[data-theme=dark] .cal-list-card__chip.cat-chip--andet{--chip-color: #fcd34d}[data-theme=dark] .cal-list-card__chip.cat-chip--google_cal{--chip-color: #60a5fa}.cal-list-card__desc{font-size:13px;color:var(--color-text-tertiary);line-height:1.4;max-width:500px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-body .fc-list-event.fc-event--past td{opacity:.55}.cal-body .fc-list-event.fc-event--past:hover td{opacity:.85}.cal-body .fc-list-empty{background:transparent!important}.cal-body .fc-list-empty-cushion{font-size:15px;color:var(--color-text-tertiary);font-weight:500;padding:64px 20px;text-align:center}.cal-body .fc-highlight{background:#0000000a!important;border:.5px solid rgba(0,0,0,.08)!important;border-radius:6px!important;box-shadow:inset 0 0 12px #0000000a!important;transition:background .15s ease,box-shadow .15s ease;animation:cal-drop-pulse .3s cubic-bezier(.16,1,.3,1)}@keyframes cal-drop-pulse{0%{background:#00000014;box-shadow:inset 0 0 16px #00000012}to{background:#0000000a;box-shadow:inset 0 0 12px #0000000a}}.cal-mini{margin-bottom:4px}.cal-mini .fc{font-size:13px}.cal-mini .fc-toolbar{margin-bottom:6px!important}.cal-mini .fc-toolbar-title{font-size:14px!important;font-weight:600!important;color:var(--color-text-primary)}.cal-mini .fc-button{padding:2px 6px!important;font-size:var(--font-size-xs)!important;background:transparent!important;border:none!important;color:var(--color-text-secondary);box-shadow:none!important;transition:color .15s ease!important}.cal-mini .fc-button:hover{color:var(--color-text-primary)}.cal-mini .fc-daygrid-day-number{padding:2px;font-size:13px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);text-decoration:none;color:var(--color-text-primary);transition:background .15s ease,color .15s ease}.cal-mini .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{background:var(--color-text-primary)!important;color:#fff!important;font-weight:650}.cal-mini .fc-daygrid-day.fc-day-other .fc-daygrid-day-number{color:var(--color-text-tertiary);opacity:.35}.cal-mini .fc-col-header-cell{text-align:center;padding:4px 0}.cal-mini .fc-col-header-cell-cushion{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-tertiary);text-decoration:none;text-transform:uppercase;letter-spacing:.02em;padding:0 1px}.cal-mini .fc-daygrid-day-events{display:flex;justify-content:center;gap:3px;margin-top:0;min-height:8px;padding:0 2px}.cal-mini .fc-event{background:var(--color-text-primary)!important;border:none!important;width:4px!important;height:4px!important;border-radius:50%!important;padding:0!important;margin:0!important;min-height:0!important}.cal-mini .fc-event-title,.cal-mini .fc-event-time{display:none}.cal-mini .fc-daygrid-day-frame{min-height:auto!important;display:flex;flex-direction:column;align-items:center;justify-content:center}.cal-mini .fc-scrollgrid,.cal-mini .fc-scrollgrid td,.cal-mini .fc-scrollgrid th{border:none!important}.cal-mini .fc-daygrid-day{cursor:pointer}.cal-mini .fc-daygrid-day:hover .fc-daygrid-day-number{background:var(--color-bg)}.cal-body .fc-event.fc-event--past{opacity:.45}.cal-body .fc-event.fc-event--past:hover{opacity:.7}.cal-body .fc-day-today .fc-event.fc-event--past{opacity:.82}.cal-body .fc-day-today .fc-event.fc-event--past:hover{opacity:1}@keyframes cal-event-pop-in{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.cal-body .fc-event.cal-event-new{animation:cal-event-pop-in .2s ease forwards}@keyframes cal-event-settle{0%{box-shadow:0 0 0 3px #00000026}to{box-shadow:0 0 #0000000a}}.cal-body .fc-event.cal-event-settled{animation:cal-event-settle .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes cal-event-shrink-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}.cal-body .fc-event.cal-event-removing{animation:cal-event-shrink-out .25s ease forwards;pointer-events:none}.cal-drag-ghost{opacity:0;will-change:opacity,transform;border:.5px dashed rgba(0,0,0,.15)!important;border-radius:6px!important;background:#00000008!important;pointer-events:none!important;box-sizing:border-box;transition:opacity .15s ease;color:transparent;overflow:hidden!important}.cal-drag-ghost--visible{opacity:.4}.cal-drag-ghost--fade-out{animation:calGhostFadeOut .25s ease forwards}@keyframes calGhostFadeOut{0%{opacity:.4}to{opacity:0}}.cal-drag-ghost--shrink-out{animation:calGhostShrinkOut .3s ease forwards}@keyframes calGhostShrinkOut{0%{opacity:.4;transform:scale(1)}50%{opacity:.2;transform:scale(.85)}to{opacity:0;transform:scale(.5)}}.cal-divider{border:none;border-top:.5px solid rgba(0,0,0,.08);margin:12px 0;flex-shrink:0}@media(min-width:1920px){.cal-body .fc-toolbar-title{font-size:18px!important}.cal-body .fc-daygrid-day-number{font-size:15px}.cal-body .fc-event{font-size:14px!important}.cal-body .fc-col-header-cell-cushion{font-size:13px}.cal-body .fc-timegrid-slot-label-cushion{font-size:12px}.cal-body .fc-timegrid-event .fc-event-title{font-size:13px!important}}.cal-drawer-overlay{position:fixed;inset:0;background:#0006;z-index:9100;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .25s ease;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.cal-drawer-overlay.active{opacity:1;pointer-events:auto;visibility:visible}.cal-drawer{position:fixed;top:0;right:0;width:400px;height:100vh;background:var(--color-card);z-index:9101;transform:translate(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;box-shadow:-12px 0 40px #00000014,-2px 0 8px #0000000a}.cal-drawer-overlay.active .cal-drawer{transform:translate(0)}.cal-drawer-overlay.active .cal-drawer-body .input-group,.cal-drawer-overlay.active .cal-drawer-body .cal-drawer-dates,.cal-drawer-overlay.active .cal-drawer-body .toggle{animation:drawer-field-in .3s ease both}.cal-drawer-overlay.active .cal-drawer-body .input-group:nth-child(1){animation-delay:.08s}.cal-drawer-overlay.active .cal-drawer-body .input-group:nth-child(2){animation-delay:.12s}.cal-drawer-overlay.active .cal-drawer-body .cal-drawer-dates{animation-delay:.16s}.cal-drawer-overlay.active .cal-drawer-body .toggle{animation-delay:.2s}.cal-drawer-overlay.active .cal-drawer-body .input-group:nth-child(n+5){animation-delay:.24s}@keyframes drawer-field-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cal-drawer-overlay.active .cal-drawer-footer{animation:drawer-field-in .25s ease .2s both}.cal-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:.5px solid rgba(0,0,0,.08)}.cal-drawer-header h5{font-size:18px;font-weight:650;color:var(--color-text-primary);margin:0;letter-spacing:-.2px}.cal-drawer-close{background:transparent;border:none;padding:10px;min-width:44px;min-height:44px;cursor:pointer;color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full, 50%);transition:all .15s ease}.cal-drawer-close:hover{background:#0000000d;color:var(--color-text-primary)}.cal-drawer-close:active{transform:scale(.85);transition:transform .08s ease}.cal-drawer-body{flex:1;overflow-y:auto;padding:24px 24px 20px;scrollbar-width:none}.cal-drawer-body::-webkit-scrollbar{display:none}.cal-drawer-body .input-group{margin-bottom:14px}.cal-drawer-body .input-label{display:block;font-size:13px;font-weight:500;color:var(--color-text-tertiary);text-transform:none;letter-spacing:0;margin-bottom:5px}.cal-drawer-body .input{width:100%;padding:10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-card);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;accent-color:var(--color-text-primary);color-scheme:light}.cal-drawer-body .input:hover{border-color:#00000014}.cal-drawer-body .input:focus-visible,.cal-drawer-body textarea:focus-visible,.cal-drawer-body select:focus-visible,.smart-drawer .input:focus-visible,.smart-drawer textarea:focus-visible,.smart-drawer select:focus-visible{border-color:#00000014;box-shadow:none!important;outline:none!important}.cal-drawer-body .input::placeholder{color:var(--color-text-tertiary);opacity:.5}.cal-drawer-body select.input{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23697a8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.cal-drawer-body input[type=date],.cal-drawer-body input[type=time]{accent-color:var(--color-text-primary);color-scheme:light}.cal-drawer-body input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;transition:opacity .15s ease}.cal-drawer-body input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:.8}.cal-drawer-body select.input option{padding:8px 14px;font-size:14px;font-family:var(--font-family)}.cal-drawer-body select.input option:checked{background:linear-gradient(0deg,var(--color-text-primary) 0%,var(--color-text-primary) 100%);color:#fff}.custom-cat-select{position:relative;width:100%}.custom-cat-select+select.input,select.input.custom-hidden{position:absolute;opacity:0;pointer-events:none;height:0;overflow:hidden}.custom-cat-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:10px 36px 10px 14px;min-height:44px;border-radius:var(--radius-md);background:var(--color-card);border:.5px solid rgba(0,0,0,.08);font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23697a8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.custom-cat-trigger:hover{border-color:#00000014}.custom-cat-trigger:focus-visible,.custom-cat-trigger.open{box-shadow:none;outline:none}.custom-cat-trigger:focus-visible{outline:none}.custom-cat-trigger:active{transform:scale(.995)}.custom-cat-trigger .cat-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0;transition:background-color .2s ease}.custom-cat-trigger.open{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23697a8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7.5 6 4.5 9 7.5'/%3E%3C/svg%3E")}.custom-cat-options{position:fixed;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);z-index:9102;overflow:hidden;overflow-y:auto;max-height:70vh;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .15s ease,transform .15s ease}.custom-cat-options.open{opacity:1;transform:translateY(0);pointer-events:auto}.custom-cat-option{display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:44px;font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:background .1s ease}.custom-cat-option:hover{background:#0000000a}.custom-cat-option.selected{background:#00000012;font-weight:600}.custom-cat-option .cat-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0}.custom-cat-option:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0}.custom-cat-option:last-child{border-radius:0 0 var(--radius-md) var(--radius-md)}.custom-cat-add-btn{display:flex;align-items:center;gap:8px;padding:10px 14px;min-height:44px;font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:background .1s ease;border-top:.5px solid rgba(0,0,0,.08);border-radius:0 0 var(--radius-md) var(--radius-md)}.custom-cat-add-btn:hover{background:#0000000a}.custom-cat-add-icon{font-size:16px;font-weight:650;line-height:1}.custom-cat-add-form{padding:10px 14px 12px;border-top:.5px solid rgba(0,0,0,.08)}.custom-cat-add-form input.custom-cat-add-input{width:100%;box-sizing:border-box;padding:10px 12px;min-height:44px;font-size:14px;font-family:var(--font-family);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);outline:none;background:transparent;color:var(--color-text-primary);transition:border-color .15s ease}.custom-cat-add-form input.custom-cat-add-input:focus-visible{box-shadow:none;outline:none}.custom-cat-add-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.custom-cat-add-swatch{width:28px;height:28px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:border-color .15s ease,transform .1s ease;flex-shrink:0;position:relative}.custom-cat-add-swatch:before{content:"";position:absolute;inset:-8px}.custom-cat-add-swatch:hover{transform:scale(1.15)}.custom-cat-add-swatch.selected{border-color:var(--color-text-primary, #333);transform:scale(1.1)}.custom-cat-add-actions{display:flex;gap:8px;margin-top:10px}.custom-cat-add-actions button{padding:10px 16px;min-height:44px;font-size:13px;font-family:var(--font-family);border-radius:var(--radius-md);cursor:pointer;border:none;transition:background .15s ease,opacity .15s ease}.custom-cat-add-actions .custom-cat-add-create{background:var(--color-text-primary);color:#fff;font-weight:600}.custom-cat-add-actions .custom-cat-add-create:hover{opacity:.88}.custom-cat-add-actions .custom-cat-add-cancel{background:var(--color-bg);color:var(--color-text-secondary, rgb(60, 60, 58))}.custom-cat-add-actions .custom-cat-add-cancel:hover{background:#00000017}[data-theme=dark] .custom-cat-trigger{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .custom-cat-options{position:fixed;background:var(--color-card);border-color:#ffffff14;box-shadow:0 8px 24px #0000004d}[data-theme=dark] .custom-cat-option.selected{background:rgba(var(--cal-accent-rgb, 27, 132, 122),.15)}[data-theme=dark] .custom-cat-add-form input.custom-cat-add-input{border-color:#ffffff1f;color:#e0e0e0}[data-theme=dark] .custom-cat-add-form input.custom-cat-add-input:focus-visible{box-shadow:none}.cal-drawer-body .toggle input{accent-color:var(--color-text-primary)}.cal-drawer-body textarea.input{resize:vertical;min-height:72px}.cal-drawer-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cal-drawer-times{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin-bottom:0;max-height:0;overflow:hidden;opacity:0;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .25s ease,margin-bottom .3s ease}.cal-drawer-times.time-row-visible{max-height:90px;opacity:1;margin-bottom:4px}.cal-tz-group{min-width:0}.cal-tz-select{width:100%;padding:10px 8px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-card);cursor:pointer;max-width:160px;transition:border-color .15s ease,box-shadow .15s ease}.cal-tz-select:focus-visible{box-shadow:none;outline:none}.cal-recurrence-scope{padding:10px 14px;border-radius:var(--radius-md);background:#0000000a;border:.5px solid rgba(0,0,0,.08);margin-bottom:12px}.cal-recurrence-scope-label{font-size:13px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.cal-recurrence-scope-option{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text-primary);cursor:pointer;padding:4px 0}.cal-recurrence-scope-option input[type=radio]{accent-color:var(--color-text-primary);width:18px;height:18px}.cal-drawer-times .input[type=time]{width:100%;padding:10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-card);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.cal-drawer-times .input[type=time]:hover{border-color:#00000014}.cal-drawer-times .input[type=time]:focus-visible{box-shadow:none;background:var(--color-card);outline:none}.cal-drawer-body .toggle{margin-bottom:14px;padding:2px 0}.cal-drawer-body .toggle-track:after{transition:transform .25s ease}.cal-drawer-body .toggle-track{transition:background .2s ease}.cal-drawer-body .toggle:active .toggle-track:after{width:24px}.cal-drawer-footer{padding:16px 24px;border-top:.5px solid rgba(0,0,0,.08);display:flex;align-items:center;gap:10px}.cal-drawer-footer .btn{border-radius:var(--radius-md);font-weight:600;font-size:14px;padding:0 24px;height:44px;min-height:44px;transition:all .15s ease}.cal-drawer-footer .btn-primary{box-shadow:0 1px 3px #00000026}.cal-drawer-footer .btn-primary:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-.5px)}.cal-drawer-footer .btn-primary:active{transform:translateY(0) scale(.95);box-shadow:none;transition:transform .08s ease}.cal-drawer-footer .btn-secondary:active{transform:scale(.95);transition:transform .08s ease}.cal-drawer-footer .btn-secondary{background:transparent;border:.5px solid rgba(0,0,0,.08);color:var(--color-text-primary)}.cal-drawer-footer .btn-secondary:hover{background:#00000008;border-color:#00000014;color:var(--color-text-primary)}.cal-drawer-footer .btn-delete{margin-left:auto;background:transparent;color:var(--color-error);border:.5px solid transparent;font-size:13px;font-weight:500;padding:10px 16px;min-height:44px;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.cal-drawer-footer .btn-delete:hover{background:#ef444414;color:var(--color-error);border-color:transparent}.cal-drawer-error{background:var(--color-error-light);color:var(--color-danger);padding:10px 14px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;margin-bottom:16px;display:none}.cal-drawer-error.active{display:block}.cal-drawer-warning{background:var(--color-warning-light);color:var(--color-warning-text);padding:10px 14px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;margin-bottom:16px;display:none;line-height:1.4}.cal-drawer-warning.active{display:block}.cal-conflict-suggestions{margin-bottom:12px}.cal-conflict-suggest-label{font-size:12px;font-weight:600;color:var(--color-text-tertiary);margin:8px 0 6px}.cal-conflict-suggest-grid{display:flex;gap:6px;flex-wrap:wrap}.cal-conflict-suggest-btn{padding:10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:22px;background:var(--color-bg);color:var(--color-text-primary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;min-height:44px;white-space:nowrap}.cal-conflict-suggest-btn:hover{border-color:var(--color-text-primary);color:var(--color-text-primary);background:#0000000a}[data-theme=dark] .cal-conflict-suggest-btn:hover{background:rgba(var(--cal-accent-rgb, 27, 132, 122),.1)}.cal-drawer-body .input.input-error{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441f}@keyframes drawer-shake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(5px)}45%{transform:translate(-4px)}60%{transform:translate(3px)}75%{transform:translate(-2px)}}.cal-drawer-body .input.shake{animation:drawer-shake .45s ease}.cat-color-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#4a90e2;flex-shrink:0;transition:background-color .2s ease;vertical-align:middle;margin-left:2px;box-shadow:0 0 0 2px #00000026}.char-count{display:block;font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:right;margin-top:4px;opacity:0;max-height:0;overflow:hidden;transition:opacity .2s ease,max-height .2s ease}.char-count.char-count-visible{opacity:1;max-height:20px}.char-count.char-count-danger{color:var(--color-error);font-weight:600}.cal-drawer-footer .btn-primary:disabled{opacity:.65;cursor:not-allowed;pointer-events:none}.smart-drawer-nl-group .smart-drawer-nl-input{min-height:64px;resize:none;line-height:1.5;font-size:15px;width:100%;padding:10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-card);transition:border-color .2s ease,box-shadow .2s ease,background .15s ease;accent-color:var(--color-text-primary)}.smart-drawer-nl-group .smart-drawer-nl-input::placeholder{color:var(--color-text-secondary);opacity:.6}.smart-drawer-nl-group .smart-drawer-nl-input:hover{border-color:#00000014}.smart-drawer-nl-group .smart-drawer-nl-input:focus-visible{box-shadow:none;background:var(--color-card);outline:none}.smart-drawer-nl-group.nl-active .smart-drawer-nl-input{border-color:#00000014}.cal-drawer-mic{width:44px;height:44px;border-radius:var(--radius-md);margin-left:auto;padding:0;display:inline-flex;align-items:center;justify-content:center}.cal-drawer-mic svg{width:16px;height:16px}.smart-drawer-nl-hint{font-size:12px;color:var(--color-text-secondary);margin-top:6px;line-height:1.4;opacity:0;max-height:0;overflow:hidden;transition:opacity .25s ease,max-height .25s ease,margin .25s ease}.smart-drawer-nl-group.nl-active .smart-drawer-nl-hint{opacity:1;max-height:40px}.smart-drawer-ai-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(0,0,0,.15);border-top-color:var(--color-text-primary);border-radius:50%;vertical-align:middle;margin-left:6px;opacity:0;transform:scale(.8);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.smart-drawer-ai-spinner.active{opacity:1;transform:scale(1);animation:smart-drawer-spin .7s linear infinite}@keyframes smart-drawer-spin{to{transform:rotate(360deg)}}.ai-field-badge{display:inline-flex;align-items:center;font-size:var(--font-size-xs);font-weight:650;letter-spacing:.02em;padding:1px 5px;border-radius:6px;margin-left:6px;opacity:0;transform:scale(.8);transition:opacity .3s ease,transform .3s ease;vertical-align:middle}.ai-field-badge.active{opacity:1;transform:scale(1)}.ai-field-badge--high{background:#00000014;color:#131313}.ai-field-badge--inferred{background:#ffab001f;color:var(--color-warning-text)}.cal-drawer-body .input.ai-just-filled{animation:smart-drawer-field-flash .6s cubic-bezier(.16,1,.3,1)}@keyframes smart-drawer-field-flash{0%{background-color:#00000012}to{background-color:transparent}}.smart-drawer-details-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:10px 0;margin:4px 0 0;border:none;background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:color .2s ease}.smart-drawer-details-toggle:hover{color:var(--color-text-primary)}.smart-drawer-details-toggle svg{flex-shrink:0;transition:transform .25s ease}.smart-drawer-details-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.smart-drawer-details-body{max-height:0;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .25s ease}.smart-drawer-details-body.expanded{max-height:600px;opacity:1}.smart-drawer-preview{margin-top:12px;padding:10px 14px;background:#0000000a;border:.5px solid rgba(0,0,0,.07);border-radius:var(--radius-md);font-size:13px;color:var(--color-text-primary);transition:opacity .3s ease}.smart-drawer-preview-inner{display:flex;align-items:center;gap:8px}.smart-drawer-preview-icon{font-size:16px;flex-shrink:0;line-height:1}.smart-drawer-preview-text{line-height:1.4}.smart-drawer-inline-msg{font-size:13px;color:var(--color-text-primary);background:#0000000a;border:.5px solid rgba(0,0,0,.07);border-radius:var(--radius-md);padding:8px 12px;margin-top:8px;line-height:1.4;opacity:0;transform:translateY(-4px);transition:opacity .25s ease,transform .25s ease}.smart-drawer-inline-msg.visible{opacity:1;transform:translateY(0)}.smart-drawer select.time-select{appearance:none;-webkit-appearance:none;width:100%;height:48px;padding:10px 36px 10px 14px;font-family:var(--font-family);font-size:16px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);background:var(--color-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;background-size:12px;color:var(--color-text-primary);cursor:pointer;transition:border-color .2s,box-shadow .2s}.smart-drawer select.time-select:focus-visible{outline:none;border-color:#00000014;box-shadow:none}.date-chips,.smart-drawer .date-chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:0}.date-chip,.smart-drawer .date-chip{display:inline-flex;align-items:center;height:34px;padding:0 14px;font-family:var(--font-family);font-size:13px;font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));background:var(--color-bg, #f8f8f6);border:.5px solid rgba(0,0,0,.08);border-radius:17px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap;min-height:44px;user-select:none}.date-chip:hover,.smart-drawer .date-chip:hover{background:#0000000f;border-color:#00000026;color:var(--color-text-primary, rgb(19, 19, 19))}.date-chip.active,.smart-drawer .date-chip.active{background:var(--color-text-primary);color:#fff;border-color:var(--color-text-primary)}.smart-drawer .flatpickr-input{width:100%;height:48px;padding:10px 14px;font-family:var(--font-family);font-size:16px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);background:var(--color-card);color:var(--color-text-primary);cursor:pointer}.smart-drawer .flatpickr-input:focus-visible{outline:none;box-shadow:none}[data-theme=dark] .smart-drawer select.time-select{background-color:var(--color-card);border-color:var(--color-border);color:#e0e0e0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dark] .date-chip,[data-theme=dark] .smart-drawer .date-chip{background:#ffffff0f;border-color:#ffffff1a;color:#fff9}[data-theme=dark] .date-chip:hover,[data-theme=dark] .smart-drawer .date-chip:hover{background:#ffffff1a;border-color:#ffffff26;color:#fffc}[data-theme=dark] .date-chip.active,[data-theme=dark] .smart-drawer .date-chip.active{background:var(--cal-accent);color:#fff}[data-theme=dark] .smart-drawer .flatpickr-input{background:var(--color-card);border-color:var(--color-border);color:#e0e0e0}@media(min-width:768px)and (max-width:1023px)and (orientation:portrait){.cal-drawer{width:100%;height:auto;max-height:85dvh;inset:auto 0 0;border-radius:12px 12px 0 0;transform:translateY(100%)}.cal-drawer-overlay.active .cal-drawer{transform:translateY(0)}.cal-drawer:before{content:"";display:block;width:36px;height:4px;background:#00000014;border-radius:6px;margin:10px auto 0;flex-shrink:0}}@media(min-width:768px)and (max-width:1023px)and (orientation:landscape){.cal-drawer{width:380px}}@media(prefers-reduced-motion:reduce){.cal-drawer *,.smart-drawer *{animation:none!important;transition:none!important}}.cal-filter{display:flex;align-items:center;gap:8px;padding:4px 0;min-height:32px;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:color .15s ease}.cal-filter:hover{color:var(--color-text-primary)}.cal-filter-cb{width:18px;height:18px;border-radius:6px;cursor:pointer;appearance:none;-webkit-appearance:none;border:2px solid rgba(0,0,0,.08);position:relative;flex-shrink:0;transition:all .15s ease}.cal-filter-cb:before{content:"";position:absolute;inset:-13px}.cal-filter-cb:checked{border-color:transparent}.cal-filter-cb:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.cal-filter-cb[data-filter=all]:checked{background:var(--color-text-secondary);border-color:#00000026}.cal-filter-cb[data-filter=personlig]:checked{background:var(--cat-personlig);border-color:var(--cat-personlig)}.cal-filter-cb[data-filter=aflevering]:checked{background:var(--cat-aflevering);border-color:var(--cat-aflevering)}.cal-filter-cb[data-filter=grammatik]:checked{background:var(--cat-grammatik);border-color:var(--cat-grammatik)}.cal-filter-cb[data-filter=skole]:checked{background:var(--cat-skole);border-color:var(--cat-skole)}.cal-filter-cb[data-filter=proeve]:checked{background:var(--cat-proeve);border-color:var(--cat-proeve);color:#fff}.cal-filter-cb[data-filter=andet]:checked{background:var(--cat-andet);border-color:var(--cat-andet);color:#fff}.cal-filter-cb[data-filter=deadline]:checked{background:var(--cat-deadline);border-color:var(--cat-deadline);color:#fff}.cal-filter-cb[data-filter=moeder]:checked{background:var(--cat-moeder);border-color:var(--cat-moeder);color:#fff}.cal-filter-cb[data-filter=arbejde]:checked{background:var(--cat-arbejde);border-color:var(--cat-arbejde)}.cal-reset-cats{font-size:12px;font-weight:500;color:var(--color-text-tertiary);text-decoration:none;transition:color .15s}.cal-reset-cats:hover{color:var(--color-text-primary)}.cal-filter-popover{position:absolute;z-index:100;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-popup);min-width:min(200px,calc(100vw - 24px));max-width:min(300px,calc(100vw - 24px));width:min(300px,calc(100vw - 24px));max-height:400px;overflow-y:auto;animation:cal-popover-in .15s cubic-bezier(.16,1,.3,1);scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.cal-filter-popover::-webkit-scrollbar{width:5px}.cal-filter-popover::-webkit-scrollbar-track{background:transparent}.cal-filter-popover::-webkit-scrollbar-thumb{background:#00000014;border-radius:5px}.cal-filter-popover::-webkit-scrollbar-thumb:hover{background:#00000026}@keyframes cal-popover-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cal-filter-popover-inner{padding:12px 14px;display:flex;flex-direction:column;gap:4px}[data-theme=dark] .cal-filter-popover{box-shadow:0 8px 24px #0006;scrollbar-color:rgba(255,255,255,.1) transparent}[data-theme=dark] .cal-filter-popover::-webkit-scrollbar-thumb{background:#ffffff1a}[data-theme=dark] .cal-filter-popover::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.cal-filter-cb-custom:checked{background:var(--custom-cat-color, #4A90E2)!important;border-color:var(--custom-cat-color, #4A90E2)}.cal-filter-popover .cal-filter-managed{position:relative;padding-right:26px;min-height:32px}.cal-filter-popover .cal-custom-row .cal-filter-managed{padding-right:52px}.cal-filter-popover .cal-custom-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.cal-filter-popover .cal-custom-delete{position:absolute;right:2px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-tertiary);opacity:0;font-size:14px;cursor:pointer;padding:4px;border-radius:6px;transition:opacity .15s ease,color .15s ease,background .15s ease;line-height:1;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center}.cal-filter-popover .cal-custom-delete:before{content:"";position:absolute;inset:-9px}.cal-filter-popover .cal-filter-managed:hover .cal-custom-delete{opacity:.5}.cal-filter-popover .cal-custom-delete:hover{opacity:1;color:var(--color-error);background:#ef444414}.cal-filter-popover .cal-custom-edit{position:absolute;right:26px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-tertiary);opacity:0;cursor:pointer;padding:4px;border-radius:6px;transition:opacity .15s ease,color .15s ease,background .15s ease;line-height:1;width:26px;height:26px;display:flex;align-items:center;justify-content:center}.cal-filter-popover .cal-custom-edit:before{content:"";position:absolute;inset:-9px}.cal-filter-popover .cal-filter-managed:hover .cal-custom-edit{opacity:.5}.cal-filter-popover .cal-custom-edit:hover{opacity:1;color:var(--color-text-primary);background:#0000000a}.cal-edit-color-panel{padding:8px 0 4px 28px;animation:cal-edit-panel-in .2s cubic-bezier(.16,1,.3,1)}@keyframes cal-edit-panel-in{0%{opacity:0;max-height:0}to{opacity:1;max-height:60px}}.cal-edit-color-swatches{display:flex;flex-wrap:wrap;gap:6px}.cal-edit-swatch{width:22px;height:22px;min-width:22px;min-height:22px;border-radius:50%;cursor:pointer;border:2px solid transparent;padding:0;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;outline:none;position:relative}.cal-edit-swatch:before{content:"";position:absolute;inset:-11px}.cal-edit-swatch:hover{transform:scale(1.25)}.cal-edit-swatch:focus-visible{box-shadow:none}.cal-edit-swatch.selected{border-color:#fff;outline:2px solid currentColor;outline-offset:1px;transform:scale(1.1)}[data-theme=dark] .cal-filter-popover .cal-custom-edit:hover{color:var(--color-text-primary);background:rgba(var(--cal-accent-rgb, 74, 122, 104),.12)}[data-theme=dark] .cal-edit-swatch.selected{border-color:#fff9}.cal-filter-popover .cal-add-cat-btn{display:flex;align-items:center;gap:6px;width:100%;background:none;border:.5px dashed rgba(0,0,0,.08);border-radius:var(--radius-md);padding:10px 12px;min-height:44px;margin-top:6px;font-size:13px;font-weight:500;color:var(--color-text-tertiary);cursor:pointer;transition:all .15s ease;font-family:var(--font-family)}.cal-filter-popover .cal-add-cat-btn:hover{border-color:var(--color-text-primary);color:var(--color-text-primary);background:#0000000a}.cal-filter-popover .cal-add-cat-btn svg{flex-shrink:0}.cal-filter-popover .cal-add-cat-form{margin-top:6px;padding:10px 0 0;background:transparent;border-radius:0;border:none;border-top:.5px solid rgba(0,0,0,.08)}.cal-filter-popover .cal-add-cat-input{width:100%;padding:10px 12px;min-height:44px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-bg);outline:none;margin-bottom:10px;transition:border-color .15s ease,background .15s ease;box-sizing:border-box}.cal-filter-popover .cal-add-cat-input:focus-visible{border-color:#00000026;background:#00000004;outline:none}.cal-filter-popover .cal-color-swatches{display:grid;grid-template-columns:repeat(7,1fr);gap:9px;margin-bottom:12px;justify-items:center}.cal-filter-popover .cal-color-swatch{appearance:none;-webkit-appearance:none;width:30px;height:30px;padding:0;border-radius:50%;cursor:pointer;border:2px solid transparent;background-clip:padding-box;transition:transform .12s ease,border-color .12s ease;box-shadow:none;outline:2px solid transparent;outline-offset:1px;position:relative}.cal-filter-popover .cal-color-swatch:before{content:"";position:absolute;inset:-7px}.cal-filter-popover .cal-color-swatch:hover{transform:scale(1.15)}.cal-filter-popover .cal-color-swatch:focus-visible{outline-color:var(--bb-sage-dark, #4A7A68);outline-offset:2px}.cal-filter-popover .cal-color-swatch.selected{border-color:#fff;outline-color:currentColor;transform:scale(1.1);box-shadow:none}.cal-filter-popover .cal-color-swatch--custom{background:conic-gradient(from 90deg,#e2727f,#d4a060,#b8b070,#5a9e96,#5b8def,#b06ab3,#e2727f);overflow:hidden}.cal-filter-popover .cal-color-swatch--custom .cal-color-swatch__input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:none;opacity:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.cal-filter-popover .cal-color-swatch{transition:none}.cal-filter-popover .cal-color-swatch:hover,.cal-filter-popover .cal-color-swatch.selected{transform:none}}.cal-filter-popover .cal-add-cat-actions{display:flex;gap:8px}.cal-filter-popover .cal-add-cat-actions .btn{padding:10px 20px;min-height:44px;font-size:13px;font-weight:600;border-radius:var(--radius-md);font-family:var(--font-family);cursor:pointer;transition:all .15s ease;border:none;line-height:1.4}.cal-filter-popover .cal-add-cat-actions .btn-primary{background:var(--bb-sage, #6E8A7E);color:#fff}.cal-filter-popover .cal-add-cat-actions .btn-primary:hover{background:var(--bb-sage-dark, #4A7A68);box-shadow:0 2px 6px #6e8a7e40}.cal-filter-popover .cal-add-cat-actions .btn-primary:disabled,.cal-filter-popover .cal-add-cat-actions .btn-primary[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}.cal-filter-popover .cal-add-cat-actions .btn-secondary{background:var(--color-bg);color:var(--color-text-tertiary);border:.5px solid rgba(0,0,0,.08)}.cal-filter-popover .cal-add-cat-actions .btn-secondary:hover{background:var(--color-card);color:var(--color-text-primary);border-color:#00000026}[data-theme=dark] .cal-filter-popover .cal-add-cat-input:focus-visible{border-color:#fff3;background:#ffffff14}[data-theme=dark] .cal-filter-popover .cal-color-swatch.selected{border-color:var(--color-bg)}.fc-filterCats-button.fc-button{background:transparent!important;border:.5px solid rgba(0,0,0,.08)!important;color:var(--color-text-primary);font-size:13px!important;font-weight:500!important;height:36px!important;min-height:36px!important;padding:0 12px!important;border-radius:8px!important;font-family:var(--font-family)!important;line-height:34px!important}.fc-filterCats-button.fc-button:hover{background:#00000008!important;border-color:#00000026}.fc-viewDropdown-button.fc-button{background:transparent!important;border:.5px solid rgba(0,0,0,.08)!important;color:var(--color-text-primary);font-size:13px!important;font-weight:500!important;height:36px!important;min-height:36px!important;padding:0 12px!important;border-radius:8px!important;cursor:pointer;transition:all .15s ease;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-family:var(--font-family)!important;line-height:34px!important}.fc-viewDropdown-button.fc-button:hover{background:#00000008!important;border-color:#00000026;color:var(--color-text-primary)}.fc-viewDropdown-button.fc-button:focus-visible,.fc-viewDropdown-button.fc-button:active,.fc-viewDropdown-button.fc-button.fc-button-active{outline:none!important;box-shadow:none!important;background:#00000008!important;border-color:#00000014}.fc-viewDropdown-button.fc-button:focus-visible{outline:none!important;outline-offset:2px!important}.cal-view-dropdown-menu{background:var(--color-bg-primary, #fff);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-popup);padding:4px;min-width:160px;z-index:9999}.cal-view-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;min-height:44px;background:none;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-primary);transition:background .12s;font-family:inherit}.cal-view-dropdown-item:hover{background:var(--color-bg)}.cal-view-dropdown-item.active{background:var(--color-bg);color:#131313;font-weight:600}.cal-view-dropdown-shortcut{font-size:var(--font-size-xs);color:#73716c;background:#0000000a;padding:2px 6px;border-radius:6px;font-family:system-ui,sans-serif;font-weight:500;line-height:1}.cal-view-dropdown-item.active .cal-view-dropdown-shortcut{color:#3c3c3a;background:#00000012}[data-theme=dark] .fc-viewDropdown-button.fc-button{border-color:#ffffff26;color:var(--color-text-primary)}[data-theme=dark] .cal-view-dropdown-menu{background:var(--color-card);border-color:#ffffff1a;box-shadow:0 8px 24px #0006}.cal-view-dropdown-item[data-view=listWeek]{margin-top:4px;padding-top:10px;border-top:.5px solid rgba(0,0,0,.08)}[data-theme=dark] .cal-view-dropdown-item[data-view=listWeek]{border-top-color:#ffffff14}.fc-list-empty-cushion{font-family:var(--font-family);font-size:14px;color:var(--color-text-secondary, rgb(60, 60, 58));padding:40px 20px;text-align:center}[data-theme=dark] .fc-list-empty-cushion{color:#ffffff80}#cal-builtin-cats:not(:empty){padding-bottom:4px;margin-bottom:2px}.cal-event-popup{position:fixed;z-index:200;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md, 8px);padding:16px 18px;box-shadow:var(--shadow-popup);min-width:220px;max-width:min(380px,calc(100vw - 24px));pointer-events:auto;animation:cal-popup-in .15s ease;font-family:var(--font-family)}@keyframes cal-popup-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cal-event-popup-arrow{position:absolute;width:10px;height:10px;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);transform:rotate(45deg)}.cal-event-popup-arrow--top{bottom:-6px;border-top:none;border-left:none}.cal-event-popup-arrow--bottom{top:-6px;border-bottom:none;border-right:none}.cal-event-popup-title{font-size:15px;font-weight:650;color:var(--color-text-primary);margin:0 0 8px;line-height:1.5;word-break:break-word}.cal-event-popup-meta{display:flex;flex-direction:column;gap:5px;font-size:14px;color:var(--color-text-secondary, rgb(60, 60, 58));line-height:1.5}.cal-event-popup-row{display:flex;align-items:center;gap:8px;line-height:1.5}.cal-event-popup-row svg{flex-shrink:0;opacity:.6}.cal-event-popup-badge{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:100px;line-height:1.5}.cal-event-popup-desc{margin-top:8px;padding-top:8px;border-top:.5px solid rgba(0,0,0,.08);font-size:13px;color:var(--color-text-secondary, rgb(60, 60, 58));line-height:1.5;word-break:break-word}.cal-event-popup-time{font-size:15px;font-weight:650;color:var(--color-text-primary);margin:-2px 0 6px;line-height:1.5}.cal-popup-week-count{display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--color-text-secondary, rgb(60, 60, 58));line-height:1.4;padding:2px 0}.cal-popup-week-dots{display:flex;align-items:center;gap:3px}.cal-popup-week-dot{width:6px;height:6px;border-radius:50%;background:#00000014;opacity:0;transform:scale(.4);animation:cal-popup-dot-in .2s ease forwards;animation-delay:calc(.06s + var(--dot-i, 0) * .05s)}.cal-popup-week-dot--filled{background:var(--dot-color, var(--color-text-primary))}.cal-popup-week-dot--active{width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in srgb,var(--dot-color, var(--color-text-primary)) 18%,transparent)}@keyframes cal-popup-dot-in{to{opacity:1;transform:scale(1)}}.cal-popup-week-label{opacity:0;animation:cal-popup-label-in .2s ease .12s forwards}@keyframes cal-popup-label-in{to{opacity:1}}[data-theme=dark] .cal-popup-week-dot{background:#ffffff1f}[data-theme=dark] .cal-popup-week-dot--filled{background:var(--dot-color, var(--color-text-primary))}.cal-popup-cat-btn{display:inline-flex;align-items:center;transition:opacity .15s ease}.cal-popup-cat-btn:hover{opacity:.8}.cal-popup-cat-picker{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-top:.5px solid rgba(0,0,0,.08);margin-top:4px;animation:cal-popup-in .12s ease}.cal-popup-cat-option{display:flex;align-items:center;gap:8px;padding:6px 8px;border:none;background:none;border-radius:6px;cursor:pointer;font-family:var(--font-family);font-size:13px;font-weight:500;color:var(--color-text-primary, rgb(19, 19, 19));transition:background .12s ease;width:100%;text-align:left}.cal-popup-cat-option:hover{background:#0000000a}.cal-popup-cat-option.active{font-weight:600}.cal-popup-cat-option svg{margin-left:auto;flex-shrink:0;color:var(--color-text-primary)}.cal-popup-cat-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.cal-popup-cat-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .cal-popup-cat-picker{border-top-color:#ffffff14}[data-theme=dark] .cal-popup-cat-option{color:#ffffffd9}[data-theme=dark] .cal-popup-cat-option:hover{background:#ffffff0f}.cal-context-menu{position:fixed;z-index:300;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-popup);min-width:180px;padding:4px 0;opacity:0;transform:scale(.95);pointer-events:none;transition:opacity .12s ease,transform .12s ease;font-family:var(--font-family);overflow:hidden}.cal-context-menu.visible{opacity:1;transform:scale(1);pointer-events:auto}.cal-ctx-item{display:flex;align-items:center;gap:10px;padding:10px 14px;min-height:44px;font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:background .1s ease;border:none;background:none;width:100%;text-align:left;font-family:inherit}.cal-ctx-item:hover{background:#0000000a}.cal-ctx-item:active{transform:scale(.98);transition:transform .1s ease}.cal-ctx-item svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cal-ctx-item--danger{color:var(--color-error)}.cal-ctx-item--danger:hover{background:var(--color-error-light)}.cal-ctx-divider{height:.5px;background:#0000000f;margin:4px 0}[data-theme=dark] .cal-context-menu{background:var(--color-card);border-color:#ffffff14;box-shadow:var(--shadow-popup)}.cal-confirm-overlay{position:fixed;inset:0;z-index:9100;display:flex;align-items:center;justify-content:center;background:#0000;transition:background .18s ease;padding:16px}.cal-confirm-overlay.active{background:#0003}.cal-confirm-card{background:var(--color-card);border-radius:12px;padding:28px 28px 20px;max-width:340px;width:100%;text-align:center;box-shadow:0 12px 40px #0000001f,0 2px 8px #0000000f;transform:scale(.92) translateY(8px);opacity:0;transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .18s ease}.cal-confirm-overlay.active .cal-confirm-card{transform:scale(1) translateY(0);opacity:1}.cal-confirm-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--color-error-light);color:var(--color-error);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}.cal-confirm-title{font-family:var(--font-family);font-size:16px;font-weight:650;color:var(--color-text-primary, rgb(19, 19, 19));margin:0 0 6px;line-height:1.3}.cal-confirm-msg{font-family:var(--font-family);font-size:13.5px;font-weight:400;color:var(--color-text-secondary, rgb(60, 60, 58));margin:0 0 22px;line-height:1.5}.cal-confirm-actions{display:flex;gap:10px}.cal-confirm-cancel,.cal-confirm-delete{flex:1;padding:10px 16px;border-radius:var(--radius-md);font-family:var(--font-family);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:background .15s ease,transform .1s ease;min-height:44px}.cal-confirm-cancel{background:var(--color-bg);color:var(--color-text-primary, rgb(19, 19, 19))}.cal-confirm-cancel:hover{background:#00000014}.cal-confirm-cancel:active{transform:scale(.97)}.cal-confirm-delete{background:var(--color-error);color:#fff}.cal-confirm-delete:hover{background:var(--color-error-hover)}.cal-confirm-delete:active{transform:scale(.97)}[data-theme=dark] .cal-confirm-card{background:var(--color-card);box-shadow:0 12px 40px #00000026,0 2px 8px #0003}[data-theme=dark] .cal-confirm-icon{background:var(--color-error-light)}.cal-preview-overlay{position:fixed;inset:0;z-index:9100;display:flex;align-items:center;justify-content:center;background:#0000;transition:background .18s ease;padding:16px}.cal-preview-overlay.active{background:#0003}.cal-preview-card{background:var(--color-card);border-radius:12px;padding:28px 28px 20px;max-width:360px;width:100%;text-align:center;box-shadow:var(--shadow-modal);transform:scale(.92) translateY(8px);opacity:0;transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .18s ease}.cal-preview-overlay.active .cal-preview-card{transform:scale(1) translateY(0);opacity:1}.cal-preview-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:rgba(var(--cal-accent-rgb),.12);color:var(--cal-accent);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}.cal-preview-title{font-family:var(--font-family);font-size:16px;font-weight:650;color:var(--color-text-primary, rgb(19, 19, 19));margin:0 0 16px;line-height:1.3}.cal-preview-fields{text-align:left;margin:0 0 12px}.cal-preview-field{display:flex;gap:8px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.05);font-family:var(--font-family);font-size:13.5px;line-height:1.5}.cal-preview-field:last-child{border-bottom:none}.cal-preview-label{flex-shrink:0;min-width:60px;font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58))}.cal-preview-value{color:var(--color-text-primary, rgb(19, 19, 19));word-break:break-word}.cal-preview-hint{font-family:var(--font-family);font-size:12.5px;font-weight:400;color:var(--color-text-secondary, rgb(60, 60, 58));margin:0 0 18px;line-height:1.4}.cal-preview-actions{display:flex;gap:10px}.cal-preview-cancel,.cal-preview-confirm{flex:1;padding:10px 16px;border-radius:var(--radius-md);font-family:var(--font-family);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:background .15s ease,transform .1s ease;min-height:44px}.cal-preview-cancel{background:var(--color-bg);color:var(--color-text-primary, rgb(19, 19, 19))}.cal-preview-cancel:hover{background:#00000014}.cal-preview-cancel:active{transform:scale(.97)}.cal-preview-confirm{background:var(--cal-accent);color:#fff}.cal-preview-confirm:hover{background:var(--cal-accent-hover)}.cal-preview-confirm:active{transform:scale(.97)}.cal-preview-cancel:focus-visible,.cal-preview-confirm:focus-visible{outline:2px solid var(--cal-accent);outline-offset:2px}[data-theme=dark] .cal-preview-overlay.active{background:#00000073}[data-theme=dark] .cal-preview-card{background:var(--color-card);box-shadow:0 12px 40px #00000026,0 2px 8px #0003}[data-theme=dark] .cal-preview-icon{background:rgba(var(--cal-accent-rgb),.18)}[data-theme=dark] .cal-preview-title{color:#ffffffeb}[data-theme=dark] .cal-preview-field{border-bottom-color:#ffffff0f}[data-theme=dark] .cal-preview-label{color:#ffffff8c}[data-theme=dark] .cal-preview-value{color:#ffffffeb}[data-theme=dark] .cal-preview-hint{color:#ffffff73}[data-theme=dark] .cal-preview-cancel{background:#ffffff14;color:#ffffffd9}[data-theme=dark] .cal-preview-cancel:hover{background:#ffffff1f}@media(max-width:600px){.cal-preview-card{max-width:none;padding:24px 20px 16px;border-radius:16px 16px 0 0}.cal-preview-overlay{align-items:flex-end;padding:0}}.cal-quick-add{position:fixed;inset:0;z-index:9050;display:none;background:transparent}.cal-quick-add.active{display:block}.cal-quick-add-card{position:fixed;width:300px;background:var(--color-card);border-radius:12px;box-shadow:0 8px 32px #0000001f,0 1px 3px #0000000f;border:.5px solid rgba(0,0,0,.08);padding:0;overflow:hidden;animation:qaSlideIn .18s cubic-bezier(.22,1,.36,1);font-family:var(--font-family)}@keyframes qaSlideIn{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cal-quick-add-date{padding:14px 18px 0;font-size:12px;font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));letter-spacing:.02em}.cal-quick-add-input{display:block;width:100%;border:none;outline:none;padding:10px 18px 6px;font-size:15px;font-weight:600;color:var(--color-text-primary, rgb(19, 19, 19));background:transparent;font-family:inherit;caret-color:var(--color-text-primary)}.cal-quick-add-input:focus-visible{outline:none}.cal-quick-add-input::placeholder{color:var(--color-text-tertiary);font-weight:400}.cal-quick-add-hint{display:none}.cal-quick-add-actions{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-top:.5px solid rgba(0,0,0,.05);background:var(--color-bg)}.cal-quick-add-details{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--color-text-secondary, rgb(60, 60, 58));font-size:12.5px;font-weight:500;cursor:pointer;padding:6px 10px;height:34px;border-radius:var(--radius-md);transition:background .12s ease,color .12s ease;font-family:inherit}.cal-quick-add-details:hover{background:#0000000a;color:var(--color-text-primary, rgb(19, 19, 19))}.cal-quick-add-details svg{opacity:.6}.cal-quick-add-save{background:var(--color-text-primary);color:#fff;border:none;padding:6px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:background .12s ease,transform .1s ease;font-family:inherit;height:34px;line-height:1}.cal-quick-add-save:hover{background:#323230}.cal-quick-add-save:active{transform:scale(.97)}.cal-quick-add-right{display:flex;align-items:center;gap:6px}.cal-qa-mic{width:34px;height:34px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--color-text-secondary, rgb(60, 60, 58));cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.cal-qa-mic:hover{background:#0000000a;color:var(--color-text-primary, rgb(19, 19, 19))}[data-theme=dark] .cal-qa-mic{color:#ffffff80}[data-theme=dark] .cal-qa-mic:hover{background:#ffffff0f;color:#ffffffd9}[data-theme=dark] .cal-quick-add-card{background:var(--color-card);border-color:#ffffff14;box-shadow:0 8px 32px #0006,0 1px 3px #0003}.cal-undo-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(16px);background:#ffffffd1;backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);color:var(--color-text-primary, rgb(19, 19, 19));padding:6px 6px 6px 20px;border-radius:100px;border:.5px solid rgba(0,0,0,.08);display:flex;align-items:center;gap:12px;box-shadow:0 4px 6px -1px #00000012,0 12px 24px -4px #0000001f,0 0 0 1px #00000008;z-index:200;opacity:0;transition:transform .35s cubic-bezier(.32,.72,0,1),opacity .25s ease;pointer-events:none;font-family:var(--font-family);font-size:14px;font-weight:600}.cal-undo-toast.active{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.cal-undo-toast-msg{flex:1}.cal-undo-toast-btn{background:transparent;color:var(--color-text-primary);border:none;border-radius:100px;padding:4px 12px;min-height:44px;font-weight:650;font-size:13px;cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .15s ease}.cal-undo-toast-btn:hover{background:#80808017}.cal-undo-toast-btn:active{background:#80808024}.cal-undo-toast-btn:focus-visible{outline:none;outline-offset:2px}.cal-undo-toast-dismiss{background:none;border:none;color:var(--color-text-secondary, rgb(60, 60, 58));font-size:1.1rem;line-height:1;cursor:pointer;padding:10px;border-radius:100px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.cal-undo-toast-dismiss:hover{background:#80808017;color:var(--color-text-primary, rgb(19, 19, 19))}.cal-undo-toast-dismiss:focus-visible{outline:none;outline-offset:2px}@media(max-width:767px){.cal-undo-toast{bottom:calc(var(--mn-bar-height, 60px) + 80px);left:12px;right:12px;transform:translate(0) translateY(16px);width:auto;padding:5px 5px 5px 16px;border-radius:var(--radius-lg, 12px)}.cal-undo-toast.active{transform:translate(0) translateY(0)}}.cal-recurrence-progress{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(16px);background:#ffffffd1;backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);color:var(--color-text-primary, rgb(19, 19, 19));padding:10px 24px;border-radius:100px;border:.5px solid rgba(0,0,0,.08);box-shadow:0 4px 6px -1px #00000012,0 12px 24px -4px #0000001f;font-size:14px;font-weight:500;display:flex;align-items:center;gap:10px;z-index:200;opacity:0;pointer-events:none;transition:transform .35s cubic-bezier(.32,.72,0,1),opacity .25s ease}.cal-recurrence-progress.active{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.cal-recurrence-spinner{width:16px;height:16px;border:2px solid rgba(0,0,0,.08);border-top-color:var(--cal-accent, #4A7A68);border-radius:50%;animation:cal-spin .6s linear infinite}@keyframes cal-spin{to{transform:rotate(360deg)}}[data-theme=dark] .cal-recurrence-progress{background:#1a2035c7;color:var(--color-text-primary);border-color:#ffffff1a;box-shadow:0 4px 6px -1px #0003,0 12px 24px -4px #0000004d}[data-theme=dark] .cal-recurrence-spinner{border-color:#ffffff1a;border-top-color:var(--cal-accent, #4A7A68)}@media(max-width:768px),(pointer:coarse){.cal-filter-popover .cal-custom-delete,.cal-filter-popover .cal-custom-edit{opacity:.5}}@media(prefers-reduced-motion:reduce){.cal-popover *,.cal-edit-panel *,.cal-popup *,.cal-quick-add-card *,.cal-confirm-card *,.cal-preview-card *{animation:none!important;transition:none!important}}@media(hover:none){.cal-body .fc-event:hover,.cal-body .fc-timegrid-event:hover{transform:none;box-shadow:none}.cal-body .fc-daygrid-day:hover{background:transparent}}.cal-loading-overlay{position:absolute;inset:0;background:var(--color-card);z-index:10;border-radius:var(--radius-md);opacity:0;pointer-events:none;transition:opacity .35s ease}.cal-loading-overlay.active{opacity:1;pointer-events:auto}.cal-skeleton{display:flex;flex-direction:column;height:100%;padding:16px 20px;gap:16px}.cal-skeleton-toolbar{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:.5px solid rgba(0,0,0,.08)}.cal-skeleton-pill{border-radius:6px;background:linear-gradient(90deg,#0000000f 25%,#0000001a,#0000000f 75%);background-size:200% 100%;height:14px}.cal-loading-overlay.active .cal-skeleton-pill{animation:cal-skeleton-shimmer 1.4s ease infinite}@keyframes cal-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cal-skeleton-grid{flex:1;display:flex;flex-direction:column;gap:0}.cal-skeleton-header{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:8px 0 10px;border-bottom:.5px solid rgba(0,0,0,.08)}.cal-skeleton-header .cal-skeleton-pill{justify-self:center}.cal-skeleton-rows{flex:1;display:flex;flex-direction:column}.cal-skeleton-row{display:grid;grid-template-columns:repeat(7,1fr);flex:1;gap:0}.cal-skeleton-cell{border-right:.5px solid rgba(0,0,0,.08);border-bottom:.5px solid rgba(0,0,0,.08);padding:6px 4px;min-height:0}.cal-skeleton-cell:nth-child(7){border-right:none}.cal-skeleton-row:last-child .cal-skeleton-cell{border-bottom:none}.cal-skeleton-event{height:8px;border-radius:6px;margin-top:4px;background-size:200% 100%}.cal-loading-overlay.active .cal-skeleton-event{animation:cal-skeleton-shimmer 1.4s ease infinite;animation-delay:calc(var(--i, 0) * .15s)}.cal-skeleton-row:nth-child(1) .cal-skeleton-event{--i: 0}.cal-skeleton-row:nth-child(2) .cal-skeleton-event{--i: 1}.cal-skeleton-row:nth-child(3) .cal-skeleton-event{--i: 2}.cal-skeleton-row:nth-child(4) .cal-skeleton-event{--i: 3}.cal-skeleton-row:nth-child(5) .cal-skeleton-event{--i: 4}[data-theme=dark] .cal-loading-overlay{background:var(--color-card)}[data-theme=dark] .cal-skeleton-cell{border-color:#00000014}[data-theme=dark] .cal-skeleton-toolbar,[data-theme=dark] .cal-skeleton-header{border-bottom-color:#00000014}.cal-empty-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:5;opacity:0;pointer-events:none;transition:opacity .3s ease;padding:40px;text-align:center}.cal-empty-state.active{opacity:1;pointer-events:auto}.cal-empty-icon{font-size:44px;line-height:1;opacity:.6}.cal-empty-title{font-size:17px;font-weight:600;color:var(--color-text-primary);margin:0}.cal-empty-text{font-size:var(--font-size-sm);color:var(--color-text-tertiary);max-width:300px;margin:0;line-height:1.5}.cal-empty-btn{margin-top:8px;padding:10px 24px;min-height:44px;font-size:14px;font-weight:600;background:var(--color-text-primary);color:#fff;border:none;border-radius:var(--radius-md, 8px);cursor:pointer;font-family:var(--font-family);transition:background .15s ease,transform .1s ease}.cal-empty-btn:hover{opacity:.9}.cal-empty-btn:active{transform:scale(.97)}[data-theme=dark] .cal-empty-btn{background:var(--cal-accent);color:#fff}@keyframes nl-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes nl-card-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@keyframes nl-hint-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes nl-mic-pulse{0%,to{filter:drop-shadow(0 0 3px rgba(34,197,94,.4))}50%{filter:drop-shadow(0 0 6px rgba(34,197,94,.6))}}@keyframes nl-mic-spin{to{transform:rotate(360deg)}}@keyframes nl-shimmer-pulse{50%{transform:scale(1.15);opacity:1}}@keyframes nl-shimmer-ring{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.3);opacity:0}}@keyframes nl-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes nl-toast-enter{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes nl-toast-exit{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,12px)}}.nl-bar{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:100;width:min(680px,calc(100% - 48px));padding:0}.nl-bar-label{text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary);opacity:.45;margin-top:5px;letter-spacing:.3px;pointer-events:none}.nl-bar-inner{position:relative;display:flex;align-items:center;background:#ffffffeb;border:.5px solid rgba(0,0,0,.08);border-radius:12px;padding:6px 16px;box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000a;transition:border-color .2s,box-shadow .2s;backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6)}.nl-bar-inner:focus-within{box-shadow:none}.nl-bar-icon{flex-shrink:0;color:#131313;opacity:.5;margin-right:12px;width:20px;height:20px;transition:opacity .2s,transform .2s}.nl-bar-inner:focus-within .nl-bar-icon{opacity:.85;transform:scale(1.02)}@keyframes nl-breathe-1{0%,to{transform:translate(0) scale(1);opacity:.45}50%{transform:translate(.6px,-.8px) scale(1.35);opacity:.9}}@keyframes nl-breathe-2{0%,to{transform:translate(0) scale(1);opacity:.35}50%{transform:translate(-.7px,.5px) scale(1.45);opacity:.85}}@keyframes nl-breathe-3{0%,to{transform:translate(0) scale(1);opacity:.3}50%{transform:translate(.5px,.7px) scale(1.5);opacity:.8}}.nl-star{will-change:transform,opacity}.nl-star-1{animation:nl-breathe-1 2.4s ease infinite}.nl-star-2{animation:nl-breathe-2 3.1s ease infinite}.nl-star-3{animation:nl-breathe-3 4.7s ease infinite}.nl-bar-inner:focus-within .nl-star-1{animation-duration:1.2s}.nl-bar-inner:focus-within .nl-star-2{animation-duration:1.5s}.nl-bar-inner:focus-within .nl-star-3{animation-duration:1.8s}@media(prefers-reduced-motion:reduce){.nl-star{animation:none!important;opacity:.5}}.nl-bar-input{flex:1;border:none;background:transparent;font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--color-text-primary);padding:12px 0;outline:none;min-width:0;letter-spacing:-.1px}.nl-bar-input::placeholder{color:var(--color-text-secondary);opacity:.55;transition:opacity .3s}.nl-bar-input:focus-visible::placeholder{opacity:.3}.nl-bar-input:focus-visible{outline:none}.nl-hint-tag{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-size-xs);font-weight:600;padding:2px 8px 2px 6px;border-radius:6px;border-left:2px solid transparent;white-space:nowrap;animation:nl-hint-in .2s ease;letter-spacing:.01em}.nl-hint-tag:before{content:"";display:block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.nl-hint-date{color:#131313;background:#00000012;border-left-color:#13131366}.nl-hint-date:before{background:#131313}.nl-hint-time{color:var(--color-accent);background:#079aa214;border-left-color:#079aa266}.nl-hint-time:before{background:var(--color-accent)}.nl-hint-recurrence{color:#7c3aed;background:#7c3aed14;border-left-color:#7c3aed66}.nl-hint-recurrence:before{background:#7c3aed}.nl-hint-deadline{color:var(--color-error, #ff3e1d);background:#ff3e1d14;border-left-color:#ff3e1d66}.nl-hint-deadline:before{background:var(--color-error, #ff3e1d)}[data-theme=dark] .nl-hint-date{background:rgba(var(--cal-accent-rgb),.14);border-left-color:#13131380}[data-theme=dark] .nl-hint-time{color:#0db8c1;background:#079aa224;border-left-color:#079aa280}[data-theme=dark] .nl-hint-recurrence{color:#a78bfa;background:#7c3aed24;border-left-color:#7c3aed80}[data-theme=dark] .nl-hint-deadline{color:#ff6b52;background:#ff3e1d24;border-left-color:#ff3e1d80}.nl-bar-submit{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:#131313;color:#fff;cursor:pointer;opacity:.25;transition:opacity .2s,transform .12s,background .2s;margin-left:10px}.nl-bar-submit.active{opacity:1}.nl-bar-submit.active:hover{background:#323230;transform:scale(1.02)}.nl-bar-submit:active{transform:scale(.94)}.nl-bar-mic{width:38px;height:38px;border-radius:10px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:2px;transition:color .15s,background .15s}.nl-bar-mic:hover{background:#0000000a;color:var(--color-text-primary)}.nl-bar-mic.nl-mic--connecting{pointer-events:none;position:relative}.nl-bar-mic.nl-mic--connecting svg{opacity:.3}.nl-bar-mic.nl-mic--connecting:after{content:"";position:absolute;width:18px;height:18px;top:50%;left:50%;margin-top:-9px;margin-left:-9px;border:2px solid rgba(0,0,0,.08);border-top-color:var(--cal-accent);border-radius:50%;animation:nl-mic-spin .8s linear infinite}.nl-bar-mic.nl-mic--listening{color:var(--color-success);background:transparent}.nl-bar-mic.nl-mic--listening svg{stroke:var(--color-success);filter:drop-shadow(0 0 4px rgba(34,197,94,.5));animation:nl-mic-pulse 2s ease infinite}.nl-bar-mic.nl-mic--error{color:var(--color-error);animation:nl-mic-shake .3s ease}@keyframes nl-mic-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.nl-bar-shortcut{position:absolute;right:56px;top:50%;transform:translateY(-50%);font-size:var(--font-size-xs);color:var(--color-text-secondary);opacity:.4;pointer-events:none;font-family:monospace;background:var(--color-bg);padding:1px 6px;border-radius:6px;border:.5px solid rgba(0,0,0,.08)}.nl-bar-inner:focus-within .nl-bar-shortcut{display:none}.nl-result,.nl-clarify,.nl-answer,.nl-query-results,.nl-modify-confirm,.nl-delete-confirm,.nl-slot-suggestions,.nl-study-plan{margin-bottom:8px;background:var(--color-card);border:.5px solid rgba(0,0,0,.08);border-left:3px solid rgb(19,19,19);border-radius:var(--radius-md);padding:14px 16px;box-shadow:0 2px 12px #0000000f;animation:nl-card-enter .2s cubic-bezier(.16,1,.3,1)}.nl-card-enter{animation:nl-card-enter .2s cubic-bezier(.16,1,.3,1) both}.nl-card-exit{animation:nl-card-exit .15s ease both;pointer-events:none}.nl-result{border-left-color:#131313}.nl-result-title{font-size:15px;font-weight:650;color:var(--color-text-primary);margin:0 0 8px;line-height:1.35}.nl-result-body{display:flex;flex-wrap:wrap;gap:6px 20px;margin-bottom:12px}.nl-result-row{display:flex;align-items:center;gap:6px}.nl-result-label{font-size:var(--font-size-xs);font-weight:650;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.nl-result-value{font-size:13.5px;font-weight:500;color:var(--color-text-primary)}.nl-result-actions{display:flex;align-items:center;gap:8px}.nl-result-actions .btn{border-radius:8px;font-size:13px;font-weight:600;padding:7px 18px;transition:all var(--transition);cursor:pointer}.nl-result-actions .btn-primary{background:#131313;border:.5px solid rgb(19,19,19);color:#fff}.nl-result-actions .btn-primary:hover{background:#323230;border-color:#323230;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.nl-result-actions .btn-primary:active{transform:translateY(0) scale(.98);box-shadow:none}.nl-result-actions .btn-ghost,.nl-result-actions .btn-outline-secondary{background:transparent;border:.5px solid rgba(0,0,0,.08);color:var(--color-text-secondary)}.nl-result-actions .btn-ghost:hover,.nl-result-actions .btn-outline-secondary:hover{border-color:var(--color-text-secondary);color:var(--color-text-primary);background:var(--color-bg)}.nl-result-actions .btn-ghost:active,.nl-result-actions .btn-outline-secondary:active{transform:scale(.98)}.nl-result-dismiss{margin-left:auto;background:none;border:none;font-size:18px;color:var(--color-text-secondary);cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1;transition:color .12s,background .12s}.nl-result-dismiss:hover{color:var(--color-text-primary);background:#0000000a}.nl-priority-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:600;padding:2px 8px;border-radius:8px}.nl-priority-badge[data-priority="1"]{color:var(--color-warning);background:var(--color-warning-light)}.nl-priority-badge[data-priority="2"]{color:var(--color-warning);background:#f59e0b1a}.nl-priority-badge[data-priority="3"]{color:#131313;background:#00000014}.nl-priority-badge[data-priority="4"]{color:var(--color-text-secondary);background:#9ca3af1a}.nl-answer{border-left-color:#131313;position:relative;padding-right:36px}.nl-answer-text{font-size:14px;font-weight:400;color:var(--color-text-primary);line-height:1.6;margin:0}.nl-answer-dismiss{position:absolute;top:10px;right:10px;background:none;border:none;font-size:16px;color:var(--color-text-secondary);cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1;opacity:.5;transition:color .12s,opacity .12s,background .12s}.nl-answer-dismiss:hover{color:var(--color-text-primary);opacity:1;background:#0000000a}.nl-answer--dismissing{animation:nl-card-exit .3s ease both;pointer-events:none}.nl-clarify{border-left-color:#131313}.nl-clarify-question{font-size:14px;font-weight:500;color:var(--color-text-primary);margin:0 0 10px;line-height:1.5}.nl-clarify-suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.nl-clarify-chip{background:transparent;border:.5px solid rgba(0,0,0,.15);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:all .12s;color:#131313;user-select:none}.nl-clarify-chip:hover{border-color:#131313;color:#fff;background:#131313}.nl-clarify-chip:active{transform:scale(.95);background:#323230;border-color:#323230;color:#fff}.nl-clarify-input-row{display:flex;gap:8px}.nl-clarify-input{flex:1;border:.5px solid rgba(0,0,0,.08);border-radius:8px;padding:8px 12px;font-size:13px;font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-card);outline:none;transition:border-color .15s,box-shadow .15s}.nl-clarify-input:focus-visible{box-shadow:none;outline:none}.nl-clarify-input::placeholder{color:var(--color-text-secondary);opacity:.6}.nl-clarify-input-row .nl-bar-submit{margin-left:0}.nl-loading{margin-bottom:8px;display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;color:var(--color-text-secondary);border-radius:var(--radius-md);background:var(--color-bg);border:.5px solid rgba(0,0,0,.08);border-left:3px solid transparent;position:relative;animation:nl-card-enter .2s cubic-bezier(.16,1,.3,1)}.nl-loading:before{content:"";position:absolute;left:-3px;top:-1px;bottom:-1px;width:3px;border-radius:var(--radius-md) 0 0 var(--radius-md);background:linear-gradient(180deg,#0000001a,#00000026,#0000001a);background-size:100% 200%;animation:nl-accent-flow 2s ease infinite}@keyframes nl-accent-flow{0%,to{background-position:0% 0%}50%{background-position:0% 100%}}.nl-loading-dots{display:flex;gap:3px;align-items:center;flex-shrink:0}.nl-loading-dots span{width:6px;height:6px;border-radius:50%;background:#00000026;animation:nl-dot-wave 1.4s ease infinite}.nl-loading-dots span:nth-child(2){animation-delay:.16s}.nl-loading-dots span:nth-child(3){animation-delay:.32s}@keyframes nl-dot-wave{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}.nl-loading-text{flex:1;transition:opacity .14s ease}.nl-loading-elapsed{font-size:var(--font-size-xs);color:var(--color-text-tertiary, #9ca3af);margin-left:auto;font-variant-numeric:tabular-nums;opacity:0;animation:nl-card-enter .3s cubic-bezier(.16,1,.3,1) .1s forwards}@media(prefers-reduced-motion:reduce){.nl-loading-dots span{animation:nl-dot-fade 1.4s ease infinite}@keyframes nl-dot-fade{0%,to{opacity:.3}50%{opacity:.8}}.nl-loading:before{animation:none}}.nl-refine-mode::placeholder{color:var(--color-text-tertiary);font-style:normal;font-family:var(--font-family)}@keyframes refine-breathe{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}.nl-icon-refine-pulse{animation:refine-breathe 2.4s ease infinite}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.nl-plan-skeleton-overlay{padding:16px 14px 20px;display:flex;flex-direction:column;gap:12px}.nl-skeleton-row{height:14px;border-radius:6px;background:linear-gradient(90deg,#0000000a,#00000014,#0000000a);background-size:200px 100%;animation:skeleton-shimmer 1.6s ease infinite}.nl-plan-skeleton-dots{display:flex;justify-content:center;gap:6px;padding-top:8px}.nl-plan-skeleton-dots span{width:6px;height:6px;border-radius:50%;background:#00000026;animation:nl-dot-wave 1.4s ease infinite}.nl-plan-skeleton-dots span:nth-child(2){animation-delay:.15s}.nl-plan-skeleton-dots span:nth-child(3){animation-delay:.3s}.nl-card-plan--skeleton .nl-plan-header{border-bottom-color:#0000000a}[data-theme=dark] .nl-skeleton-row{background:linear-gradient(90deg,#ffffff0a,#ffffff14,#ffffff0a);background-size:200px 100%;animation:skeleton-shimmer 1.6s ease infinite}[data-theme=dark] .nl-plan-skeleton-dots span{background:#ffffff26}[data-theme=dark] .nl-loading{background:var(--sk-bg, #171512);border-color:#ffffff14;color:var(--color-text-tertiary)}[data-theme=dark] .nl-loading-dots span{background:#60a5fa80}[data-theme=dark] .nl-loading:before{background:linear-gradient(180deg,#60a5fa1a,#60a5fa80,#60a5fa1a);background-size:100% 200%}[data-theme=dark] .nl-loading-elapsed{color:var(--color-text-secondary)}.nl-shimmer{background:linear-gradient(90deg,#0000000a 25%,#00000012,#0000000a 75%);background-size:200% 100%;animation:nl-shimmer 1.5s ease infinite;border-radius:6px}.nl-error{margin-bottom:8px;padding:10px 16px;font-size:13px;color:var(--color-error);background:var(--color-error-light);border-radius:var(--radius-md);border:.5px solid rgba(185,28,28,.12);border-left:3px solid var(--color-error);animation:nl-card-enter .2s ease}.nl-undo-toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:12px;background:#ffffffd1;backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);color:var(--color-text-primary, rgb(19, 19, 19));font-size:13.5px;font-weight:500;padding:10px 20px;border-radius:100px;border:.5px solid rgba(0,0,0,.08);box-shadow:0 4px 6px -1px #00000012,0 12px 24px -4px #0000001f;animation:nl-toast-enter .25s cubic-bezier(.16,1,.3,1) both;white-space:nowrap}.nl-undo-toast-text{line-height:1.3}.nl-undo-toast-action{color:#131313;font-weight:650;text-decoration:none;cursor:pointer;background:transparent;border:none;font-size:inherit;font-family:inherit;padding:4px 12px;border-radius:100px;transition:background .15s ease}.nl-undo-toast-action:hover{background:#80808017}.nl-undo-toast--exiting{animation:nl-toast-exit .2s ease both;pointer-events:none}.nl-slot-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.nl-slot-title{font-size:13px;font-weight:600;color:var(--color-text-primary)}.nl-slot-dismiss{background:none;border:none;font-size:18px;color:var(--color-text-secondary);cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1;transition:color .12s}.nl-slot-dismiss:hover{color:var(--color-text-primary)}.nl-slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.nl-slot-card{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border:.5px solid rgba(0,0,0,.08);border-radius:8px;background:var(--color-bg);cursor:pointer;transition:all .12s;min-height:44px}.nl-slot-card:hover{border-color:#00000026;background:#00000014}.nl-slot-card:active{transform:scale(.97)}.nl-slot-card:focus-visible{outline:none;outline-offset:1px}.nl-slot-day{font-size:12px;font-weight:600;color:var(--color-text-primary);text-transform:capitalize}.nl-slot-time{font-size:12px;color:var(--color-text-secondary)}.nl-slot-score{font-size:var(--font-size-xs);font-weight:600;padding:1px 7px;border-radius:6px}.nl-slot-score--good{background:var(--color-success-light);color:var(--color-success)}.nl-slot-score--ok{background:var(--color-warning-light);color:var(--color-warning)}.nl-slot-score--low{background:var(--color-error-light);color:var(--color-error)}.nl-overlay-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.nl-overlay-title{font-size:13px;font-weight:600;color:var(--color-text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nl-overlay-count{font-size:var(--font-size-xs);font-weight:600;color:#131313;background:#00000014;padding:2px 8px;border-radius:6px;white-space:nowrap}.nl-overlay-dismiss{background:none;border:none;font-size:18px;color:var(--color-text-secondary);cursor:pointer;padding:2px 6px;border-radius:6px;line-height:1;flex-shrink:0;transition:color .12s}.nl-overlay-dismiss:hover{color:var(--color-text-primary)}.nl-overlay-empty{font-size:13px;color:var(--color-text-secondary);text-align:center;padding:14px 0}.nl-overlay-list{display:flex;flex-direction:column;gap:1px;max-height:260px;overflow-y:auto}.nl-overlay-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:6px;cursor:pointer;transition:background .1s}.nl-overlay-item:hover{background:#00000014}.nl-overlay-list--delete .nl-overlay-item{cursor:default}.nl-overlay-list--delete .nl-overlay-item:hover{background:var(--color-error-light)}.nl-overlay-item-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nl-overlay-item-title{flex:1;font-size:13px;font-weight:500;color:var(--color-text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nl-overlay-item-date{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0}.nl-overlay-more{font-size:12px;color:var(--color-text-secondary);text-align:center;padding:6px 0}.nl-overlay-changes{display:flex;flex-direction:column;gap:3px;margin-bottom:10px;padding:8px 10px;background:#00000014;border-radius:6px}.nl-overlay-change-row{font-size:13px;color:var(--color-text-primary);font-weight:500}.nl-overlay-picker{margin-bottom:10px}.nl-overlay-picker-label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:5px}.nl-overlay-picker-btn{display:block;width:100%;text-align:left;padding:6px 10px;border:.5px solid transparent;border-radius:6px;background:none;font-size:13px;font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:all .1s;margin-bottom:2px}.nl-overlay-picker-btn:hover{background:#00000014}.nl-overlay-picker-btn.active{border-color:#00000026;background:#00000014}.nl-overlay-actions{display:flex;gap:8px;justify-content:flex-end}.nl-overlay-actions .btn{min-height:34px;padding:5px 14px;font-size:13px;border-radius:8px}.nl-bar-quick-actions{display:flex;gap:6px;justify-content:center;margin-top:6px}.nl-quick-chip{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);background:#00000014;border:.5px solid rgba(0,0,0,.15);border-radius:20px;padding:3px 10px;cursor:pointer;transition:all .12s}.nl-quick-chip:hover{background:#00000014;border-color:#00000026;color:#131313}.nl-quick-chip:active{transform:scale(.96)}.nl-quick-chip svg{flex-shrink:0}@keyframes nlCardSlideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}60%{opacity:1;transform:translateY(-2px) scale(1.005)}80%{transform:translateY(1px) scale(1)}}.nl-card-multi{background:var(--sk-bg, #fff);border:.5px solid rgba(0,0,0,.08);border-radius:12px;padding:16px;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a;max-width:420px;width:100%;margin-bottom:12px;animation:nlCardSlideUp .2s ease}.nl-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;padding-bottom:12px;border-bottom:.5px solid rgba(0,0,0,.08);font-size:14px;font-weight:600;color:var(--sk-text, #1a1a1a)}.nl-card-header svg{width:18px;height:18px;color:#131313;flex-shrink:0}.nl-card-summary{flex:1;min-width:0}.nl-card-drag-handle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;color:var(--color-text-tertiary, #9ca3af);cursor:grab;flex-shrink:0;transition:background .12s,color .12s;-webkit-user-select:none;user-select:none}.nl-card-drag-handle:hover{background:#0000000f;color:var(--color-text-secondary, #6b7280)}.nl-card-drag-handle:active{cursor:grabbing}.nl-card-drag-handle svg{width:16px;height:16px;color:inherit}.nl-card--dragging{cursor:grabbing;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;opacity:.95;transition:box-shadow .15s ease,opacity .15s ease}.nl-card--dragging .nl-card-drag-handle{cursor:grabbing;background:#0000000f;color:#131313}.nl-card-events{display:flex;flex-direction:column;gap:0;margin-bottom:14px;max-height:240px;overflow-y:auto}.nl-card-event-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--sk-bg-subtle, #FAFAF8);border-radius:8px;font-size:13px;transition:background .15s}.nl-card-event-row+.nl-card-event-row{border-top:.5px solid rgba(0,0,0,.04);margin-top:2px}.nl-card-event-row:hover{background:#0000000a}.nl-card-event-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--cat-personlig, rgb(19, 19, 19))}.nl-card-event-title{font-weight:500;color:var(--sk-text, #1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nl-card-event-time{color:var(--sk-text-secondary, #6b7280);font-size:12px;white-space:nowrap}.nl-card-event-duration{color:var(--sk-text-tertiary, #9ca3af);font-size:var(--font-size-xs);white-space:nowrap}.nl-card-actions{display:flex;gap:8px;padding-top:12px;border-top:.5px solid rgba(0,0,0,.08)}.nl-btn{padding:8px 16px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:background .15s,transform .1s,box-shadow .15s}.nl-btn:active{transform:scale(.97)}.nl-btn-primary{background:#131313;color:#fff;flex:1;box-shadow:0 2px 8px #00000026}.nl-btn-primary:hover{background:#323230;box-shadow:0 4px 12px #00000026}.nl-btn-secondary{background:transparent;border:.5px solid var(--sk-border, #e5e7eb);border-radius:10px;color:var(--sk-text-secondary, #6b7280)}.nl-btn-secondary:hover{background:var(--sk-bg-subtle, #f9fafb)}.nl-btn-danger{background:var(--cal-destructive);color:#fff;flex:1;box-shadow:0 2px 8px rgba(var(--cal-destructive-rgb),.25)}.nl-btn-danger:hover{background:var(--cal-destructive-hover);box-shadow:0 4px 12px rgba(var(--cal-destructive-rgb),.35)}[data-theme=dark] .nl-card-multi{background:var(--sk-bg, #171512);border-color:#ffffff14;box-shadow:0 4px 24px #0006,0 1px 4px #0003}[data-theme=dark] .nl-card-header{color:var(--color-text-primary);border-bottom-color:#ffffff0f}[data-theme=dark] .nl-card-header svg{color:#131313}[data-theme=dark] .nl-card-drag-handle{color:var(--color-text-secondary)}[data-theme=dark] .nl-card-drag-handle:hover{background:#ffffff14;color:var(--color-text-primary)}[data-theme=dark] .nl-card--dragging{box-shadow:0 8px 32px #0006,0 2px 8px #0000004d}[data-theme=dark] .nl-card--dragging .nl-card-drag-handle{background:#ffffff14}[data-theme=dark] .nl-card-event-time{color:var(--color-text-tertiary)}[data-theme=dark] .nl-card-event-duration{color:var(--color-text-secondary)}[data-theme=dark] .nl-btn-primary{background:var(--cal-accent);color:#fff;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .nl-btn-primary:hover{background:#d4d3ce;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .nl-btn-secondary{border-color:#ffffff14;color:var(--color-text-tertiary);background:transparent}[data-theme=dark] .nl-btn-danger{background:var(--cal-destructive);box-shadow:0 2px 8px rgba(var(--cal-destructive-rgb),.3)}[data-theme=dark] .nl-btn-danger:hover{background:var(--cal-destructive-hover);box-shadow:0 4px 12px rgba(var(--cal-destructive-rgb),.4)}@keyframes nl-plan-row-remove{0%{opacity:1;transform:translate(0);max-height:60px}60%{opacity:0;transform:translate(40px);max-height:60px}to{opacity:0;transform:translate(40px);max-height:0;padding-top:0;padding-bottom:0;margin-top:0}}@keyframes nl-plan-row-enter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes nl-plan-conflict-pulse{0%,to{box-shadow:inset 0 0 0 1px #f59e0b40}50%{box-shadow:inset 0 0 0 1px #f59e0b80}}.nl-card-plan{background:var(--sk-bg, #fff);border:.5px solid rgba(0,0,0,.08);border-radius:12px;padding:0;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a;max-width:460px;width:100%;margin-bottom:12px;animation:nlCardSlideUp .2s ease;display:flex;flex-direction:column;overflow:hidden}.nl-card-delete{padding:0;display:flex;flex-direction:column;overflow:hidden;max-width:460px}.nl-card-delete .nl-plan-header{background:var(--color-bg);border-radius:12px 12px 0 0}.nl-card-delete .nl-plan-groups{padding:4px 0}.nl-card-delete .nl-plan-event-row{padding:10px 16px}.nl-card-delete .nl-plan-actions{padding:12px 16px 16px}.nl-card-delete.is-dragging{z-index:200;box-shadow:0 16px 56px #00000026,0 4px 16px #0000001a;opacity:.95}[data-theme=dark] .nl-card-delete .nl-plan-header{background:var(--sk-bg, #171512)}.fc-event--pending-delete{opacity:.55;background:#ef444426!important;border-color:#ef444466;transition:opacity .3s,background .3s}.fc-event--pending-delete .fc-event-title,.fc-event--pending-delete .fc-event-main{text-decoration:line-through}[data-theme=dark] .fc-event--pending-delete{background:#ef444433!important;border-color:#ef444459}.nl-plan-header{background:var(--color-bg);display:flex;align-items:center;gap:8px;padding:12px 12px 10px 14px;border-bottom:.5px solid rgba(0,0,0,.08);flex-shrink:0;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.nl-plan-header:active{cursor:grabbing}.nl-plan-header-count{font-size:14px;font-weight:650;color:var(--sk-text, #1a1a1a);letter-spacing:-.01em;flex:1}.nl-plan-header-dismiss{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--sk-text-tertiary, #9ca3af);border-radius:8px;cursor:pointer;transition:background .12s,color .12s;flex-shrink:0}.nl-plan-header-dismiss:hover{background:#0000000f;color:var(--sk-text, #1a1a1a)}.nl-plan-drag-grip{display:flex;align-items:center;justify-content:center;width:16px;flex-shrink:0;pointer-events:none}.nl-card-plan.is-dragging{z-index:200;box-shadow:0 16px 56px #00000038,0 4px 16px #0000001a;transition:box-shadow .2s ease;pointer-events:auto;opacity:.95}.nl-card-plan.is-dragging .nl-plan-header{background:var(--color-bg);cursor:grabbing}.nl-card-plan.is-dragging .nl-plan-drag-grip svg{opacity:.6}.nl-plan-summary,.nl-plan-chips,.nl-plan-chip{display:none}.nl-plan-groups{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:4px 0;max-height:360px;-webkit-overflow-scrolling:touch}.nl-plan-groups--tall{max-height:420px}.nl-plan-groups:before,.nl-plan-groups:after{content:"";display:block;height:0;flex-shrink:0}.nl-plan-groups::-webkit-scrollbar{width:5px}.nl-plan-groups::-webkit-scrollbar-track{background:transparent}.nl-plan-groups::-webkit-scrollbar-thumb{background:#0000001f;border-radius:10px}.nl-plan-groups::-webkit-scrollbar-thumb:hover{background:#0003}.nl-plan-group{margin:0 8px;border-radius:10px;overflow:hidden;transition:margin .2s ease}.nl-plan-group+.nl-plan-group{margin-top:2px;border-top:.5px solid rgba(0,0,0,.08);padding-top:2px}.nl-plan-group-header{display:flex;align-items:center;gap:8px;padding:6px 12px 4px 16px;cursor:pointer;user-select:none;border-radius:0;transition:background .12s;position:relative;min-height:36px;border-left:none;background:transparent}.nl-plan-group-header:hover{background:#00000005}.nl-plan-group-header:active{background:#0000000a}.nl-plan-group-chevron{width:16px;height:16px;flex-shrink:0;color:var(--sk-text-secondary, #6b7280);transition:transform .2s ease;transform:rotate(0)}.nl-plan-group.collapsed .nl-plan-group-chevron{transform:rotate(-90deg)}.nl-plan-group-label{flex:1;font-size:var(--font-size-xs);font-weight:650;color:var(--sk-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nl-plan-group-count{font-size:var(--font-size-xs);font-weight:650;padding:1px 7px;border-radius:10px;flex-shrink:0;line-height:1.5;color:var(--sk-text-secondary, #6b7280);background:#0000000f}.nl-plan-group-body{overflow:hidden;transition:max-height .25s ease,opacity .2s ease;opacity:1;max-height:1000px}.nl-plan-group.collapsed .nl-plan-group-body{max-height:0;opacity:0}.nl-plan-event-row{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 16px;font-size:13px;transition:background .12s,opacity .25s,transform .2s;position:relative;min-height:44px;animation:nl-plan-row-enter .2s cubic-bezier(.16,1,.3,1) both}.nl-plan-event-row+.nl-plan-event-row{border-top:.5px solid rgba(0,0,0,.04)}.nl-plan-event-row:hover{background:#00000005}.nl-plan-event-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.nl-plan-event-title{flex:1;font-weight:600;font-size:13px;color:var(--sk-text, #1a1a1a);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.nl-plan-event-date{font-size:12px;color:var(--sk-text-secondary, #6b7280);white-space:nowrap;flex-shrink:0}.nl-plan-event-remove{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--sk-text-tertiary, #9ca3af);border-radius:6px;cursor:pointer;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s,background .15s;padding:0;margin-left:4px}.nl-plan-event-row:hover .nl-plan-event-remove{opacity:1}@media(pointer:coarse){.nl-plan-event-remove{opacity:.5;width:28px;height:28px;position:relative}.nl-plan-event-remove:before{content:"";position:absolute;inset:-8px}.nl-plan-event-row:hover .nl-plan-event-remove{opacity:1}}.nl-plan-event-remove:hover{color:var(--cal-destructive);background:rgba(var(--cal-destructive-rgb),.1)}.nl-plan-event-remove:active{transform:scale(.92)}.nl-plan-event-remove:focus-visible{opacity:1;outline:none;outline-offset:1px}.nl-plan-event-row.has-conflict{background:var(--color-warning-light);animation:nl-plan-conflict-pulse 2s ease 2}.nl-plan-event-row.has-conflict .nl-plan-event-date{color:var(--color-warning)}.nl-plan-event-row.removing{animation:nl-plan-row-remove .3s ease forwards;pointer-events:none}.nl-plan-checkbox,.nl-plan-date-chip,.nl-plan-event-duration,.nl-plan-event-delete{display:none}.nl-plan-conflict-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-warning);background:var(--color-warning-light);padding:2px 7px;border-radius:8px;white-space:nowrap;flex-shrink:0}.nl-plan-conflict-badge svg{width:12px;height:12px;flex-shrink:0}.nl-plan-actions{display:flex;gap:8px;padding:12px 16px;border-top:.5px solid rgba(0,0,0,.08);flex-shrink:0;position:sticky;bottom:0;background:var(--sk-bg, #fff);z-index:2}.nl-plan-btn-create{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border:none;border-radius:10px;font-size:13px;font-weight:600;font-family:var(--font-family);cursor:pointer;background:#131313;color:#fff;box-shadow:0 2px 8px #00000026;transition:background .15s,transform .1s,box-shadow .15s;min-height:44px}.nl-plan-btn-create:hover{background:#323230;box-shadow:0 4px 12px #00000026}.nl-plan-btn-create:active{transform:scale(.97);box-shadow:0 1px 4px #00000014}.nl-plan-btn-create:focus-visible{outline:none;outline-offset:2px}.nl-plan-btn-create:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.nl-plan-btn-create:disabled:hover{transform:none;background:#131313}.nl-plan-btn-count{font-size:12px;font-weight:650;background:#ffffff40;padding:1px 7px;border-radius:8px;line-height:1.4}.nl-plan-btn-cancel{padding:10px 18px;border:.5px solid rgba(0,0,0,.08);border-radius:10px;font-size:13px;font-weight:600;font-family:var(--font-family);cursor:pointer;background:transparent;color:var(--sk-text-secondary, #6b7280);transition:background .15s,border-color .15s,color .15s,transform .1s;min-height:44px}.nl-plan-btn-cancel:hover{background:var(--color-bg);border-color:var(--sk-text-secondary, #6b7280);color:var(--sk-text, #1a1a1a)}.nl-plan-btn-cancel:active{transform:scale(.97)}.nl-plan-btn-cancel:focus-visible{outline:none;outline-offset:2px}[data-theme=dark] .nl-card-plan{background:var(--sk-bg, #171512);border-color:#ffffff14;box-shadow:0 4px 24px #0006,0 1px 4px #0003}[data-theme=dark] .nl-plan-header{background:var(--sk-bg, #171512);border-bottom-color:#ffffff0f}[data-theme=dark] .nl-plan-header-count{color:var(--color-text-primary)}[data-theme=dark] .nl-plan-header-dismiss{color:var(--color-text-secondary)}[data-theme=dark] .nl-plan-header-dismiss:hover{background:#ffffff14;color:var(--color-text-primary)}[data-theme=dark] .nl-plan-drag-grip svg{opacity:.25}[data-theme=dark] .nl-card-plan.is-dragging{box-shadow:0 16px 56px #0009,0 4px 16px #00000059;opacity:.95}[data-theme=dark] .nl-plan-groups::-webkit-scrollbar-thumb{background:#ffffff1f}[data-theme=dark] .nl-plan-groups::-webkit-scrollbar-thumb:hover{background:#fff3}[data-theme=dark] .nl-plan-group-header:hover{filter:brightness(1.08)}[data-theme=dark] .nl-plan-group-header:active{filter:brightness(1.12)}[data-theme=dark] .nl-plan-group-chevron{color:var(--color-text-tertiary)}[data-theme=dark] .nl-plan-group-label{color:var(--color-text-primary)}[data-theme=dark] .nl-plan-event-row+.nl-plan-event-row{border-top-color:#ffffff0a}[data-theme=dark] .nl-plan-event-row:hover{background:#ffffff0a}[data-theme=dark] .nl-plan-event-date{color:var(--color-text-tertiary)}[data-theme=dark] .nl-plan-event-remove{color:var(--color-text-secondary)}[data-theme=dark] .nl-plan-event-remove:hover{color:var(--color-danger);background:#b91c1c26}[data-theme=dark] .nl-plan-event-row.has-conflict{background:#f59e0b14}[data-theme=dark] .nl-plan-event-row.has-conflict .nl-plan-event-date{color:var(--color-warning)}[data-theme=dark] .nl-plan-conflict-badge{color:var(--color-warning);background:#f59e0b1f}[data-theme=dark] .nl-plan-actions{border-top-color:#ffffff0f;background:var(--sk-bg, #171512)}[data-theme=dark] .nl-plan-btn-create{background:var(--cal-accent);color:#131313;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .nl-plan-btn-create:hover{background:#d4d3ce;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .nl-plan-btn-cancel{border-color:#ffffff14;color:var(--color-text-tertiary);background:transparent}[data-theme=dark] .nl-plan-btn-cancel:hover{background:#ffffff0a;color:var(--color-text-primary);border-color:#ffffff26}@media(max-width:768px){.nl-card-plan{max-width:100%;border-radius:12px}.nl-plan-groups,.nl-plan-groups--tall{max-height:50vh}.nl-plan-summary{padding:14px 14px 10px}.nl-plan-chips{gap:5px}.nl-plan-chip{font-size:var(--font-size-xs);padding:3px 8px}.nl-plan-group{margin:0 6px}.nl-plan-group-header{padding:8px 10px}.nl-plan-event-row{padding:8px 8px 8px 14px;gap:8px}.nl-plan-event-remove{opacity:.5}.nl-plan-event-date{font-size:var(--font-size-xs)}.nl-plan-actions{padding:10px 14px}.nl-plan-btn-create,.nl-plan-btn-cancel{padding:10px 14px;font-size:13px}}@media(max-width:400px){.nl-plan-header-count{font-size:13px}.nl-plan-group-label,.nl-plan-event-title{font-size:12px}.nl-plan-event-row{gap:6px;padding-left:10px}.nl-plan-event-date{font-size:var(--font-size-xs)}}@media(prefers-reduced-motion:reduce){.nl-card-plan,.nl-plan-event-row{animation:none}.nl-plan-event-row.removing{animation:none;opacity:0}.nl-plan-event-row.has-conflict{animation:none}.nl-plan-group-body,.nl-plan-group-chevron{transition:none}}@media(forced-colors:active){.nl-plan-checkbox{border:2px solid ButtonText}.nl-plan-checkbox:checked{background:Highlight;border-color:Highlight}.nl-plan-date-chip{border:.5px solid ButtonText}.nl-plan-conflict-badge{border:.5px solid Mark}.nl-plan-group-header{border-left-color:ButtonText}}.fc-event--ghost{opacity:.45;border-style:dashed!important;border-width:2px!important;pointer-events:none;cursor:default;animation:ghostPulse 2s ease infinite;position:relative}.fc-event--ghost:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(255,255,255,.12) 4px,rgba(255,255,255,.12) 8px);border-radius:inherit;pointer-events:none}@keyframes ghostPulse{0%,to{opacity:.45}50%{opacity:.3}}.fc-timegrid-event.fc-event--ghost{border-left-width:3px!important;border-left-style:dashed!important}.fc-daygrid-event.fc-event--ghost{border-radius:6px;opacity:.55}.fc-daygrid-dot-event.fc-event--ghost .fc-daygrid-event-dot{border-color:inherit;opacity:.7}.fc-event--ghost .fc-event-main{pointer-events:none}[data-theme=dark] .fc-event--ghost,.dark-mode .fc-event--ghost{opacity:.4}[data-theme=dark] .fc-event--ghost:after,.dark-mode .fc-event--ghost:after{background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(255,255,255,.08) 4px,rgba(255,255,255,.08) 8px)}.fc-event--ghost .fc-event-title:after{content:" (udkast)";font-size:.75em;opacity:.7;font-style:italic}@media(prefers-reduced-motion:reduce){.fc-event--ghost{animation:none}}.nl-datechip-popover{position:fixed;z-index:9999;width:200px;background:var(--sk-bg, #fff);border:.5px solid rgba(0,0,0,.08);border-radius:12px;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f;padding:12px;display:flex;flex-direction:column;gap:8px;opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;pointer-events:none;font-family:var(--font-family)}.nl-datechip-popover.visible{opacity:1;transform:translateY(0);pointer-events:auto}.nl-datechip-popover:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:10px;height:10px;background:var(--sk-bg, #fff);border:.5px solid rgba(0,0,0,.08);border-right:none;border-bottom:none}.nl-datechip-popover.arrow-top:before{top:-6px;transform:translate(-50%) rotate(45deg)}.nl-datechip-popover.arrow-bottom:before{bottom:-6px;top:auto;transform:translate(-50%) rotate(225deg)}.nl-datechip-label{font-size:var(--font-size-xs);font-weight:600;color:var(--sk-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.3px;margin:0;line-height:1}.nl-datechip-input{width:100%;padding:7px 10px;border:.5px solid rgba(0,0,0,.08);border-radius:8px;font-size:13px;font-weight:500;font-family:var(--font-family);color:var(--sk-text, #1a1a1a);background:var(--color-bg, rgba(0, 0, 0, .02));outline:none;transition:border-color .12s,box-shadow .12s;min-height:36px;box-sizing:border-box;-webkit-appearance:none;appearance:none}.nl-datechip-input:focus-visible{border-color:#00000026;box-shadow:none;outline:none}.nl-datechip-time-select{width:100%;padding:7px 28px 7px 10px;border:.5px solid rgba(0,0,0,.08);border-radius:8px;font-size:13px;font-weight:500;font-family:var(--font-family);color:var(--sk-text, #1a1a1a);background:var(--color-bg, rgba(0, 0, 0, .02));outline:none;transition:border-color .12s,box-shadow .12s;min-height:36px;box-sizing:border-box;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.nl-datechip-time-select:focus-visible{border-color:#00000026;box-shadow:none;outline:none}.nl-datechip-allday-row{display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none}.nl-datechip-allday-checkbox{width:16px;height:16px;border-radius:6px;border:.5px solid rgba(0,0,0,.08);cursor:pointer;accent-color:var(--cal-accent)}.nl-datechip-allday-label{font-size:12px;font-weight:500;color:var(--sk-text-secondary, #6b7280);cursor:pointer}.nl-datechip-ok{width:100%;padding:8px 0;border:none;border-radius:8px;font-size:13px;font-weight:600;font-family:var(--font-family);cursor:pointer;background:#131313;color:#fff;transition:background .12s,transform .1s;min-height:36px;margin-top:2px}.nl-datechip-ok:hover{background:#323230}.nl-datechip-ok:active{transform:scale(.97)}.nl-datechip-ok:focus-visible{outline:none;outline-offset:2px}.nl-plan-date-chip.chip-editing{background:#00000014;border-color:#00000026;box-shadow:0 0 0 2px #00000012}[data-theme=dark] .nl-datechip-popover{background:var(--sk-bg, #171512);border-color:#ffffff1a;box-shadow:0 8px 30px #00000080,0 2px 8px #0000004d}[data-theme=dark] .nl-datechip-popover:before{background:var(--sk-bg, #171512);border-color:#ffffff1a}[data-theme=dark] .nl-datechip-label{color:var(--color-text-tertiary)}[data-theme=dark] .nl-datechip-input,[data-theme=dark] .nl-datechip-time-select{background:#ffffff0d;border-color:#ffffff1a;color:var(--color-text-primary)}[data-theme=dark] .nl-datechip-allday-checkbox{border-color:#ffffff26}[data-theme=dark] .nl-datechip-allday-label{color:var(--color-text-tertiary)}@media(max-width:768px){.nl-datechip-popover{width:190px;padding:10px;gap:7px}.nl-datechip-input,.nl-datechip-time-select{font-size:14px;min-height:40px}.nl-datechip-ok{min-height:40px;font-size:14px}}@media(prefers-reduced-motion:reduce){.nl-datechip-popover{transition:none}}@media(prefers-reduced-motion:reduce){.nl-card-enter,.nl-card-exit,.nl-hint-in,.nl-mic-pulse,.nl-mic-spin,.nl-shimmer-pulse,.nl-shimmer-ring,.nl-shimmer,.nl-toast-enter,.nl-toast-exit,.nl-mic-shake,.nlCardSlideUp,.nl-plan-row-remove,.nl-plan-row-enter,.nl-plan-conflict-pulse,.ghostPulse{animation:none!important}}.fc-event--has-insight{box-shadow:inset 3px 0 0 var(--color-warning)!important}.cal-insight-dot{position:absolute;top:3px;right:3px;width:8px;height:8px;background:var(--color-warning);border-radius:50%;border:.5px solid #fff;pointer-events:none;z-index:2}.cal-popup-insight{margin-top:10px;padding-top:10px;border-top:.5px solid rgba(0,0,0,.08)}.cal-popup-insight-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#78350f;line-height:1.4}.cal-popup-insight-text{flex:1}.cal-popup-insight--done{color:var(--color-success)}.cal-popup-insight-btn{display:block;width:100%;margin-top:8px;padding:7px 14px;border-radius:8px;border:.5px solid rgba(0,0,0,.04);background:#0000000a;color:var(--color-info);font-size:13px;font-weight:600;cursor:pointer;text-align:center;transition:background .15s,border-color .15s;font-family:inherit}.cal-popup-insight-btn:hover{background:#0000000a;border-color:#0000000a}.cal-popup-insight-btn:disabled{opacity:.5;cursor:not-allowed}.fc-timegrid-event.fc-v-event{min-height:22px!important}.fc-timegrid-event .fc-event-main-frame{overflow:hidden}.fc-timegrid-event[style*=top][style*=bottom] .fc-event-time,.fc-timegrid-event[style*=top][style*=bottom] .fc-event-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:1280px){.nl-bar{max-width:780px}}@media(min-width:1600px){.nl-bar{max-width:880px}}@media(min-width:1920px){.nl-bar{max-width:960px}}.cal-view-segmented{display:none;justify-content:center;gap:0;padding:0;background:transparent}.cal-view-segmented .cal-view-seg-btn{flex:1;max-width:100px;min-height:44px;padding:0 10px;border:.5px solid rgba(0,0,0,.08);background:var(--color-card, #fff);color:var(--color-text-secondary, rgb(60, 60, 58));font-family:var(--font-family);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s;position:relative;outline:none}.cal-view-segmented .cal-view-seg-btn:first-child{border-radius:100px 0 0 100px;border-right:none}.cal-view-segmented .cal-view-seg-btn:last-child{border-radius:0 100px 100px 0;border-left:none}.cal-view-segmented .cal-view-seg-btn:not(:first-child):not(:last-child){border-radius:0;border-left:none;border-right:none}.cal-view-segmented .cal-view-seg-btn.active{background:#00000012;color:var(--color-text-primary, #1f1f1e);border-color:#0000001f;font-weight:var(--font-weight-semibold);z-index:1}.cal-view-segmented .cal-view-seg-btn.active+.cal-view-seg-btn{border-left:.5px solid var(--color-text-primary)}.cal-view-segmented .cal-view-seg-btn:focus-visible{box-shadow:none;z-index:2}[data-theme=dark] .cal-view-segmented .cal-view-seg-btn{background:var(--color-card, #2b3348);border-color:#ffffff1f;color:#fff9}[data-theme=dark] .cal-view-segmented .cal-view-seg-btn.active{background:#ffffff26;border-color:#fff3;color:#fff}@media(max-width:767px){.cal-view-segmented{display:flex}}@media(max-width:767px){.cal-main{padding:0!important;overflow:hidden}.cal-layout{flex-direction:column;height:auto;min-height:100dvh}.cal-body{padding:0;overflow:hidden}.cal-body #calendar{padding:10px 10px calc(var(--mn-bar-height, 60px) + 72px);overflow-y:auto;overflow-x:hidden}.cal-body .fc-col-header-cell{font-size:12px;padding:6px 0}.cal-body .fc-daygrid-day-number{font-size:12px;padding:3px 4px}.cal-body .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{width:24px;height:24px;margin:2px 4px}.cal-body .fc-daygrid-day-frame{min-height:52px}.cal-body .fc-event{font-size:12px!important;padding:2px 5px 2px 7px!important;border-left-width:2px!important;line-height:1.35!important;border-radius:6px!important}.cal-body .fc-event:hover{transform:none;box-shadow:none}.cal-drawer{width:100%;height:auto;max-height:92dvh;inset:auto 0 0;border-radius:12px 12px 0 0;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1)}.cal-drawer-overlay.active .cal-drawer{transform:translateY(0)}.cal-drawer:before{content:"";display:block;width:36px;height:4px;background:#00000014;border-radius:6px;margin:10px auto 0;flex-shrink:0}.cal-drawer-header{padding:12px 20px 16px}.cal-drawer-body{padding:16px 20px;max-height:calc(92dvh - 140px);overflow-y:auto;-webkit-overflow-scrolling:touch}.cal-drawer-footer{padding:14px 20px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}.cal-drawer-footer .btn,.cal-drawer-footer .btn-delete{min-height:44px;padding:10px 20px}.cal-add-cat-btn,.cal-reset-cats,.cal-drawer-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.cal-body .fc-timegrid-slot{height:40px}.cal-body .fc-timegrid-slot-label{width:40px}.cal-body .fc-timegrid-slot-label-cushion{font-size:12px;padding-right:4px}.cal-body .fc-timegrid-event{font-size:12px!important;padding:2px 4px 2px 6px!important;border-left-width:3px!important;border-radius:6px!important;line-height:1.3!important}.cal-body .fc-timegrid-event .fc-event-time{font-size:12px!important}.cal-body .fc-timegrid-event:hover{transform:none;box-shadow:none}.cal-body .fc-timegrid-now-indicator-arrow{width:8px;height:8px;margin-top:-4px}.cal-body .fc-timegrid-axis{width:40px}.cal-body .fc-timegrid .fc-col-header-cell-cushion{font-size:12px;padding:2px 4px}.cal-body .fc-list-day-cushion{padding:10px 14px!important}.cal-body .fc-list-day-text{font-size:13px!important}.cal-body .fc-list-day-side-text{font-size:12px!important}.cal-body .fc-list-event td{padding:10px 12px!important}.cal-body .fc-list-event-time{font-size:12px!important;min-width:70px;max-width:80px;padding-left:10px!important}.cal-list-card__title{font-size:14px}.cal-list-card__chip{font-size:12px;padding:1px 6px}.cal-list-card__desc{font-size:12px;max-width:250px}}@media(max-width:375px){.cal-body .fc-toolbar-title{font-size:18px!important}.cal-body .fc-col-header-cell,.cal-body .fc-daygrid-day-number{font-size:12px}}@media(max-width:767px)and (max-height:500px)and (orientation:landscape){.cal-body{padding:6px 8px 40px}.cal-body .fc-toolbar{gap:4px;margin-bottom:6px!important}.cal-body .fc-toolbar-title{font-size:18px!important}.cal-body .fc-daygrid-day-frame{min-height:36px}.cal-body .fc-daygrid-day-number{font-size:12px;padding:2px 3px}.cal-body .fc-event{font-size:12px!important;padding:1px 4px 1px 5px!important}.cal-drawer{max-height:85dvh}}@media(max-width:767px){.cal-event-popup{display:none!important}}@media(max-width:575px){.cal-confirm-card{padding:24px 20px 18px;border-radius:12px}.cal-confirm-actions{flex-direction:column-reverse}}@media(max-width:575px){.cal-quick-add{display:none;align-items:flex-end;justify-content:center;background:#00000026}.cal-quick-add.active{display:flex}.cal-quick-add-card{position:relative!important;left:auto!important;top:auto!important;width:calc(100% - 24px);max-width:400px;margin-bottom:calc(var(--mn-bar-height, 60px) + 16px);border-radius:12px;animation-name:qaSlideUp}@keyframes qaSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}@media(hover:hover){[data-theme=dark] .cal-quick-add-save:hover{background:var(--cal-accent-hover)}}.cal-quick-add:not(.active){pointer-events:none}@media(max-width:575px){.cal-quick-add-save{min-height:44px;padding:10px 24px;font-size:14px}.cal-quick-add-details{min-height:44px;padding:10px 12px}.cal-quick-add-input{font-size:16px;padding:12px 18px 10px}}@media(max-width:767px){.cal-body .fc-toolbar.fc-header-toolbar{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;padding:6px 8px 4px!important;margin-bottom:2px!important;align-items:center!important}.cal-body .fc-toolbar .fc-toolbar-chunk:first-child{display:flex!important;align-items:center!important;gap:0!important;flex:1!important;min-width:0!important}.cal-body .fc-toolbar .fc-toolbar-chunk:nth-child(2){display:none!important}.cal-body .fc-toolbar .fc-toolbar-chunk:last-child{display:flex!important;align-items:center!important;gap:6px!important;flex-shrink:0!important}.cal-body .fc-today-button,.cal-body .fc-addEvent-button,.cal-body .gcal-toolbar-sync-btn{display:none!important}.cal-body .fc-prev-button,.cal-body .fc-next-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:transparent!important;border:none!important;color:var(--color-text-secondary, rgb(60, 60, 58))!important;box-shadow:none!important}.cal-body .fc-toolbar-title{font-size:15px!important;font-weight:650!important;margin:0 2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.fc-viewDropdown-button.fc-button{display:none!important}.cal-body .fc-filterCats-button,.cal-body .fc-filterCats-button.fc-button,.cal-body .fc-filterCats-button.fc-button.fc-button-primary{font-size:0!important;line-height:0!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;border-radius:8px!important;overflow:hidden!important}.cal-body .fc-filterCats-button:before{content:"";display:block;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3'/%3E%3C/svg%3E") center/contain no-repeat}.cal-body .fc-toolbar .fc-button-group{width:auto!important;border:none!important;border-radius:0!important;background:transparent!important;display:flex!important;gap:0!important}.cal-body .fc-toolbar .fc-button-group .fc-button{flex:0!important;border-right:none!important}[data-theme=dark] .cal-body .fc-prev-button,[data-theme=dark] .cal-body .fc-next-button{color:#ffffffb3!important}.cal-body .fc-event,.cal-body .fc-daygrid-event{min-height:44px!important;padding:4px 6px 4px 8px!important;display:flex!important;align-items:center!important}.cal-body .fc-event .fc-event-title,.cal-body .fc-event .fc-event-time,.cal-body .fc-daygrid-event .fc-event-title,.cal-body .fc-daygrid-event .fc-event-time{font-size:13px!important;line-height:1.3!important}.cal-body .fc-col-header-cell-cushion{font-size:12px!important}.cal-body .fc-daygrid-day-number{font-size:14px!important}.cal-body .fc-event,.cal-body .fc-daygrid-day,.cal-body .fc-timegrid-slot,.cal-body button,.cal-view-segmented button,.nl-bar-input,.nl-bar-submit,.nl-bar-mic{touch-action:manipulation}}@media(max-width:576px){.smart-drawer-nl-group .smart-drawer-nl-input{min-height:56px;font-size:14px}.ai-field-badge{font-size:12px;padding:1px 4px}.smart-drawer-details-toggle{min-height:44px;padding:12px 0}.smart-drawer-preview{padding:8px 12px;font-size:12px}}@media(max-width:767px){.nl-bar-label{display:none}.nl-bar{position:fixed;bottom:calc(var(--mn-bar-height, 60px) + 12px);width:auto;left:10px;right:10px;max-width:none;transform:none;z-index:101}.nl-bar-inner{border-radius:12px;padding:2px 10px}.nl-bar-input{font-size:16px;padding:10px 0;min-height:44px}.nl-bar-shortcut{display:none}.nl-bar-submit,.nl-bar-mic{width:44px;height:44px;min-width:44px;border-radius:12px}.nl-result,.nl-clarify,.nl-answer,.nl-query-results,.nl-modify-confirm,.nl-delete-confirm,.nl-slot-suggestions,.nl-study-plan{padding:12px;border-radius:var(--radius-md)}.nl-result-body{flex-direction:column;gap:5px}.nl-result-actions .btn,.nl-overlay-actions .btn{min-height:44px;padding:10px 16px;font-size:14px}.nl-result-dismiss,.nl-answer-dismiss{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:20px}.nl-answer{padding-right:44px}.nl-answer-dismiss{top:6px;right:4px}.nl-clarify-chip{padding:8px 16px;font-size:13px;min-height:40px;display:inline-flex;align-items:center}.nl-slot-grid{grid-template-columns:1fr}.nl-slot-card{flex-direction:row;justify-content:space-between;padding:10px 14px;min-height:44px}.nl-overlay-list{max-height:200px}.nl-undo-toast{bottom:calc(var(--mn-bar-height, 60px) + 80px);left:12px;right:12px;transform:none;justify-content:center;border-radius:var(--radius-lg, 12px);padding:10px 16px;animation-name:nl-card-enter}.nl-undo-toast--exiting{animation:nl-card-exit .2s ease both}.nl-loading{padding:10px 12px}}@media(max-width:767px)and (max-height:500px)and (orientation:landscape){.nl-bar{bottom:8px}.nl-bar-input{font-size:13px;padding:6px 0;min-height:36px}.nl-bar-submit,.nl-bar-mic{width:44px;height:44px;min-width:44px}}@media(pointer:coarse){.cal-body .fc-event{min-height:44px!important;padding:6px 10px 6px 9px!important}.cal-body .fc-timegrid-event{min-height:44px!important}}@media(pointer:coarse){.cal-event-popup{display:none!important}}@media(prefers-reduced-motion:reduce){.cal-drawer,.cal-drawer-overlay.active .cal-drawer{transition:none!important}.cal-quick-add-card,.nl-undo-toast--exiting{animation:none!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(min-width:768px)and (max-width:1023px){.cal-body #calendar{padding:0 14px 96px}.cal-body .fc-toolbar{padding:14px 14px 0}.cal-body .fc-toolbar-title{font-size:20px!important}.cal-body .fc-daygrid-day-number{font-size:13px;padding:6px 8px}.cal-body .fc-event{font-size:12px!important}.cal-drawer{width:360px}}@media(min-width:1024px)and (max-width:1279px){.cal-body .fc-toolbar{padding:14px 16px 0}.cal-drawer{width:380px}}@media(max-width:768px){.s-dropdown-item{min-height:44px;display:flex;align-items:center;padding:12px}.old-ss-link{min-height:44px;min-width:44px;display:inline-flex;align-items:center;padding:12px 8px;font-size:14px!important}.cal-body .fc-col-header-cell{font-size:12px}.mobile-nav-item{min-height:44px;min-width:44px;font-size:12px;padding:6px 8px}.mobile-more-item{min-height:48px;font-size:12px}.mobile-more-item span,.mobile-nav-item .nav-label{font-size:12px}}[data-theme=dark] .cal-filter-popover{box-shadow:0 8px 24px #0006}[data-theme=dark] .cal-filter-popover .cal-add-cat-form{border-top-color:#ffffff14}[data-theme=dark] .cal-filter-popover .cal-add-cat-input{background:#ffffff0f;border-color:#ffffff1a}[data-theme=dark] .cal-filter-popover .cal-add-cat-btn{border-color:#ffffff1a}[data-theme=dark] .cal-filter-popover .cal-color-swatch.selected{border-color:#fff9}[data-theme=dark] .cal-filter-popover .cal-add-cat-actions .btn-secondary{background:#ffffff0f;border-color:#ffffff1a}[data-theme=dark] .fc-filterCats-button,[data-theme=dark] .fc-filterCats-button.fc-button,[data-theme=dark] .fc-viewDropdown-button.fc-button{border-color:#ffffff26!important;color:var(--color-text-primary)!important}[data-theme=dark] .fc-viewDropdown-button.fc-button:hover{background:#ffffff0f!important}[data-theme=dark] .cal-view-dropdown-menu{background:var(--color-bg);border-color:#ffffff1a;box-shadow:0 8px 24px #0006}[data-theme=dark] .cal-view-dropdown-item:hover{background:#ffffff0f}[data-theme=dark] .cal-view-dropdown-item.active .cal-view-dropdown-shortcut{background:#ffffff1a;color:#fff9}[data-theme=dark] .cal-view-dropdown-item.active{background:#ffffff14;color:#fff}[data-theme=dark] .cal-view-dropdown-shortcut{background:#ffffff14;color:#ffffff80}[data-theme=dark] .custom-cat-trigger{background:#ffffff0a;border-color:var(--color-border)}[data-theme=dark] .custom-cat-trigger:hover{border-color:#ffffff26}[data-theme=dark] .custom-cat-options{position:fixed;background:var(--color-card);border-color:var(--color-border);box-shadow:var(--shadow-modal)}[data-theme=dark] .custom-cat-option:hover{background:#ffffff0f}[data-theme=dark] .custom-cat-option.selected{background:rgba(var(--cal-accent-rgb, 74, 122, 104),.15)}[data-theme=dark] .custom-cat-add-btn{border-top-color:#ffffff0f;color:var(--color-text-primary)}[data-theme=dark] .custom-cat-add-btn:hover{background:#00000012}[data-theme=dark] .custom-cat-add-form{border-top-color:#ffffff0f}[data-theme=dark] .custom-cat-add-form input.custom-cat-add-input{border-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .custom-cat-add-form input.custom-cat-add-input:focus-visible{border-color:#1f1f1e4d;box-shadow:none}[data-theme=dark] .custom-cat-add-swatch.selected{border-color:#ffffffb3}[data-theme=dark] .custom-cat-add-actions .custom-cat-add-cancel{background:#ffffff0f;color:#fff9}[data-theme=dark] .custom-cat-add-actions .custom-cat-add-cancel:hover{background:#ffffff1a}[data-theme=dark] .custom-cat-add-actions .custom-cat-add-create{background:var(--cal-accent)}[data-theme=dark] .cal-recurrence-scope{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .cal-loading-overlay{background:var(--color-card, #2b2a27)}[data-theme=dark] .cal-skeleton-pill{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff1a,#ffffff0f 75%);background-size:200% 100%}[data-theme=dark] .cal-skeleton-event{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%}[data-theme=dark] .cal-skeleton-cell{border-color:var(--color-border)}[data-theme=dark] .cal-skeleton-toolbar,[data-theme=dark] .cal-skeleton-header{border-bottom-color:var(--color-border)}[data-theme=dark] .cal-conflict-suggest-btn{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .cal-conflict-suggest-btn:hover{background:rgba(var(--cal-accent-rgb, 74, 122, 104),.1)}[data-theme=dark]{--fc-border-color: rgba(255, 255, 255, .2)}[data-theme=dark] .cal-body .fc-scrollgrid td,[data-theme=dark] .cal-body .fc-scrollgrid th{border-color:#ffffff29!important}[data-theme=dark] .cal-body .fc-col-header-cell{border-bottom-color:#ffffff1a!important}[data-theme=dark] .cal-body .fc-scrollgrid td:last-child,[data-theme=dark] .cal-body .fc-scrollgrid th:last-child{border-right:none!important}[data-theme=dark] .cal-body .fc-scrollgrid td:first-child,[data-theme=dark] .cal-body .fc-scrollgrid th:first-child{border-left:none!important}[data-theme=dark] .cal-body .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{background:var(--cal-accent)!important;color:#fff!important}[data-theme=dark] .fc-daygrid-day-number{color:var(--color-text-primary)}[data-theme=dark] .fc-toolbar-title{color:var(--bb-dark-text-primary, #E8DDD4)!important}[data-theme=dark] .fc-event.cat-personlig{--cat-bg: rgba(74, 144, 226, .16);--cat-bg-hover: rgba(74, 144, 226, .24);--cat-color: #7ab4f5}[data-theme=dark] .fc-event.cat-aflevering{--cat-bg: rgba(226, 70, 104, .16);--cat-bg-hover: rgba(226, 70, 104, .24);--cat-color: #f87185}[data-theme=dark] .fc-event.cat-grammatik{--cat-bg: rgba(34, 197, 94, .16);--cat-bg-hover: rgba(34, 197, 94, .24);--cat-color: #4ade80}[data-theme=dark] .fc-event.cat-skole{--cat-bg: rgba(6, 182, 212, .16);--cat-bg-hover: rgba(6, 182, 212, .24);--cat-color: #22d3ee}[data-theme=dark] .fc-event.cat-proeve{--cat-bg: rgba(139, 92, 246, .16);--cat-bg-hover: rgba(139, 92, 246, .24);--cat-color: #a78bfa}[data-theme=dark] .fc-event.cat-andet{--cat-bg: rgba(245, 158, 11, .16);--cat-bg-hover: rgba(245, 158, 11, .24);--cat-color: var(--color-warning)}[data-theme=dark] .fc-event.cat-deadline{--cat-bg: rgba(225, 29, 72, .16);--cat-bg-hover: rgba(225, 29, 72, .24);--cat-color: #fb7185}[data-theme=dark] .fc-event.cat-moeder{--cat-bg: rgba(14, 165, 233, .16);--cat-bg-hover: rgba(14, 165, 233, .24);--cat-color: #38bdf8}[data-theme=dark] .fc-event.cat-arbejde{--cat-bg: rgba(13, 148, 136, .16);--cat-bg-hover: rgba(13, 148, 136, .24);--cat-color: #2dd4bf}[data-theme=dark] .fc-event.cat-google_cal{--cat-bg: rgba(66, 133, 244, .16);--cat-bg-hover: rgba(66, 133, 244, .24);--cat-color: #7ab4f5}[data-theme=dark] .cal-body .fc-event:not([class*=cat-]){--cat-bg: rgba(74, 144, 226, .16);--cat-bg-hover: rgba(74, 144, 226, .24)}[data-theme=dark] .fc-event.cat-personlig{--cat-text: #a5b4c8}[data-theme=dark] .fc-event.cat-aflevering{--cat-text: #fca5a5}[data-theme=dark] .fc-event.cat-grammatik{--cat-text: #86efac}[data-theme=dark] .fc-event.cat-skole{--cat-text: #67e8f9}[data-theme=dark] .fc-event.cat-proeve{--cat-text: #c4b5fd}[data-theme=dark] .fc-event.cat-andet{--cat-text: #fcd34d}[data-theme=dark] .fc-event.cat-deadline{--cat-text: #fda4af}[data-theme=dark] .fc-event.cat-moeder{--cat-text: #7dd3fc}[data-theme=dark] .fc-event.cat-arbejde{--cat-text: #5eead4}[data-theme=dark] .fc-event.cat-google_cal{--cat-text: #a5b4c8}[data-theme=dark] .cal-body .fc-event:not([class*=cat-]){--cat-text: #a5b4c8}[data-theme=dark] .fc-event .fc-event-title,[data-theme=dark] .fc-event .fc-event-time{color:var(--cat-text, #a5b4fc)}[data-theme=dark] .cal-body .fc-daygrid-day:hover{background:#ffffff0a}[data-theme=dark] .cal-body .fc-event:hover{background:var(--cat-bg-hover)!important}[data-theme=dark] .cal-body .fc-event .fc-time-prefix,.dark-mode .cal-body .fc-event .fc-time-prefix{opacity:.6;color:#fffc}[data-theme=dark] .cal-body .fc-event-mirror,.dark-mode .cal-body .fc-event-mirror{box-shadow:0 4px 16px #0006}[data-theme=dark] .cal-undo-toast,.dark-mode .cal-undo-toast{background:#2b2a27c7;color:var(--color-text-primary);border:.5px solid rgba(255,255,255,.1);box-shadow:0 4px 6px -1px #0003,0 12px 24px -4px #0000004d}[data-theme=dark] .cal-undo-toast-btn,.dark-mode .cal-undo-toast-btn{color:var(--cal-accent, #4A7A68)}[data-theme=dark] .cal-undo-toast-dismiss,.dark-mode .cal-undo-toast-dismiss{color:#ffffff73}[data-theme=dark] .cal-undo-toast-dismiss:hover,.dark-mode .cal-undo-toast-dismiss:hover{color:#fffc;background:#ffffff14}[data-theme=dark] .cal-mini .fc-daygrid-day:hover .fc-daygrid-day-number{background:#ffffff0f}[data-theme=dark] .cal-drawer-overlay{background:#0009}[data-theme=dark] .cal-drawer{box-shadow:-12px 0 40px #00000080,-2px 0 8px #00000040,inset 1px 0 #ffffff0a}[data-theme=dark] .cal-drawer-header{border-bottom-color:var(--color-border)}[data-theme=dark] .cal-drawer-body .input{border-color:var(--color-border);background:#ffffff0a;color:var(--color-text-primary);color-scheme:dark}[data-theme=dark] .cal-drawer-body select.input option:checked{background:linear-gradient(0deg,var(--cal-accent) 0%,var(--cal-accent) 100%);color:#fff}[data-theme=dark] .cal-drawer-body .input:hover{border-color:#ffffff24}[data-theme=dark] .cal-drawer-body .input:focus-visible{background:#ffffff0f}[data-theme=dark] .cal-drawer-times .input[type=time]{border-color:var(--color-border);background:#ffffff0a}[data-theme=dark] .cal-drawer-times .input[type=time]:hover{border-color:#ffffff24}[data-theme=dark] .cal-drawer-times .input[type=time]:focus-visible{background:#ffffff0f}[data-theme=dark] .cal-drawer-footer{border-top-color:#ffffff0f}[data-theme=dark] .cal-drawer-footer .btn-secondary{border-color:#ffffff1f;color:var(--color-text-primary)}[data-theme=dark] .cal-drawer-footer .btn-secondary:hover{background:#ffffff0f;border-color:#ffffff2e;color:var(--color-text-primary)}[data-theme=dark] .cal-body .fc-prev-button,[data-theme=dark] .cal-body .fc-next-button{color:#ffffffb3!important}[data-theme=dark] .cal-body .fc-prev-button:hover,[data-theme=dark] .cal-body .fc-next-button:hover{background:#ffffff14!important;color:#fff!important}[data-theme=dark] .cal-body .fc-today-button,[data-theme=dark] .cal-body .fc-today-button.fc-button,[data-theme=dark] .cal-body .fc-today-button.fc-button.fc-button-primary{color:var(--color-text-primary)!important;border-color:#ffffff26!important}[data-theme=dark] .cal-body .fc-today-button:hover:not(:disabled){background:#ffffff14!important;border-color:#ffffff4d!important;color:#fff!important}[data-theme=dark] .cal-body .fc-filterCats-button,[data-theme=dark] .cal-body .fc-filterCats-button.fc-button{color:var(--color-text-primary)!important;border-color:#ffffff26!important}[data-theme=dark] .cal-body .fc-filterCats-button:hover{background:#ffffff14!important;border-color:#ffffff4d!important;color:#fff!important}[data-theme=dark] .cal-body .fc-addEvent-button,[data-theme=dark] .cal-body .fc-addEvent-button.fc-button{background:var(--cal-accent)!important;border-color:var(--cal-accent)!important;color:#fff!important}[data-theme=dark] .cal-drawer-close:hover{background:#ffffff0f}[data-theme=dark] .cal-body .fc-button-group{border:none!important;background:transparent!important}[data-theme=dark] .cal-body .fc-col-header-cell-cushion{color:var(--color-text-secondary);opacity:1}[data-theme=dark] .cal-body .fc-timegrid .fc-col-header-cell.fc-day-today .fc-col-header-cell-cushion{background:#ffffff14}[data-theme=dark] .cal-body .fc-timegrid-slot-label-cushion{opacity:.65}[data-theme=dark] .cal-body .fc-timegrid-slot{border-color:#ffffff0a!important}[data-theme=dark] .cal-body .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":00:00"]{border-top-color:#ffffff1a!important}[data-theme=dark] .cal-body .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":30:00"]{border-top-color:#ffffff0a!important;border-top-style:dashed!important}[data-theme=dark] .cal-body .fc-scrollgrid .fc-timegrid-col{border-right-color:#ffffff1f!important}[data-theme=dark] .cal-body .fc-timegrid-col:hover{background:#ffffff05}[data-theme=dark] .cal-body .fc-timegrid-col.fc-day-today{background:#0000000a!important}[data-theme=dark] .cal-day-header-weekday{color:var(--color-text-tertiary)}[data-theme=dark] .cal-day-header-num{color:var(--color-text-primary)}[data-theme=dark] .cal-day-header-month{color:var(--color-text-tertiary)}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-col.fc-day-today{background:transparent!important}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot{background:#ffffff05}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="08:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="08:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="09:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="09:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="10:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="10:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="11:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="11:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="12:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="12:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="13:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="13:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="14:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="14:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="15:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="15:30:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="16:00:00"],[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot[data-time="16:30:00"]{background:transparent}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot.fc-timegrid-slot-lane[data-time$=":00:00"]{border-top-color:#ffffff24!important}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-slot-label-cushion{opacity:.75}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-col:hover{background:transparent}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-scrollgrid .fc-timegrid-col{border-right-color:transparent!important}[data-theme=dark] .cal-body .fc-timegrid .fc-daygrid-body{border-bottom-color:var(--color-border)!important}[data-theme=dark] .cal-body .fc-timegrid-event:hover{box-shadow:0 2px 10px #00000059}[data-theme=dark] .cal-body .fc-timegrid-event-harness-inset .fc-timegrid-event{box-shadow:-1px 0 4px #0003}[data-theme=dark] .cal-body .fc-timegrid-event-harness-inset .fc-timegrid-event:hover{box-shadow:0 2px 14px #00000059}[data-theme=dark] .cal-body .fc-timegrid-now-indicator-line{border-color:var(--color-danger)!important}[data-theme=dark] .cal-body .fc-timegrid-col.fc-day-today .fc-timegrid-now-indicator-line:before{background:var(--color-danger)}[data-theme=dark] .cal-body .fc-timegrid-axis{border-right-color:#ffffff1f!important}[data-theme=dark] .cal-body .fc-scroller::-webkit-scrollbar-thumb{background:#ffffff14}[data-theme=dark] .cal-body .fc-scroller::-webkit-scrollbar-thumb:hover{background:#ffffff26}[data-theme=dark] .cal-body .fc-list-day-cushion{background:#ffffff0a!important}[data-theme=dark] .cal-body .fc-list-day.fc-day-today .fc-list-day-cushion{background:#4a7a681f!important;color:#90b4a4}[data-theme=dark] .cal-body .fc-list-event td{background:#ffffff05}[data-theme=dark] .cal-body .fc-list-event:hover td{background:#ffffff0f!important;box-shadow:0 2px 8px #0003!important}[data-theme=dark] .cal-body .fc-list-event:hover .cal-list-card__title{color:#a8c5b8!important}[data-theme=dark] .cal-list-card__chip{background:color-mix(in srgb,var(--chip-color, var(--cal-accent)) 20%,transparent)}[data-theme=dark] .cal-list-card__desc{color:#fff6}[data-theme=dark] .cal-body .fc-daygrid-day.fc-day-other .fc-daygrid-day-number{color:#ffffff40;opacity:1}[data-theme=dark] .cal-drawer-error{background:#ef44441f;color:#fca5a5}[data-theme=dark] .cal-drawer-warning{background:#f59e0b1f;color:#fcd34d}[data-theme=dark] .cal-drawer-footer .btn-delete{border-color:transparent;color:#fca5a5}[data-theme=dark] .cal-drawer-footer .btn-delete:hover{background:#ef44441f;color:#fca5a5}[data-theme=dark] .cal-drawer-body .input.input-error{box-shadow:0 0 0 3px #ef444433}[data-theme=dark] .char-count.char-count-danger{color:#fca5a5}[data-theme=dark] .cal-body .fc-daygrid-more-link:hover{background:#ffffff0f}[data-theme=dark] .cal-drawer-body::-webkit-scrollbar{width:4px}[data-theme=dark] .cal-drawer-body::-webkit-scrollbar-track{background:transparent}[data-theme=dark] .cal-drawer-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:6px}[data-theme=dark] .cal-drawer-body::-webkit-scrollbar-thumb:hover{background:#ffffff26}[data-theme=dark] .nl-bar-label{color:var(--color-text-secondary)}[data-theme=dark] .fc-event:focus-visible{outline:none;outline-offset:2px}[data-theme=dark] .cal-event-popup{box-shadow:0 8px 32px #00000080,0 2px 8px #00000040,0 0 0 1px #ffffff0f}[data-theme=dark] .cal-body .fc-prev-button:focus-visible,[data-theme=dark] .cal-body .fc-next-button:focus-visible,[data-theme=dark] .cal-body .fc-today-button:focus-visible,[data-theme=dark] .cal-body .fc-addEvent-button:focus-visible,[data-theme=dark] .cal-body .fc-button-group .fc-button:focus-visible,[data-theme=dark] .cal-body .fc-event:focus-visible,[data-theme=dark] .cal-drawer-close:focus-visible,[data-theme=dark] .cal-drawer-footer .btn:focus-visible,[data-theme=dark] .cal-drawer-footer .btn-delete:focus-visible{box-shadow:none!important}[data-theme=dark] .cal-context-menu{background:var(--color-card);border-color:var(--color-border);box-shadow:var(--shadow-popup)}[data-theme=dark] .cal-ctx-item:hover,[data-theme=dark] .cal-ctx-divider{background:#ffffff0f}[data-theme=dark] .cal-confirm-overlay.active{background:#00000073}[data-theme=dark] .cal-confirm-card{background:var(--color-card);box-shadow:0 12px 40px #00000059,0 2px 8px #0003}[data-theme=dark] .cal-confirm-icon{background:#e246681f}[data-theme=dark] .cal-confirm-title{color:#ffffffeb}[data-theme=dark] .cal-confirm-msg{color:#ffffff8c}[data-theme=dark] .cal-confirm-cancel{background:#ffffff14;color:#ffffffd9}[data-theme=dark] .cal-confirm-cancel:hover{background:#ffffff1f}[data-theme=dark] .cal-quick-add-card{background:var(--color-card);border-color:var(--color-border);box-shadow:0 8px 32px #0006,0 1px 3px #0003}[data-theme=dark] .cal-quick-add-input{color:#ffffffeb}[data-theme=dark] .cal-quick-add-input::placeholder{color:#ffffff4d}[data-theme=dark] .cal-quick-add-hint{color:#ffffff59}[data-theme=dark] .cal-quick-add-actions{border-top-color:#ffffff0f;background:#ffffff05}[data-theme=dark] .cal-quick-add-details{color:#ffffff80}[data-theme=dark] .cal-quick-add-details:hover{background:#ffffff0f;color:#ffffffd9}[data-theme=dark] .cal-quick-add-save{background:var(--cal-accent);color:#fff}[data-theme=dark] .cal-quick-add-save:hover{background:var(--cal-accent-hover)}[data-theme=dark] .smart-drawer-nl-group .smart-drawer-nl-input{border-color:var(--color-border);background:#ffffff0a;color-scheme:dark}[data-theme=dark] .smart-drawer-nl-group .smart-drawer-nl-input:hover{border-color:#ffffff24}[data-theme=dark] .smart-drawer-nl-group .smart-drawer-nl-input:focus-visible{background:#ffffff0f}[data-theme=dark] .smart-drawer-nl-group.nl-active .smart-drawer-nl-input{border-color:var(--cal-accent);box-shadow:0 0 0 3px rgba(var(--cal-accent-rgb),.15)}[data-theme=dark] .smart-drawer-nl-group.nl-active .smart-drawer-nl-input:focus-visible{border-color:var(--cal-accent);box-shadow:none}[data-theme=dark] .smart-drawer-nl-hint{color:var(--color-text-secondary)}[data-theme=dark] .smart-drawer-ai-spinner{border-color:#00000012;border-top-color:var(--color-text-primary)}[data-theme=dark] .ai-field-badge--high{background:rgba(var(--cal-accent-rgb),.18);color:#90b4a4}[data-theme=dark] .ai-field-badge--inferred{background:#ffab0029;color:var(--color-warning)}[data-theme=dark] .cal-drawer-body .input.ai-just-filled{animation:smart-drawer-field-flash-dark .6s cubic-bezier(.16,1,.3,1)}@keyframes smart-drawer-field-flash-dark{0%{background-color:#00000026}to{background-color:#ffffff0a}}[data-theme=dark] .smart-drawer-details-toggle{color:var(--color-text-secondary)}[data-theme=dark] .smart-drawer-details-toggle:hover{color:var(--color-text-primary)}[data-theme=dark] .smart-drawer-inline-msg{background:#00000012;border-color:#00000026;color:var(--color-text-primary)}[data-theme=dark] .smart-drawer-preview{background:#0000000a;border-color:#00000026;color:var(--color-text-primary)}[data-theme=dark] .nl-bar-label{opacity:.35}[data-theme=dark] .nl-bar-inner{background:#2b2a27e0;border-color:var(--color-border);box-shadow:0 8px 32px #00000080,0 2px 8px #0000004d}[data-theme=dark] .nl-bar-inner:focus-within{box-shadow:none}[data-theme=dark] .nl-result,[data-theme=dark] .nl-clarify,[data-theme=dark] .nl-answer,[data-theme=dark] .nl-query-results,[data-theme=dark] .nl-modify-confirm,[data-theme=dark] .nl-delete-confirm,[data-theme=dark] .nl-slot-suggestions,[data-theme=dark] .nl-study-plan{background:var(--color-card);border-color:var(--color-border);box-shadow:0 4px 20px #0006}[data-theme=dark] .nl-loading{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .nl-error{border-color:#ef444426}[data-theme=dark] .nl-clarify-chip{background:transparent;border-color:rgba(var(--cal-accent-rgb),.25);color:rgba(var(--cal-accent-rgb),1)}[data-theme=dark] .nl-clarify-chip:hover{border-color:var(--cal-accent);background:var(--cal-accent);color:#fff}[data-theme=dark] .nl-clarify-input{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .nl-clarify-input:focus-visible{border-color:var(--cal-accent)}[data-theme=dark] .nl-slot-card{background:#ffffff0a;border-color:var(--color-border)}[data-theme=dark] .nl-slot-card:hover{background:rgba(var(--cal-accent-rgb),.1);border-color:var(--cal-accent)}[data-theme=dark] .nl-bar-shortcut{background:#ffffff0a;border-color:var(--color-border)}[data-theme=dark] .nl-bar-mic:hover{background:#ffffff0f}[data-theme=dark] .nl-bar-mic.nl-mic--listening{background:transparent}[data-theme=dark] .nl-overlay-list--delete .nl-overlay-item:hover{background:#ef44441a}[data-theme=dark] .nl-result-dismiss:hover,[data-theme=dark] .nl-answer-dismiss:hover{background:#ffffff0f}[data-theme=dark] .nl-result-actions .btn-ghost,[data-theme=dark] .nl-result-actions .btn-outline-secondary{border-color:#ffffff1a;color:var(--color-text-secondary)}[data-theme=dark] .nl-result-actions .btn-ghost:hover,[data-theme=dark] .nl-result-actions .btn-outline-secondary:hover{border-color:#fff3;color:var(--color-text-primary);background:#ffffff0f}[data-theme=dark] .nl-undo-toast{background:#2b2a27c7;color:var(--color-text-primary);border-color:#ffffff1a;box-shadow:0 4px 6px -1px #0003,0 12px 24px -4px #0000004d}[data-theme=dark] .nl-undo-toast-action{color:var(--cal-accent, #4A7A68)}[data-theme=dark] .cat-toast{background:#2b2a27c7;color:var(--color-text-primary);border-color:#ffffff1a;box-shadow:0 4px 6px -1px #0003,0 12px 24px -4px #0000004d}[data-theme=dark] .cat-toast-dismiss{color:#ffffff73}[data-theme=dark] .cat-toast-dismiss:hover{color:#fffc;background:#ffffff14}[data-theme=dark] .nl-overlay-changes,[data-theme=dark] .nl-overlay-picker-btn:hover{background:rgba(var(--cal-accent-rgb),.08)}[data-theme=dark] .nl-overlay-picker-btn.active{border-color:var(--cal-accent);background:rgba(var(--cal-accent-rgb),.1)}[data-theme=dark] .nl-overlay-item:hover{background:rgba(var(--cal-accent-rgb),.08)}[data-theme=dark] .nl-shimmer{background:linear-gradient(90deg,#ffffff05 25%,#ffffff0f,#ffffff05 75%);background-size:200% 100%;animation:nl-shimmer 1.5s ease infinite}[data-theme=dark] .nl-card-multi{background:var(--color-bg);border-color:var(--color-border);box-shadow:0 4px 24px #0006,0 1px 4px #0003}[data-theme=dark] .nl-card-header{color:var(--color-text-primary);border-bottom-color:var(--color-border)}[data-theme=dark] .nl-card-header svg{color:var(--cal-accent)}[data-theme=dark] .nl-card-event-row{background:#ffffff0a}[data-theme=dark] .nl-card-event-row+.nl-card-event-row{border-top-color:#ffffff0a}[data-theme=dark] .nl-card-actions{border-top-color:#ffffff0f}[data-theme=dark] .nl-card-event-row:hover{background:rgba(var(--cal-accent-rgb),.1)}[data-theme=dark] .nl-card-event-title{color:var(--color-text-primary)}[data-theme=dark] .nl-card-event-time,[data-theme=dark] .nl-card-event-duration{color:var(--color-text-secondary)}[data-theme=dark] .nl-btn-primary{background:var(--cal-accent);color:#fff;box-shadow:0 2px 8px rgba(var(--cal-accent-rgb),.3)}[data-theme=dark] .nl-btn-primary:hover{background:var(--cal-accent-hover);box-shadow:0 4px 12px rgba(var(--cal-accent-rgb),.4)}[data-theme=dark] .nl-btn-secondary{border-color:var(--color-border);color:var(--color-text-secondary);background:transparent}[data-theme=dark] .nl-btn-secondary:hover{background:#ffffff0a;color:var(--color-text-primary)}[data-theme=dark] .cal-drag-ghost{border-color:#fff3!important;border-left-color:var(--cat-color, var(--color-text-primary))!important;background:#ffffff0a!important}[data-theme=dark] .cal-body .fc-highlight{background:rgba(var(--cal-accent-rgb, 74, 122, 104),.14)!important;border-color:rgba(var(--cal-accent-rgb, 74, 122, 104),.22)!important;box-shadow:inset 0 0 14px rgba(var(--cal-accent-rgb, 74, 122, 104),.07)!important}[data-theme=dark] .cal-body .fc-timegrid .fc-highlight{background:rgba(var(--cal-accent-rgb, 74, 122, 104),.12)!important;border-color:rgba(var(--cal-accent-rgb, 74, 122, 104),.18)!important;box-shadow:inset 0 0 8px rgba(var(--cal-accent-rgb, 74, 122, 104),.08)!important}[data-theme=dark] .cal-body .fc-event.cat-pause{--cat-bg: rgba(148, 163, 184, .08);--cat-bg-hover: rgba(148, 163, 184, .14);--cat-text: var(--color-text-secondary);border-color:#94a3b840!important}[data-theme=dark] .cal-insight-dot{border-color:var(--color-bg)}[data-theme=dark] .cal-popup-insight{border-top-color:#ffffff0f}[data-theme=dark] .cal-popup-insight-row{color:#fde68a}[data-theme=dark] .cal-popup-insight-btn{background:#4a7a6826;border-color:#4a7a6840;color:#90b4a4}[data-theme=dark] .cal-popup-insight-btn:hover{background:#4a7a6840}[data-theme=dark] .nl-card-plan{background:var(--color-card);color:var(--color-text-primary)}[data-theme=dark] .nl-plan-header{background:var(--color-card);border-bottom-color:var(--color-border)}[data-theme=dark] .nl-plan-group{border-bottom-color:var(--color-border)}[data-theme=dark] .nl-plan-group-title{color:var(--color-text-secondary)}[data-theme=dark] .nl-plan-event-row{border-color:var(--color-border)}[data-theme=dark] .nl-plan-event-title{color:var(--color-text-primary)}[data-theme=dark] .nl-plan-event-meta{color:var(--color-text-secondary)}[data-theme=dark] .nl-plan-actions{background:var(--color-card);border-top-color:var(--color-border)}[data-theme=dark] .nl-card-delete .nl-plan-header,[data-theme=dark] .nl-card-multi,[data-theme=dark] .nl-loading{background:var(--color-card)}[data-theme=dark] .cal-main :is(.fc-prev-button,.fc-next-button,.fc-today-button,.fc-filterCats-button,.fc-addEvent-button,.fc-viewDropdown-button,.cal-view-seg-btn,.fc-event,.fc-timegrid-event,.fc-daygrid-more-link,.fc-timegrid-more-link,.fc-popover-close,.cal-drawer-close,.cal-drawer-body .input,.cal-drawer-body textarea,.cal-drawer-body select,.cal-drawer-footer .btn,.cal-drawer-footer .btn-delete,.date-chip,.custom-cat-trigger,.cal-quick-add-save,.cal-quick-add-details,.nl-bar-mic,.nl-bar-submit,.nl-clarify-input,.nl-slot-card,.nl-plan-event-remove,.nl-plan-btn-create,.nl-plan-btn-cancel,.nl-btn-primary,.nl-btn-secondary,.gcal-connect-btn,.gcal-connect-dismiss,.gcal-toolbar-gear-btn,.gcal-connected-sync,.gcal-connected-chevron,.gcal-menu-item):focus-visible,[data-theme=dark] .cal-view-dropdown-menu .cal-view-dropdown-item:focus-visible{outline:2px solid rgba(232,221,212,.95)!important;outline-offset:3px!important;box-shadow:0 0 0 4px #e8ddd42e!important}.cal-list-view{position:absolute;inset:130px 0 0;z-index:2;background:transparent}.cal-list-view__scroll{height:100%;overflow-y:auto;overflow-x:hidden;padding:0 24px 100px;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.cal-list-view__scroll::-webkit-scrollbar{width:6px}.cal-list-view__scroll::-webkit-scrollbar-track{background:transparent}.cal-list-view__scroll::-webkit-scrollbar-thumb{background:#0000001f;border-radius:6px}.cal-list-view__scroll::-webkit-scrollbar-thumb:hover{background:#0003}.cal-lv-day{margin-bottom:2px}.cal-lv-day__header{display:flex;align-items:center;gap:10px;padding:18px 8px 10px;position:sticky;top:0;z-index:2;background:var(--color-card, #fff)}.cal-lv-day__name{font-size:13px;font-weight:600;color:var(--color-text-tertiary, rgb(115, 113, 108));text-transform:capitalize;letter-spacing:.3px}.cal-lv-day__date{font-size:15px;font-weight:650;color:var(--color-text-primary, rgb(19, 19, 19))}.cal-lv-day__badge{font-size:var(--font-size-xs);font-weight:650;color:#fff;background:var(--color-text-primary);padding:2px 10px;border-radius:10px;letter-spacing:.3px}.cal-lv-day--past .cal-lv-day__header{opacity:.45}.cal-lv-day--today .cal-lv-day__header{opacity:1}.cal-lv-day--today .cal-lv-day__date{color:var(--color-text-primary)}.cal-lv-event{--_cat-color: var(--lv-cat-color, #4A90E2);--_cat-bg: rgba(74, 144, 226, .1);--_cat-bg-hover: rgba(74, 144, 226, .18);--_cat-text: #2563a8;display:flex;align-items:stretch;gap:0;padding:0;margin:0 0 6px;border-radius:8px;background:var(--_cat-bg);border:none;cursor:pointer;transition:background .15s ease,transform .15s ease,box-shadow .15s ease;overflow:hidden}.cal-lv-event:hover{background:var(--_cat-bg-hover);box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.cal-lv-event:active{transform:translateY(0);box-shadow:none}.cal-lv-event__bar{width:4px;align-self:stretch;background:var(--_cat-color);border-radius:8px 0 0 8px;flex-shrink:0}.cal-lv-event__time{width:110px;min-width:110px;padding:12px 10px 12px 14px;font-size:13px;font-weight:600;color:var(--_cat-text);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;opacity:.7}.cal-lv-event__body{flex:1;min-width:0;padding:10px 16px 10px 0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.cal-lv-event__title{font-size:14px;font-weight:600;color:var(--_cat-text);line-height:1.35}.cal-lv-event:hover .cal-lv-event__title{opacity:.85}.cal-lv-event__chip{display:inline-flex;align-items:center;font-size:var(--font-size-xs);font-weight:600;padding:1px 8px;border-radius:10px;white-space:nowrap;background:#ffffffa6;color:var(--_cat-text);line-height:1.6}.cal-lv-event__desc{width:100%;font-size:13px;color:var(--_cat-text);opacity:.5;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-lv-event--past .cal-lv-event__time{opacity:.5}.cal-lv-event--past .cal-lv-event__title{opacity:.55}.cal-lv-event--past .cal-lv-event__chip{opacity:.45}.cal-lv-event--past:hover .cal-lv-event__time,.cal-lv-event--past:hover .cal-lv-event__title,.cal-lv-event--past:hover .cal-lv-event__chip{opacity:.8}.cal-lv-empty{text-align:center;padding:80px 20px;font-size:15px;color:var(--color-text-tertiary, rgb(115, 113, 108));font-weight:500}.cal-lv-event.cat-personlig{--_cat-color: #4A90E2;--_cat-bg: rgba(74, 144, 226, .15);--_cat-bg-hover: rgba(74, 144, 226, .22);--_cat-text: #2563a8}.cal-lv-event.cat-aflevering{--_cat-color: #e24668;--_cat-bg: rgba(226, 70, 104, .15);--_cat-bg-hover: rgba(226, 70, 104, .22);--_cat-text: #be3a59}.cal-lv-event.cat-grammatik{--_cat-color: #22c55e;--_cat-bg: rgba(34, 197, 94, .15);--_cat-bg-hover: rgba(34, 197, 94, .22);--_cat-text: #15803d}.cal-lv-event.cat-skole{--_cat-color: #06b6d4;--_cat-bg: rgba(6, 182, 212, .15);--_cat-bg-hover: rgba(6, 182, 212, .22);--_cat-text: #0e7490}.cal-lv-event.cat-proeve{--_cat-color: #8b5cf6;--_cat-bg: rgba(139, 92, 246, .15);--_cat-bg-hover: rgba(139, 92, 246, .22);--_cat-text: #6d28d9}.cal-lv-event.cat-andet{--_cat-color: var(--color-warning);--_cat-bg: rgba(245, 158, 11, .15);--_cat-bg-hover: rgba(245, 158, 11, .22);--_cat-text: #b45309}.cal-lv-event.cat-deadline{--_cat-color: #d946a8;--_cat-bg: rgba(217, 70, 168, .15);--_cat-bg-hover: rgba(217, 70, 168, .22);--_cat-text: #a8348a}.cal-lv-event.cat-moeder{--_cat-color: #0ea5e9;--_cat-bg: rgba(14, 165, 233, .15);--_cat-bg-hover: rgba(14, 165, 233, .22);--_cat-text: #0369a1}.cal-lv-event.cat-arbejde{--_cat-color: #0d9488;--_cat-bg: rgba(13, 148, 136, .15);--_cat-bg-hover: rgba(13, 148, 136, .22);--_cat-text: #115e59}.cal-lv-event.cat-google_cal{--_cat-color: #4285F4;--_cat-bg: rgba(66, 133, 244, .15);--_cat-bg-hover: rgba(66, 133, 244, .22);--_cat-text: #1a65d1}[data-theme=dark] .cal-list-view{background:var(--color-card, #1e1e2d)}[data-theme=dark] .cal-list-view__scroll::-webkit-scrollbar-thumb{background:#ffffff1f}[data-theme=dark] .cal-lv-day__header{background:var(--color-card, #1e1e2d)}[data-theme=dark] .cal-lv-day__name{color:var(--color-text-tertiary)}[data-theme=dark] .cal-lv-day__date{color:var(--color-text-primary)}[data-theme=dark] .cal-lv-day__badge{background:var(--cal-accent);color:#fff}[data-theme=dark] .cal-lv-day--today .cal-lv-day__date{color:var(--cal-accent, #4A7A68)}[data-theme=dark] .cal-lv-event{--_cat-bg: rgba(74, 144, 226, .12);--_cat-bg-hover: rgba(74, 144, 226, .2);--_cat-text: #93c5fd}[data-theme=dark] .cal-lv-event:hover{box-shadow:0 2px 12px #0000004d}[data-theme=dark] .cal-lv-event__chip{background:#00000040}[data-theme=dark] .cal-lv-event__desc{opacity:.4}[data-theme=dark] .cal-lv-event.cat-personlig{--_cat-color: #7ab4f5;--_cat-bg: rgba(74, 144, 226, .16);--_cat-bg-hover: rgba(74, 144, 226, .24);--_cat-text: #93c5fd}[data-theme=dark] .cal-lv-event.cat-aflevering{--_cat-color: #f87171;--_cat-bg: rgba(239, 68, 68, .16);--_cat-bg-hover: rgba(239, 68, 68, .24);--_cat-text: #fca5a5}[data-theme=dark] .cal-lv-event.cat-grammatik{--_cat-color: #4ade80;--_cat-bg: rgba(34, 197, 94, .16);--_cat-bg-hover: rgba(34, 197, 94, .24);--_cat-text: #86efac}[data-theme=dark] .cal-lv-event.cat-skole{--_cat-color: #22d3ee;--_cat-bg: rgba(6, 182, 212, .16);--_cat-bg-hover: rgba(6, 182, 212, .24);--_cat-text: #67e8f9}[data-theme=dark] .cal-lv-event.cat-proeve{--_cat-color: #a78bfa;--_cat-bg: rgba(139, 92, 246, .16);--_cat-bg-hover: rgba(139, 92, 246, .24);--_cat-text: #c4b5fd}[data-theme=dark] .cal-lv-event.cat-andet{--_cat-color: var(--color-warning);--_cat-bg: rgba(245, 158, 11, .16);--_cat-bg-hover: rgba(245, 158, 11, .24);--_cat-text: #fcd34d}[data-theme=dark] .cal-lv-event.cat-deadline{--_cat-color: #fb7185;--_cat-bg: rgba(225, 29, 72, .16);--_cat-bg-hover: rgba(225, 29, 72, .24);--_cat-text: #fda4af}[data-theme=dark] .cal-lv-event.cat-moeder{--_cat-color: #38bdf8;--_cat-bg: rgba(14, 165, 233, .16);--_cat-bg-hover: rgba(14, 165, 233, .24);--_cat-text: #7dd3fc}[data-theme=dark] .cal-lv-event.cat-arbejde{--_cat-color: #2dd4bf;--_cat-bg: rgba(13, 148, 136, .16);--_cat-bg-hover: rgba(13, 148, 136, .24);--_cat-text: #5eead4}[data-theme=dark] .cal-lv-event.cat-google_cal{--_cat-color: #60a5fa;--_cat-bg: rgba(66, 133, 244, .16);--_cat-bg-hover: rgba(66, 133, 244, .24);--_cat-text: #93c5fd}@media(max-width:768px){.cal-list-view__scroll{padding:0 12px calc(var(--mn-bar-height, 60px) + 72px)}.cal-lv-event{min-height:44px}.cal-lv-event__time{width:100px;min-width:100px;font-size:12px;padding:10px 6px 10px 12px;overflow:hidden;text-overflow:ellipsis}.cal-lv-event__body{padding:10px 12px 10px 0}.cal-lv-event__title{font-size:13px}.cal-lv-event__chip{font-size:var(--font-size-xs);padding:1px 6px;min-height:44px;display:inline-flex;align-items:center}.cal-lv-event__desc{font-size:12px}}.fc-view-harness[style*="display: none"]{pointer-events:none!important}.cat-mgmt-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius-md);position:relative;transition:background .12s ease;min-height:44px}.cat-mgmt-row:hover{background:#00000006}.cat-mgmt-dot{width:12px;height:12px;border-radius:var(--radius-full, 50%);flex-shrink:0;box-shadow:0 0 0 2px #0000000f;transition:transform .15s ease,box-shadow .15s ease}.cat-mgmt-row:hover .cat-mgmt-dot{transform:scale(1.1)}.cat-mgmt-name{flex:1;min-width:0;font-size:13px;font-weight:500;color:var(--color-text-primary, rgb(19, 19, 19));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.cat-mgmt-actions{display:flex;align-items:center;gap:2px;margin-left:auto;opacity:0;transform:translate(6px);transition:opacity .15s ease,transform .15s ease;flex-shrink:0}.cat-mgmt-row:hover .cat-mgmt-actions,.cat-mgmt-row:focus-within .cat-mgmt-actions{opacity:1;transform:translate(0)}.cat-mgmt-btn{width:32px;height:32px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-md, 8px);color:var(--color-text-secondary, rgb(60, 60, 58));cursor:pointer;padding:0;transition:background .12s ease,color .12s ease,transform .1s ease}.cat-mgmt-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.cat-mgmt-btn:hover{background:#0000000d;color:var(--color-text-primary, rgb(19, 19, 19))}.cat-mgmt-btn:active{transform:scale(.9);transition:transform .08s ease}.cat-mgmt-btn:focus-visible{outline:none;outline-offset:1px}.cat-mgmt-btn--danger:hover{background:#ef444414;color:var(--color-error)}.cat-mgmt-count{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));background:#0000000a;padding:1px 7px;border-radius:var(--radius-md);line-height:1.4;flex-shrink:0;margin-right:2px;transition:opacity .15s ease}.cat-color-editor{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .2s ease,padding .3s ease;padding:0 8px}.cat-color-editor.expanded{max-height:160px;opacity:1;padding:10px 8px 12px}.cat-color-editor-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;display:block}.cat-color-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cat-color-swatch{width:28px;height:28px;border-radius:var(--radius-full, 50%);cursor:pointer;border:2px solid transparent;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;outline:2px solid transparent;outline-offset:1px;position:relative;flex-shrink:0;padding:0;margin:0}.cat-color-swatch:before{content:"";position:absolute;inset:-8px}.cat-color-swatch:hover{transform:scale(1.2);box-shadow:0 2px 8px #00000026}.cat-color-swatch:active{transform:scale(1.05);transition:transform .08s ease}.cat-color-swatch:focus-visible{outline-color:transparent}.cat-color-swatch.selected{border-color:#fff;outline-color:currentColor;transform:scale(1.1);box-shadow:0 2px 8px #0000001f}.cat-color-swatch.selected:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:5px;border:solid #fff;border-width:0 0 2px 2px;transform:translate(-50%,-60%) rotate(-45deg)}.cat-color-editor-actions{display:flex;gap:8px}.cat-color-editor-actions button{padding:10px 16px;font-size:13px;font-weight:600;font-family:var(--font-family);border-radius:var(--radius-md, 8px);cursor:pointer;border:none;transition:background .15s ease,transform .1s ease;min-height:44px}.cat-color-editor-save{background:var(--color-text-primary);color:#fff}.cat-color-editor-save:hover{opacity:.88}.cat-color-editor-save:active{transform:scale(.96)}.cat-color-editor-cancel{background:var(--color-bg);color:var(--color-text-secondary, rgb(60, 60, 58))}.cat-color-editor-cancel:hover{background:#00000014}.cat-color-editor-cancel:active{transform:scale(.96)}.cat-color-editor-save:disabled{opacity:.6;cursor:not-allowed}.cat-delete-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0000;transition:background .18s ease;padding:16px}.cat-delete-overlay.active{background:#0003}.cat-delete-card{background:var(--color-card, #fff);border-radius:12px;padding:28px 28px 22px;max-width:340px;width:100%;text-align:center;box-shadow:0 12px 40px #0000001f,0 2px 8px #0000000f;transform:scale(.92) translateY(8px);opacity:0;transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .18s ease}.cat-delete-overlay.active .cat-delete-card{transform:scale(1) translateY(0);opacity:1}.cat-delete-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:#ef444414;color:var(--color-error);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}.cat-delete-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cat-delete-title{font-family:var(--font-family);font-size:16px;font-weight:650;color:var(--color-text-primary, rgb(19, 19, 19));margin:0 0 6px;line-height:1.3}.cat-delete-msg{font-family:var(--font-family);font-size:13.5px;font-weight:400;color:var(--color-text-secondary, rgb(60, 60, 58));margin:0 0 8px;line-height:1.5}.cat-delete-event-count{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#b45309;background:#f59e0b14;border:.5px solid rgba(245,158,11,.15);border-radius:var(--radius-md);padding:6px 12px;margin-bottom:18px}.cat-delete-event-count svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2}.cat-delete-preview{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:18px;padding:8px 14px;background:var(--color-bg);border-radius:var(--radius-md)}.cat-delete-preview-dot{width:12px;height:12px;border-radius:var(--radius-full, 50%);flex-shrink:0;box-shadow:0 0 0 2px #0000000f}.cat-delete-preview-name{font-size:14px;font-weight:600;color:var(--color-text-primary, rgb(19, 19, 19))}.cat-delete-reassign{margin-bottom:18px;text-align:left}.cat-delete-reassign-label{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));margin-bottom:6px}.cat-delete-reassign-select{width:100%;padding:10px 36px 10px 12px;min-height:44px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-family);color:var(--color-text-primary, rgb(19, 19, 19));background:var(--color-bg, #f8f8f6);appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23697a8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s ease;box-sizing:border-box}.cat-delete-reassign-select:hover{border-color:#0000002e}.cat-delete-reassign-select:focus-visible{outline:none;border-color:#1f1f1e4d;box-shadow:none}.cat-delete-actions{display:flex;gap:10px}.cat-delete-cancel,.cat-delete-confirm{flex:1;padding:10px 16px;border-radius:var(--radius-md);font-family:var(--font-family);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:background .15s ease,transform .1s ease;min-height:44px}.cat-delete-cancel{background:var(--color-bg);color:var(--color-text-primary, rgb(19, 19, 19))}.cat-delete-cancel:hover{background:#00000014}.cat-delete-cancel:active{transform:scale(.97)}.cat-delete-confirm{background:var(--color-error);color:#fff}.cat-delete-confirm:hover{background:var(--color-danger)}.cat-delete-confirm:active{transform:scale(.97)}.cat-delete-confirm:disabled{opacity:.6;cursor:not-allowed}.cat-delete-confirm.loading{pointer-events:none;position:relative}.cat-delete-confirm.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin:-8px 0 0 -8px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:cat-delete-spin .6s linear infinite}.cat-delete-confirm.loading span{visibility:hidden}@keyframes cat-delete-spin{to{transform:rotate(360deg)}}.cat-badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--font-size-xs);font-weight:600;line-height:1}.cat-badge-dot{width:8px;height:8px;border-radius:var(--radius-full, 50%);flex-shrink:0;box-shadow:0 0 0 1.5px #0000000f}.cat-badge-label{color:var(--color-text-secondary, rgb(60, 60, 58));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.cat-mgmt-rename-input{flex:1;min-width:0;padding:4px 8px;border:.5px solid rgba(0,0,0,.15);border-radius:var(--radius-sm, 6px);font-size:13px;font-family:var(--font-family);color:var(--color-text-primary, rgb(19, 19, 19));background:var(--color-bg, #f8f8f6);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.cat-mgmt-rename-input:focus-visible{border-color:#1f1f1e4d;box-shadow:none}@keyframes cat-toast-enter{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes cat-toast-exit{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(12px)}}.cat-toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%);z-index:201;display:flex;align-items:center;gap:10px;background:#ffffffd1;backdrop-filter:blur(16px) saturate(1.6);-webkit-backdrop-filter:blur(16px) saturate(1.6);color:var(--color-text-primary, rgb(19, 19, 19));font-size:13.5px;font-weight:500;font-family:var(--font-family);padding:10px 20px;border-radius:100px;border:.5px solid rgba(0,0,0,.08);box-shadow:0 4px 6px -1px #00000012,0 12px 24px -4px #0000001f;animation:cat-toast-enter .25s cubic-bezier(.16,1,.3,1) both;white-space:nowrap}.cat-toast--success{border-color:#05966933}.cat-toast--error{border-color:#dc262633}.cat-toast--exiting{animation:cat-toast-exit .2s ease both;pointer-events:none}.cat-toast-icon{font-size:16px;flex-shrink:0;line-height:1}.cat-toast-dismiss{background:none;border:none;color:var(--color-text-secondary, rgb(60, 60, 58));font-size:18px;cursor:pointer;padding:10px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;line-height:1;margin-left:4px;border-radius:100px;transition:background .15s ease,color .15s ease}.cat-toast-dismiss:hover{color:var(--color-text-primary, rgb(19, 19, 19));background:#80808017}@keyframes cat-editor-expand{0%{opacity:0;max-height:0}to{opacity:1;max-height:160px}}@keyframes cat-swatch-pop{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1.1)}}.cat-color-swatch.just-selected{animation:cat-swatch-pop .2s ease}@keyframes cat-row-flash{0%{background:#00000012}to{background:transparent}}.cat-mgmt-row.just-updated{animation:cat-row-flash .8s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .cat-mgmt-row:hover{background:#ffffff0a}[data-theme=dark] .cat-mgmt-name{color:#ffffffe0}[data-theme=dark] .cat-mgmt-dot{box-shadow:0 0 0 2px #ffffff14}[data-theme=dark] .cat-mgmt-btn{color:#ffffff73}[data-theme=dark] .cat-mgmt-btn:hover{background:#ffffff0f;color:#ffffffd9}[data-theme=dark] .cat-mgmt-btn--danger:hover{background:#ef44441f;color:#fca5a5}[data-theme=dark] .cat-mgmt-count{color:#ffffff73;background:#ffffff0f}[data-theme=dark] .cat-color-editor-label{color:#ffffff73}[data-theme=dark] .cat-color-swatch{box-shadow:none}[data-theme=dark] .cat-color-swatch:hover{box-shadow:0 2px 8px #0000004d}[data-theme=dark] .cat-color-swatch.selected{border-color:var(--color-bg);outline-color:currentColor;box-shadow:0 2px 8px #00000026}[data-theme=dark] .cat-color-editor-cancel{background:#ffffff0f;color:#fff9}[data-theme=dark] .cat-color-editor-cancel:hover{background:#ffffff1a}[data-theme=dark] .cat-delete-overlay.active{background:#00000073}[data-theme=dark] .cat-delete-card{background:var(--color-card);box-shadow:0 12px 40px #00000059,0 2px 8px #0003}[data-theme=dark] .cat-delete-icon{background:#ef44441f;color:#fca5a5}[data-theme=dark] .cat-delete-title{color:#ffffffeb}[data-theme=dark] .cat-delete-msg{color:#ffffff8c}[data-theme=dark] .cat-delete-event-count{color:var(--color-warning);background:#f59e0b1f;border-color:#f59e0b33}[data-theme=dark] .cat-delete-preview{background:#ffffff0a}[data-theme=dark] .cat-delete-preview-dot{box-shadow:0 0 0 2px #ffffff14}[data-theme=dark] .cat-delete-preview-name{color:#ffffffe0}[data-theme=dark] .cat-delete-reassign-label{color:#ffffff73}[data-theme=dark] .cat-delete-reassign-select{background:#ffffff0a;border-color:#ffffff14;color:#ffffffe0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}[data-theme=dark] .cat-delete-reassign-select:hover{border-color:#ffffff24}[data-theme=dark] .cat-delete-reassign-select:focus-visible{border-color:#1f1f1e4d;box-shadow:none}[data-theme=dark] .cat-delete-cancel{background:#ffffff14;color:#ffffffd9}[data-theme=dark] .cat-delete-cancel:hover{background:#ffffff1f}[data-theme=dark] .cat-delete-confirm{background:var(--color-danger)}[data-theme=dark] .cat-delete-confirm:hover{background:var(--color-danger-hover)}[data-theme=dark] .cat-badge-dot{box-shadow:0 0 0 1.5px #ffffff14}[data-theme=dark] .cat-badge-label{color:#ffffff8c}[data-theme=dark] .cat-mgmt-rename-input{background:#ffffff0a;border-color:#ffffff1a;color:#ffffffe0}[data-theme=dark] .cat-mgmt-rename-input:focus-visible{border-color:#1f1f1e4d;box-shadow:none}[data-theme=dark] .cat-mgmt-row.just-updated{animation:cat-row-flash-dark .8s cubic-bezier(.16,1,.3,1)}@keyframes cat-row-flash-dark{0%{background:#00000012}to{background:transparent}}@media(max-width:575px){.cat-mgmt-actions{opacity:1;transform:translate(0)}.cat-delete-card{max-width:100%;border-radius:12px 12px 0 0;padding:24px 20px 20px}.cat-delete-overlay{align-items:flex-end}.cat-delete-overlay.active .cat-delete-card{transform:translateY(0);animation:cat-delete-slide-up .25s cubic-bezier(.16,1,.3,1)}@keyframes cat-delete-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cat-delete-cancel,.cat-delete-confirm{min-height:48px;font-size:15px}.cat-toast{left:16px;right:16px;transform:translate(0);bottom:90px}}@media(max-width:767px){.cat-toast{bottom:140px}}.cal-body .fc-event.cat-pause{--cat-color: var(--color-text-tertiary);--cat-bg: rgba(148, 163, 184, .12);--cat-bg-hover: rgba(148, 163, 184, .18);--cat-text: var(--color-text-secondary);background:var(--cat-bg)!important;color:var(--cat-text);border:.5px dashed rgba(148,163,184,.4)!important;opacity:.7}.cal-body .fc-event.cat-pause:hover{background:var(--cat-bg-hover)!important;opacity:.85}.cal-body .fc-event.cat-pause .fc-event-title{font-style:italic}@media(prefers-reduced-motion:reduce){.cat-mgmt-panel *,.cat-toast{animation:none!important;transition:none!important}}.flatpickr-calendar{font-family:var(--font-family);border-radius:var(--radius-lg);border:.5px solid rgba(0,0,0,.08);box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000a;overflow:hidden;width:320px;padding:4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{display:none}.flatpickr-months{padding:8px 4px 4px}.flatpickr-months .flatpickr-month{height:40px}.flatpickr-current-month{font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--color-text-primary, rgb(19, 19, 19));padding-top:6px}.flatpickr-current-month .flatpickr-monthDropdown-months{font-family:var(--font-family);font-size:16px;font-weight:600;appearance:none;-webkit-appearance:none;background:transparent;border:none;cursor:pointer;padding:0 4px;color:inherit}.flatpickr-current-month input.cur-year{font-family:var(--font-family);font-size:16px;font-weight:600;color:inherit}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);padding:0;top:4px;transition:background .15s ease}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{background:#0000000d}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{fill:var(--color-text-primary, rgb(19, 19, 19));width:14px;height:14px}.flatpickr-weekdays{padding:0 2px}span.flatpickr-weekday{font-family:var(--font-family);font-size:12px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.3px}.flatpickr-days{padding:0 2px 4px}.dayContainer{min-width:308px;max-width:308px}.flatpickr-day{font-family:var(--font-family);font-size:16px;font-weight:500;color:var(--color-text-primary, rgb(19, 19, 19));max-width:44px;height:44px;line-height:44px;border-radius:var(--radius-md);margin:0;border:none;transition:background .12s ease,color .12s ease,transform .1s ease}.flatpickr-day:hover{background:#0000000a;border:none;color:var(--color-text-primary)}.flatpickr-day.today{border:2px solid rgba(0,0,0,.15);background:transparent;color:var(--color-text-primary);font-weight:650}.flatpickr-day.today:hover{background:#0000000a;border-color:var(--color-text-primary)}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:var(--color-text-primary);color:#fff;border:none;box-shadow:0 2px 8px #00000026;font-weight:650}.flatpickr-day.selected.today{border:none}.flatpickr-day.inRange{background:#00000012;border:none;box-shadow:none;color:var(--color-text-primary)}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{color:#8f8e8a;background:transparent;border:none;cursor:not-allowed}.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:#8f8e8a}.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover{background:#00000008;color:var(--color-text-tertiary)}.flatpickr-day:active:not(.flatpickr-disabled){transform:scale(.92)}.flatpickr-input,input.flatpickr-input{font-family:var(--font-family);font-size:16px;color:var(--color-text-primary, rgb(19, 19, 19));background:var(--color-bg, #f8f8f6);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);height:48px;padding:10px 14px;width:100%;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;cursor:pointer}.flatpickr-input:hover,input.flatpickr-input:hover{border-color:#0000002e}.flatpickr-input:focus-visible,input.flatpickr-input:focus-visible{outline:none;box-shadow:none;background:var(--color-card, #fff)}.flatpickr-input[readonly]{cursor:pointer}.flatpickr-time{border-top:.5px solid rgba(0,0,0,.08);max-height:48px}.flatpickr-time input{font-family:var(--font-family);font-size:16px;font-weight:600;color:var(--color-text-primary, rgb(19, 19, 19))}.flatpickr-time .flatpickr-am-pm{font-family:var(--font-family);font-weight:600}.flatpickr-time .flatpickr-time-separator{color:var(--color-text-tertiary)}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover{background:#0000000a}.flatpickr-time input:focus-visible{background:#0000000a;outline:none}.flatpickr-calendar .numInputWrapper span{border:none}.flatpickr-calendar .numInputWrapper span:hover{background:#0000000a}.flatpickr-calendar .numInputWrapper span:after{border-bottom-color:var(--color-text-primary, rgb(19, 19, 19))}.flatpickr-calendar .numInputWrapper span.arrowDown:after{border-top-color:var(--color-text-primary, rgb(19, 19, 19))}select.time-select{font-family:var(--font-family);font-size:16px;font-weight:500;color:var(--color-text-primary, rgb(19, 19, 19));background-color:var(--color-bg, #f8f8f6);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);height:48px;padding:10px 40px 10px 14px;width:100%;box-sizing:border-box;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23697a8d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6 8 10 12 6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}select.time-select:hover{border-color:#0000002e}select.time-select:focus-visible{outline:none;box-shadow:none;border-color:#1f1f1e4d;background-color:var(--color-card, #fff)}select.time-select:disabled{opacity:.5;cursor:not-allowed;background-color:#00000008}select.time-select option{font-family:var(--font-family);font-size:16px;padding:8px 14px;color:var(--color-text-primary, rgb(19, 19, 19))}select.time-select option:checked{background:linear-gradient(0deg,var(--color-text-primary) 0%,var(--color-text-primary) 100%);color:#fff}.date-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.date-chip{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-family);font-size:14px;font-weight:600;color:var(--color-text-secondary, rgb(60, 60, 58));background:var(--color-bg, #f8f8f6);border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-pill);height:44px;padding:0 16px;min-width:44px;cursor:pointer;user-select:none;transition:all .15s ease;white-space:nowrap}.date-chip:hover{background:#0000000f;border-color:#00000026;color:var(--color-text-primary, rgb(19, 19, 19))}.date-chip:active{transform:scale(.95)}.date-chip.active,.date-chip[aria-pressed=true]{background:var(--color-text-primary);color:#fff;border-color:var(--color-text-primary);box-shadow:0 2px 8px #00000026}.date-chip.active:hover,.date-chip[aria-pressed=true]:hover{background:#323230}.date-chip:focus-visible{outline:none;outline-offset:2px}.duration-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.duration-chips .date-chip{font-size:13px;height:44px;padding:0 14px}[data-theme=dark] .flatpickr-calendar{background:var(--color-card);border-color:#ffffff14;box-shadow:0 8px 32px #00000059,0 2px 8px #00000026}[data-theme=dark] .flatpickr-current-month,[data-theme=dark] .flatpickr-current-month .flatpickr-monthDropdown-months,[data-theme=dark] .flatpickr-current-month input.cur-year{color:var(--color-text-primary)}[data-theme=dark] .flatpickr-months .flatpickr-prev-month:hover,[data-theme=dark] .flatpickr-months .flatpickr-next-month:hover{background:#ffffff0f}[data-theme=dark] .flatpickr-months .flatpickr-prev-month svg,[data-theme=dark] .flatpickr-months .flatpickr-next-month svg{fill:var(--color-text-primary)}[data-theme=dark] span.flatpickr-weekday,[data-theme=dark] .flatpickr-day{color:var(--color-text-secondary)}[data-theme=dark] .flatpickr-day:hover{background:#00000012;color:var(--color-text-primary)}[data-theme=dark] .flatpickr-day.today{border-color:#00000026;color:var(--color-text-primary)}[data-theme=dark] .flatpickr-day.today:hover{background:#00000012}[data-theme=dark] .flatpickr-day.selected,[data-theme=dark] .flatpickr-day.startRange,[data-theme=dark] .flatpickr-day.endRange,[data-theme=dark] .flatpickr-day.selected:hover,[data-theme=dark] .flatpickr-day.startRange:hover,[data-theme=dark] .flatpickr-day.endRange:hover{background:var(--cal-accent);color:#fff;box-shadow:0 2px 8px #00000026}[data-theme=dark] .flatpickr-day.inRange{background:#00000012;color:var(--color-text-primary)}[data-theme=dark] .flatpickr-day.flatpickr-disabled,[data-theme=dark] .flatpickr-day.flatpickr-disabled:hover{color:#ffffff26}[data-theme=dark] .flatpickr-day.prevMonthDay,[data-theme=dark] .flatpickr-day.nextMonthDay{color:#fff3}[data-theme=dark] .flatpickr-day.prevMonthDay:hover,[data-theme=dark] .flatpickr-day.nextMonthDay:hover{background:#ffffff0a;color:#ffffff59}[data-theme=dark] .flatpickr-time{border-top-color:#ffffff0f}[data-theme=dark] .flatpickr-time input,[data-theme=dark] .flatpickr-time .flatpickr-am-pm{color:var(--color-text-primary)}[data-theme=dark] .flatpickr-time .flatpickr-time-separator{color:var(--color-text-secondary)}[data-theme=dark] .flatpickr-time input:hover,[data-theme=dark] .flatpickr-time .flatpickr-am-pm:hover{background:#ffffff0f}[data-theme=dark] .flatpickr-time input:focus-visible{background:#ffffff0f}[data-theme=dark] .flatpickr-calendar .numInputWrapper span:hover{background:#ffffff14}[data-theme=dark] .flatpickr-calendar .numInputWrapper span:after{border-bottom-color:var(--color-text-primary)}[data-theme=dark] .flatpickr-calendar .numInputWrapper span.arrowDown:after{border-top-color:var(--color-text-primary)}[data-theme=dark] .flatpickr-input,[data-theme=dark] input.flatpickr-input{background:#ffffff0a;border-color:#ffffff14;color:var(--color-text-primary)}[data-theme=dark] .flatpickr-input:hover,[data-theme=dark] input.flatpickr-input:hover{border-color:#ffffff26}[data-theme=dark] .flatpickr-input:focus-visible,[data-theme=dark] input.flatpickr-input:focus-visible{box-shadow:none;background:#ffffff0f}[data-theme=dark] select.time-select{background-color:#ffffff0a;border-color:#ffffff14;color:var(--color-text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6 8 10 12 6'/%3E%3C/svg%3E")}[data-theme=dark] select.time-select:hover{border-color:#ffffff26}[data-theme=dark] select.time-select:focus-visible{box-shadow:none;border-color:#00000026;background-color:#ffffff0f}[data-theme=dark] select.time-select:disabled{background-color:#ffffff05;border-color:#ffffff0a}[data-theme=dark] .date-chip{color:#fff9;background:#ffffff0f;border-color:#ffffff1a}[data-theme=dark] .date-chip:hover{background:#ffffff1a;border-color:#ffffff26;color:#fffc}[data-theme=dark] .date-chip.active,[data-theme=dark] .date-chip[aria-pressed=true]{background:var(--cal-accent);color:#fff;border-color:var(--color-text-primary);box-shadow:0 2px 8px #00000026}.drawer-form .input-label{display:block;font-family:var(--font-family);font-size:14px;font-weight:500;color:var(--color-text-tertiary);margin-bottom:6px}.drawer-form .input,.drawer-form select.time-select,.drawer-form .flatpickr-input,.drawer-form input.flatpickr-input{font-size:16px;min-height:48px}.cal-drawer-body .flatpickr-input,.cal-drawer-body input.flatpickr-input{font-size:14px;height:auto;min-height:unset;padding:10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);background:var(--color-bg, #f8f8f6);color:var(--color-text-primary);font-family:var(--font-family);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.cal-drawer-body .flatpickr-input:hover,.cal-drawer-body input.flatpickr-input:hover{border-color:#0000002e}.cal-drawer-body .flatpickr-input:focus-visible,.cal-drawer-body input.flatpickr-input:focus-visible{box-shadow:none;background:var(--color-card);outline:none}.cal-drawer-body select.time-select{font-size:14px;height:auto;min-height:unset;padding:10px 40px 10px 14px;border:.5px solid rgba(0,0,0,.08);border-radius:var(--radius-md);background-color:var(--color-bg, #f8f8f6);color:var(--color-text-primary);font-family:var(--font-family);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.cal-drawer-body select.time-select:hover{border-color:#0000002e}.cal-drawer-body select.time-select:focus-visible{box-shadow:none;background-color:var(--color-card);outline:none}[data-theme=dark] .cal-drawer-body .flatpickr-input,[data-theme=dark] .cal-drawer-body input.flatpickr-input{background:#ffffff0a;border-color:#ffffff14;color:var(--color-text-primary)}[data-theme=dark] .cal-drawer-body .flatpickr-input:hover,[data-theme=dark] .cal-drawer-body input.flatpickr-input:hover{border-color:#ffffff26}[data-theme=dark] .cal-drawer-body select.time-select{background-color:#ffffff0a;border-color:#ffffff14;color:var(--color-text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6 8 10 12 6'/%3E%3C/svg%3E")}[data-theme=dark] .cal-drawer-body select.time-select:hover{border-color:#ffffff26}[data-theme=dark] .drawer-form .input-label{color:var(--color-text-secondary)}.gcal-connect-wrap{display:inline-flex;align-items:center;gap:0;margin-right:10px}.gcal-connect-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:.5px solid rgba(0,0,0,.08);border-right:none;border-radius:6px 0 0 6px;background:var(--color-card);color:var(--color-text-primary);font-size:12px;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:background .15s,border-color .15s;min-height:30px;white-space:nowrap}.gcal-connect-btn:hover{background:#00000008}.gcal-connect-btn:disabled{opacity:.6;cursor:wait}.gcal-connect-dismiss{display:inline-flex;align-items:center;justify-content:center;width:26px;min-height:30px;padding:0;border:.5px solid rgba(0,0,0,.08);border-radius:0 6px 6px 0;background:var(--color-card);color:var(--color-text-secondary);cursor:pointer;transition:color .15s,background .15s}.gcal-connect-dismiss:hover{color:var(--color-text-primary);background:#0000000a}.gcal-google-icon{flex-shrink:0}.gcal-toolbar-gear-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:.5px solid rgba(0,0,0,.08);border-radius:6px;background:var(--color-card);cursor:pointer;transition:background .15s,opacity .15s;opacity:.6;margin-right:10px}.gcal-toolbar-gear-btn:hover{opacity:1;background:#00000008}.gcal-connected-wrap{display:inline-flex;align-items:center;position:relative}.gcal-connected-sync{display:inline-flex;align-items:center;gap:7px;padding:0 14px;border:1px solid transparent;border-radius:10px;background:transparent;color:#8a7e72;font-size:13.5px;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:background-color .15s ease;height:36px;line-height:34px;white-space:nowrap}.gcal-connected-sync:hover{background-color:#5c4d430f}.gcal-connected-menu{position:absolute;top:100%;right:0;margin-top:4px;background:#fffdfa;border:1px solid #E4DCD4;border-radius:10px;box-shadow:0 8px 24px #3a2f261a,0 2px 6px #3a2f260a;padding:4px;min-width:160px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s,visibility .15s,transform .15s;z-index:100}.gcal-menu-open .gcal-connected-menu{opacity:1;visibility:visible;transform:translateY(0)}.gcal-menu-item{display:block;width:100%;padding:8px 12px;border:none;border-radius:6px;background:transparent;color:#5c4d43;font-size:13.5px;font-weight:500;font-family:var(--font-family);cursor:pointer;text-align:left;transition:background .12s}.gcal-menu-item:hover{background:#5c4d430f}.gcal-menu-item--danger{color:#a6594b}.gcal-menu-item--danger:hover{background:#a6594b14}.gcal-menu-item:focus-visible{outline:2px solid #4A7A68!important;outline-offset:-2px!important}.gcal-menu-item--danger:focus-visible{outline:2px solid #A6594B!important;outline-offset:-2px!important}.gcal-disconnect-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#3a2f2600;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:background .18s,backdrop-filter .18s,-webkit-backdrop-filter .18s}.gcal-disconnect-overlay.active{background:#3a2f266b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.gcal-disconnect-card{background:#fffdfa;border:1px solid #E4DCD4;border-radius:14px;padding:22px 22px 18px;width:360px;max-width:calc(100vw - 32px);box-shadow:0 12px 32px #3a2f261f,0 2px 6px #3a2f260a;text-align:center;color:#5c4d43;font-family:Inter,system-ui,-apple-system,sans-serif;transform:scale(.95);opacity:0;transition:transform .18s,opacity .18s}.gcal-disconnect-overlay.active .gcal-disconnect-card{transform:scale(1);opacity:1}.gcal-disconnect-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#9a8e821a;color:#9a8e82;margin:0 auto 14px}.gcal-disconnect-icon svg{width:20px;height:20px;stroke-width:1.8}.gcal-disconnect-title{font-size:17px;font-weight:650;color:#3a2f26;line-height:1.3;margin:0 0 12px}.gcal-disconnect-list{text-align:left;margin:0 0 18px;padding:0;list-style:none;font-size:13px;color:#5c4d43;line-height:1.6}.gcal-disconnect-list li{margin:0 0 4px;padding-left:16px;position:relative}.gcal-disconnect-list li:before{content:"";position:absolute;left:0;top:.65em;width:8px;height:1px;background:#c8bdb2}.gcal-disconnect-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #F2EBE3;padding-top:14px;margin-top:16px}.gcal-disconnect-cancel,.gcal-disconnect-confirm{padding:8px 16px;border:1px solid #E4DCD4;border-radius:14px;background:transparent;color:#5c4d43;font-size:13.5px;font-weight:500;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.gcal-disconnect-cancel:hover{color:#4a7a68;border-color:#4a7a68}.gcal-disconnect-confirm:hover{color:#a6594b;border-color:#a6594b}.gcal-disconnect-cancel:focus-visible{outline:2px solid #4A7A68!important;outline-offset:2px!important}.gcal-disconnect-confirm:focus-visible{outline:2px solid #A6594B!important;outline-offset:2px!important}.gcal-disconnect-confirm.is-loading{color:#c8bdb2;cursor:progress;pointer-events:none}@media(prefers-reduced-motion:reduce){.gcal-disconnect-cancel,.gcal-disconnect-confirm,.gcal-disconnect-overlay,.gcal-disconnect-card{transition:none}}[data-theme=dark] .gcal-connect-btn{background:var(--color-card);border-color:#00000014;color:var(--color-text-primary)}[data-theme=dark] .gcal-connect-btn:hover{background:#ffffff0a}[data-theme=dark] .gcal-connect-dismiss{background:var(--color-card);border-color:#00000014;color:var(--color-text-secondary)}[data-theme=dark] .gcal-connect-dismiss:hover{color:var(--color-text-primary);background:#ffffff0f}[data-theme=dark] .gcal-toolbar-gear-btn{background:var(--color-card);border-color:#00000014}[data-theme=dark] .gcal-toolbar-gear-btn:hover{background:#ffffff0a}[data-theme=dark] .gcal-connected-sync{color:var(--color-text-secondary)}[data-theme=dark] .gcal-connected-sync:hover{background-color:#ffffff0f}[data-theme=dark] .gcal-connected-menu{background:var(--color-card, #2A2520);border-color:#ffffff14;box-shadow:0 8px 24px #0000003d}[data-theme=dark] .gcal-menu-item{color:var(--color-text-primary)}[data-theme=dark] .gcal-menu-item:hover{background:#ffffff0f}[data-theme=dark] .gcal-menu-item--danger{color:#d4816f}[data-theme=dark] .gcal-menu-item--danger:hover{background:#d4816f1a}[data-theme=dark] .gcal-disconnect-card{background:#fffdfa;border-color:#e4dcd4;box-shadow:0 12px 32px #3a2f262e,0 2px 6px #3a2f260f}[data-theme=dark] .gcal-disconnect-cancel{border-color:#e4dcd4}@media(max-width:767px){.gcal-connect-label{display:none}.gcal-connect-btn{padding:5px 7px}.gcal-toolbar-gear-btn{width:44px;height:44px}.gcal-connected-label{display:none}.gcal-connected-sync{padding:5px 7px;min-height:44px}.gcal-connected-menu{left:0;right:auto;min-width:140px}}.gcal-connect-btn:focus-visible,.gcal-connect-dismiss:focus-visible,.gcal-toolbar-gear-btn:focus-visible,.gcal-connected-sync:focus-visible{outline:2px solid #4A7A68!important;outline-offset:2px!important}@media(prefers-reduced-motion:reduce){.gcal-connected-sync,.gcal-connected-menu,.gcal-menu-item{transition:none}}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event{inset:3px 4px!important;border:none!important;border-left:5px solid var(--cat-color, var(--color-text-primary))!important;border-radius:0 8px 8px 0!important;background:var(--cat-bg, rgba(0, 0, 0, .08))!important;box-shadow:0 1px 4px #00000012,0 0 0 1px #00000008;padding:5px 10px!important;font-family:var(--font-family)!important;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;overflow:hidden!important}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event .fc-event-main{padding:0!important;color:var(--cat-text, rgb(19, 19, 19));overflow:hidden}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event:hover{transform:translate(2px);box-shadow:0 4px 14px #0000001a,0 1px 4px #0000000f;background:var(--cat-bg-hover, rgba(0, 0, 0, .15))!important;z-index:10!important}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event:active{transform:scale(.98);transition-duration:.08s}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event:focus-visible{outline:none;outline-offset:2px}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event-harness-inset .fc-timegrid-event{opacity:.92;box-shadow:-2px 0 6px #00000014,0 1px 4px #0000000d}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event-harness-inset .fc-timegrid-event:hover{opacity:1}.cal-tg-event{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;height:100%;font-family:var(--font-family)}.cal-tg-event--short{flex-direction:row;align-items:center}.cal-tg-line{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.cal-tg-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;display:inline-block;box-shadow:0 0 0 2px #ffffffb3}.cal-tg-time{font-size:12px;font-weight:650;opacity:.65;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums;letter-spacing:.3px}.cal-tg-title{font-size:14px;font-weight:650;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cal-tg-event--short .cal-tg-title{margin-left:4px;font-size:13px}.cal-tg-event--long .cal-tg-title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link{display:inline-flex!important;align-items:center;justify-content:center;min-height:28px;min-width:44px;padding:4px 12px;font-size:13px!important;font-weight:650!important;color:#fff!important;background:var(--color-text-primary)!important;border-radius:12px;box-shadow:0 2px 8px #00000026;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;text-decoration:none!important;line-height:1.2;z-index:5}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link:hover{background:#323230!important;transform:translateY(-1px) scale(1.05);box-shadow:0 4px 14px #00000026}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link:active{transform:scale(.95);transition-duration:.08s}.fc-view-harness .fc-timeGridWeek-view .fc-timegrid-event{inset:1px 2px!important}.fc-view-harness .fc-timeGridWeek-view .fc-timegrid-more-link{display:inline-flex!important;align-items:center;justify-content:center;min-height:22px;padding:2px 8px;font-size:var(--font-size-xs)!important;font-weight:650!important;color:#fff!important;background:var(--color-text-primary)!important;border-radius:11px;box-shadow:0 1px 4px #00000026;cursor:pointer;text-decoration:none!important}.fc-popover.fc-more-popover{border:.5px solid rgba(0,0,0,.08)!important;border-radius:12px!important;background:var(--color-card)!important;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f!important;overflow:hidden;min-width:240px;max-width:340px;font-family:var(--font-family);animation:cal-popover-in .18s ease;z-index:100!important}@keyframes cal-popover-in{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.fc-popover.fc-more-popover .fc-popover-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 10px!important;border-bottom:.5px solid rgba(0,0,0,.08);background:var(--color-bg)!important}.fc-popover.fc-more-popover .fc-popover-title{font-size:15px!important;font-weight:650!important;color:var(--color-text-primary)}.fc-popover.fc-more-popover .fc-popover-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--color-text-tertiary);font-size:18px;cursor:pointer;transition:background .15s ease}.fc-popover.fc-more-popover .fc-popover-close:hover{background:#0000000f;color:var(--color-text-primary)}.fc-popover.fc-more-popover .fc-popover-body{padding:8px 10px 10px!important;max-height:320px;overflow-y:auto}.fc-popover.fc-more-popover .fc-popover-body::-webkit-scrollbar{width:4px}.fc-popover.fc-more-popover .fc-popover-body::-webkit-scrollbar-track{background:transparent}.fc-popover.fc-more-popover .fc-popover-body::-webkit-scrollbar-thumb{background:#0000001a;border-radius:6px}.fc-popover.fc-more-popover .fc-event{border:none!important;border-left:4px solid var(--cat-color, var(--color-text-primary))!important;border-radius:6px!important;background:var(--cat-bg, rgba(0, 0, 0, .08))!important;padding:6px 10px!important;margin:4px 0!important;cursor:pointer;transition:background .12s ease,transform .12s ease;display:block!important;min-height:32px}.fc-popover.fc-more-popover .fc-event:hover{background:var(--cat-bg-hover, rgba(0, 0, 0, .15))!important;transform:translate(2px)}.fc-popover.fc-more-popover .fc-event .fc-event-main{color:var(--cat-text, rgb(19, 19, 19));font-weight:600!important;font-size:13px!important}.fc-popover.fc-more-popover .fc-daygrid-event-dot{display:none!important}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-event{box-shadow:0 1px 4px #00000026,0 0 0 1px #ffffff0a}[data-theme=dark] .fc-view-harness .fc-timeGridDay-view .fc-timegrid-event:hover{box-shadow:0 4px 16px #00000026}[data-theme=dark] .cal-tg-dot{box-shadow:0 0 0 2px #0006}[data-theme=dark] .fc-popover.fc-more-popover{background:var(--color-card, #171512)!important;border-color:#ffffff14;box-shadow:0 8px 32px #00000026,0 2px 8px #00000026!important}[data-theme=dark] .fc-popover.fc-more-popover .fc-popover-header{background:#ffffff08!important;border-bottom-color:#ffffff0f}[data-theme=dark] .fc-popover.fc-more-popover .fc-popover-title{color:var(--color-text-primary)}[data-theme=dark] .fc-popover.fc-more-popover .fc-popover-close{color:#ffffff80}[data-theme=dark] .fc-popover.fc-more-popover .fc-popover-close:hover{background:#ffffff14;color:var(--color-text-primary)}@media(prefers-reduced-motion:reduce){.fc-popover.fc-more-popover{animation:none!important}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event,.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link,.fc-popover.fc-more-popover .fc-event{transition:none!important}}@media(max-width:767px){.cal-tg-title{font-size:13px}.cal-tg-time{font-size:var(--font-size-xs)}.cal-tg-dot{width:7px;height:7px}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link{min-width:36px;min-height:24px;padding:3px 8px;font-size:12px!important;border-radius:12px}.fc-view-harness .fc-timeGridWeek-view .fc-timegrid-event{padding:2px 4px!important}.fc-view-harness .fc-timeGridWeek-view .cal-tg-title,.fc-view-harness .fc-timeGridWeek-view .cal-tg-time{font-size:var(--font-size-xs)}.fc-view-harness .fc-timeGridWeek-view .cal-tg-dot{width:6px;height:6px}.fc-popover.fc-more-popover{min-width:200px;max-width:calc(100vw - 24px)!important}}@media(max-width:479px){.cal-tg-title{font-size:14px}.cal-tg-time{font-size:12px}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-more-link{min-width:32px;min-height:22px;padding:2px 8px;font-size:var(--font-size-xs)!important;border-radius:11px;box-shadow:0 1px 4px #00000026}.fc-view-harness .fc-timeGridDay-view .fc-timegrid-event{left:2px!important;right:2px!important}.fc-view-harness .fc-timeGridWeek-view .cal-tg-dot{display:none}.fc-view-harness .fc-timeGridWeek-view .cal-tg-line{gap:2px}.fc-view-harness .fc-timeGridWeek-view .cal-tg-time,.fc-view-harness .fc-timeGridWeek-view .cal-tg-title{font-size:var(--font-size-xs)}.fc-view-harness .fc-timeGridWeek-view .fc-timegrid-event{padding:1px 2px!important;border-left-width:3px!important}.fc-view-harness .fc-timeGridWeek-view .fc-timegrid-more-link{min-height:18px;padding:1px 5px;font-size:var(--font-size-xs)!important;border-radius:9px}.fc-popover.fc-more-popover{min-width:180px;max-width:calc(100vw - 16px)!important;left:8px!important;right:8px!important}}
