@charset "UTF-8";.cal-month-view .cal-header{text-align:center;font-weight:bolder}.cal-month-view .cal-header .cal-cell{padding:5px 0;overflow:hidden;text-overflow:ellipsis;display:block;white-space:nowrap}.cal-month-view .cal-days{border:1px solid;border-bottom:0}.cal-month-view .cal-cell-top{min-height:78px;flex:1}.cal-month-view .cal-cell-row{display:flex}.cal-month-view .cal-cell{float:left;flex:1;display:flex;flex-direction:column;align-items:stretch}.cal-month-view .cal-cell .cal-event{pointer-events:all!important}.cal-month-view .cal-day-cell{min-height:100px}.cal-month-view .cal-day-cell:not(:last-child){border-right:1px solid}[dir=rtl] .cal-month-view .cal-day-cell:not(:last-child){border-right:initial;border-left:1px solid}.cal-month-view .cal-days .cal-cell-row{border-bottom:1px solid}.cal-month-view .cal-day-badge{margin-top:18px;margin-left:10px;display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:middle;border-radius:10px;float:left}.cal-month-view .cal-day-number{font-size:1.2em;font-weight:400;opacity:.5;margin-top:15px;margin-right:15px;float:right;margin-bottom:10px}.cal-month-view .cal-events{flex:1;align-items:flex-end;margin:3px;line-height:10px;display:flex;flex-wrap:wrap}.cal-month-view .cal-event{width:10px;height:10px;border-radius:50%;display:inline-block;margin:2px}.cal-month-view .cal-day-cell.cal-in-month.cal-has-events{cursor:pointer}.cal-month-view .cal-day-cell.cal-out-month .cal-day-number{opacity:.1;cursor:default}.cal-month-view .cal-day-cell.cal-today .cal-day-number{font-size:1.9em}.cal-month-view .cal-open-day-events{padding:15px;overflow:hidden;animation:cal-slide-down .15s ease-in}.cal-month-view .cal-open-day-events.cal-open-day-events-closing{animation:cal-slide-up .15s ease-out}@media(prefers-reduced-motion:reduce){.cal-month-view .cal-open-day-events.cal-open-day-events-closing{animation:none}}@media(prefers-reduced-motion:reduce){.cal-month-view .cal-open-day-events{animation:none}}@keyframes cal-slide-down{0%{height:0;padding-top:0;padding-bottom:0}to{height:auto;padding-top:15px;padding-bottom:15px}}@keyframes cal-slide-up{0%{height:auto;padding-top:15px;padding-bottom:15px}to{height:0;padding-top:0;padding-bottom:0}}.cal-month-view .cal-open-day-events .cal-event{position:relative;top:2px}.cal-month-view .cal-out-month .cal-day-badge,.cal-month-view .cal-out-month .cal-event{opacity:.3}.cal-month-view .cal-draggable{cursor:move}.cal-month-view .cal-drag-active *{pointer-events:none}.cal-month-view .cal-event-title{cursor:pointer}.cal-month-view .cal-event-title:hover{text-decoration:underline}.cal-month-view{background-color:#fff}.cal-month-view .cal-cell-row:hover{background-color:#fafafa}.cal-month-view .cal-cell-row .cal-cell:hover,.cal-month-view .cal-cell.cal-has-events.cal-open{background-color:#ededed}.cal-month-view .cal-days{border-color:#e1e1e1}.cal-month-view .cal-day-cell:not(:last-child){border-right-color:#e1e1e1}[dir=rtl] .cal-month-view .cal-day-cell:not(:last-child){border-right-color:initial;border-left-color:#e1e1e1}.cal-month-view .cal-days .cal-cell-row{border-bottom-color:#e1e1e1}.cal-month-view .cal-day-badge{background-color:#b94a48;color:#fff}.cal-month-view .cal-event{background-color:#1e90ff;border-color:#d1e8ff;color:#fff}.cal-month-view .cal-day-cell.cal-weekend .cal-day-number{color:#8b0000}.cal-month-view .cal-day-cell.cal-today{background-color:#e8fde7}.cal-month-view .cal-day-cell.cal-drag-over{background-color:#e0e0e0!important}.cal-month-view .cal-open-day-events{color:#fff;background-color:#555;box-shadow:inset 0 0 15px #00000080}.cal-week-view *{box-sizing:border-box}.cal-week-view .cal-day-headers{display:flex;padding-left:70px;border:1px solid}[dir=rtl] .cal-week-view .cal-day-headers{padding-left:initial;padding-right:70px}.cal-week-view .cal-day-headers .cal-header{flex:1;text-align:center;padding:5px}.cal-week-view .cal-day-headers .cal-header:not(:last-child){border-right:1px solid}[dir=rtl] .cal-week-view .cal-day-headers .cal-header:not(:last-child){border-right:initial;border-left:1px solid}.cal-week-view .cal-day-headers .cal-header:first-child{border-left:1px solid}[dir=rtl] .cal-week-view .cal-day-headers .cal-header:first-child{border-left:initial;border-right:1px solid}.cal-week-view .cal-day-headers span{font-weight:400;opacity:.5}.cal-week-view .cal-day-column{flex-grow:1;border-left:solid 1px}[dir=rtl] .cal-week-view .cal-day-column{border-left:initial;border-right:solid 1px}.cal-week-view .cal-event{font-size:12px;border:1px solid;direction:ltr}.cal-week-view .cal-time-label-column{width:70px;height:100%}.cal-week-view .cal-current-time-marker{position:absolute;width:100%;height:2px;z-index:2}.cal-week-view .cal-all-day-events{border:solid 1px;border-top:0;border-bottom-width:3px;padding-top:3px;position:relative}.cal-week-view .cal-all-day-events .cal-day-columns{height:100%;width:100%;display:flex;position:absolute;top:0;z-index:0}.cal-week-view .cal-all-day-events .cal-events-row{position:relative;height:31px;margin-left:70px}[dir=rtl] .cal-week-view .cal-all-day-events .cal-events-row{margin-left:initial;margin-right:70px}.cal-week-view .cal-all-day-events .cal-event-container{display:inline-block;position:absolute}.cal-week-view .cal-all-day-events .cal-event-container.resize-active{z-index:1;pointer-events:none}.cal-week-view .cal-all-day-events .cal-event{padding:0 5px;margin-left:2px;margin-right:2px;height:28px;line-height:28px}.cal-week-view .cal-all-day-events .cal-starts-within-week .cal-event{border-top-left-radius:5px;border-bottom-left-radius:5px}[dir=rtl] .cal-week-view .cal-all-day-events .cal-starts-within-week .cal-event{border-top-left-radius:initial;border-bottom-left-radius:initial;border-top-right-radius:5px!important;border-bottom-right-radius:5px!important}.cal-week-view .cal-all-day-events .cal-ends-within-week .cal-event{border-top-right-radius:5px;border-bottom-right-radius:5px}[dir=rtl] .cal-week-view .cal-all-day-events .cal-ends-within-week .cal-event{border-top-right-radius:initial;border-bottom-right-radius:initial;border-top-left-radius:5px;border-bottom-left-radius:5px}.cal-week-view .cal-all-day-events .cal-time-label-column{display:flex;align-items:center;justify-content:center;font-size:14px}.cal-week-view .cal-all-day-events .cal-resize-handle{width:6px;height:100%;cursor:col-resize;position:absolute;top:0}.cal-week-view .cal-all-day-events .cal-resize-handle.cal-resize-handle-after-end{right:0}[dir=rtl] .cal-week-view .cal-all-day-events .cal-resize-handle.cal-resize-handle-after-end{right:initial;left:0}.cal-week-view .cal-event,.cal-week-view .cal-header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-week-view .cal-drag-active{pointer-events:none;z-index:1}.cal-week-view .cal-drag-active *{pointer-events:none}.cal-week-view .cal-time-events{position:relative;border:solid 1px;border-top:0;display:flex}.cal-week-view .cal-time-events .cal-day-columns{display:flex;flex-grow:1}.cal-week-view .cal-time-events .cal-day-column,.cal-week-view .cal-time-events .cal-events-container{position:relative}.cal-week-view .cal-time-events .cal-event-container{position:absolute;z-index:1}.cal-week-view .cal-time-events .cal-event{width:calc(100% - 2px);height:calc(100% - 2px);margin:1px;padding:0 5px;line-height:25px}.cal-week-view .cal-time-events .cal-resize-handle{width:100%;height:4px;cursor:row-resize;position:absolute}.cal-week-view .cal-time-events .cal-resize-handle.cal-resize-handle-after-end{bottom:0}.cal-week-view .cal-hour-segment{position:relative}.cal-week-view .cal-hour-segment:after{content:"\a0"}.cal-week-view .cal-event-container:not(.cal-draggable){cursor:pointer}.cal-week-view .cal-draggable{cursor:move}.cal-week-view mwl-calendar-week-view-hour-segment,.cal-week-view .cal-hour-segment{display:block}.cal-week-view .cal-hour:not(:last-child) .cal-hour-segment,.cal-week-view .cal-hour:last-child :not(:last-child) .cal-hour-segment{border-bottom:thin dashed}.cal-week-view .cal-time{font-weight:700;padding-top:5px;width:70px;text-align:center}.cal-week-view .cal-hour-segment.cal-after-hour-start .cal-time{display:none}.cal-week-view .cal-starts-within-day .cal-event{border-top-left-radius:5px;border-top-right-radius:5px}.cal-week-view .cal-ends-within-day .cal-event{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.cal-week-view{background-color:#fff;border-top:solid 1px #e1e1e1}.cal-week-view .cal-day-headers{border-color:#e1e1e1;border-top:0}.cal-week-view .cal-day-headers .cal-header:not(:last-child){border-right-color:#e1e1e1}[dir=rtl] .cal-week-view .cal-day-headers .cal-header:not(:last-child){border-right-color:initial;border-left:solid 1px #e1e1e1!important}.cal-week-view .cal-day-headers .cal-header:first-child{border-left-color:#e1e1e1}[dir=rtl] .cal-week-view .cal-day-headers .cal-header:first-child{border-left-color:initial;border-right-color:#e1e1e1}.cal-week-view .cal-day-headers .cal-header:hover,.cal-week-view .cal-day-headers .cal-drag-over{background-color:#ededed}.cal-week-view .cal-day-column{border-left-color:#e1e1e1}[dir=rtl] .cal-week-view .cal-day-column{border-left-color:initial;border-right-color:#e1e1e1}.cal-week-view .cal-event{background-color:#d1e8ff;border-color:#1e90ff;color:#1e90ff}.cal-week-view .cal-all-day-events{border-color:#e1e1e1}.cal-week-view .cal-header.cal-today{background-color:#e8fde7}.cal-week-view .cal-header.cal-weekend span{color:#8b0000}.cal-week-view .cal-time-events{border-color:#e1e1e1}.cal-week-view .cal-time-events .cal-day-columns:not(.cal-resize-active) .cal-hour-segment:hover{background-color:#ededed}.cal-week-view .cal-hour-odd{background-color:#fafafa}.cal-week-view .cal-drag-over .cal-hour-segment{background-color:#ededed}.cal-week-view .cal-hour:not(:last-child) .cal-hour-segment,.cal-week-view .cal-hour:last-child :not(:last-child) .cal-hour-segment{border-bottom-color:#e1e1e1}.cal-week-view .cal-current-time-marker{background-color:#ea4334}.cal-day-view mwl-calendar-week-view-header{display:none}.cal-day-view .cal-events-container{margin-left:70px}[dir=rtl] .cal-day-view .cal-events-container{margin-left:initial;margin-right:70px}.cal-day-view .cal-day-column{border-left:0}.cal-day-view .cal-current-time-marker{margin-left:70px;width:calc(100% - 70px)}[dir=rtl] .cal-day-view .cal-current-time-marker{margin-left:initial;margin-right:70px}.cal-tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;font-size:11px;word-wrap:break-word;opacity:.9}.cal-tooltip.cal-tooltip-top{padding:5px 0;margin-top:-3px}.cal-tooltip.cal-tooltip-top .cal-tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0}.cal-tooltip.cal-tooltip-right{padding:0 5px;margin-left:3px}.cal-tooltip.cal-tooltip-right .cal-tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0}.cal-tooltip.cal-tooltip-bottom{padding:5px 0;margin-top:3px}.cal-tooltip.cal-tooltip-bottom .cal-tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px}.cal-tooltip.cal-tooltip-left{padding:0 5px;margin-left:-3px}.cal-tooltip.cal-tooltip-left .cal-tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px}.cal-tooltip-inner{max-width:200px;padding:3px 8px;text-align:center;border-radius:.25rem}.cal-tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.cal-tooltip.cal-tooltip-top .cal-tooltip-arrow{border-top-color:#000}.cal-tooltip.cal-tooltip-right .cal-tooltip-arrow{border-right-color:#000}.cal-tooltip.cal-tooltip-bottom .cal-tooltip-arrow{border-bottom-color:#000}.cal-tooltip.cal-tooltip-left .cal-tooltip-arrow{border-left-color:#000}.cal-tooltip-inner{color:#fff;background-color:#000}app-calendar{display:block;min-height:100vh}.app-shell{min-height:100vh;background:radial-gradient(circle at 15% 0%,color-mix(in srgb,var(--accent) 12%,transparent) 0,transparent 30rem),var(--page);color:var(--text)}button,input,textarea{font:inherit}button{color:inherit}.topbar{height:76px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--page) 86%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{color:var(--text);text-decoration:none;display:inline-flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#fff;font-weight:800;background:linear-gradient(145deg,#a78bfa,#6d4aff);box-shadow:0 10px 24px #6d4aff40}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:-.01em}.brand small{color:var(--muted);font-size:12px;margin-top:2px}.topbar-actions,.intro-actions,.month-navigation,.modal-actions{display:flex;align-items:center;gap:10px}.signed-in-user{max-width:180px;overflow:hidden;color:var(--muted);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.theme-toggle{display:flex;align-items:center;gap:2px;padding:4px;border-radius:10px;border:1px solid var(--border);background:var(--surface-muted);cursor:pointer}.theme-toggle span{padding:7px 10px;border-radius:7px;color:var(--muted);font-size:12px;font-weight:650}.theme-toggle span.active{color:var(--text);background:var(--surface);box-shadow:var(--shadow-small)}.content{width:min(1480px,calc(100% - 40px));margin:0 auto;padding:54px 0 64px}.intro{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}.eyebrow{margin:0 0 8px;color:var(--accent-soft-text);font-size:11px;line-height:1;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(34px,4vw,50px);line-height:1;letter-spacing:-.045em}.intro-copy{margin-bottom:0;color:var(--muted);font-size:15px}.button{min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary{color:#fff;background:var(--accent);box-shadow:0 10px 28px #6d4aff3b}.button-secondary{color:var(--text);border-color:var(--border);background:var(--surface)}.button-secondary:disabled{color:var(--muted);cursor:not-allowed;opacity:.72}.button-ghost{background:transparent;color:var(--muted)}.calendar-selector{margin-inline:auto 18px;display:flex;align-items:center;gap:7px}.calendar-selector select{width:min(230px,22vw);height:38px;background:var(--surface);font-size:12px;font-weight:700}.calendar-selector button{padding:7px;color:var(--accent-soft-text);border:0;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.button-danger{color:#fff;background:#c74355}.button-danger-ghost{color:#f47b8a;background:transparent}.button-note{margin-left:6px;padding:3px 6px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em;border-radius:5px;background:var(--surface-muted)}.compact{min-height:38px}.mobile-label{display:none}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:20px;align-items:start}.calendar-card,.agenda-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.calendar-card{overflow:hidden}.calendar-toolbar{min-height:76px;padding:0 22px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;border-bottom:1px solid var(--border)}.calendar-toolbar h2{margin:0;font-size:17px;letter-spacing:-.02em;text-transform:capitalize;text-align:center}.category-legend{min-height:48px;padding:9px 22px;display:flex;align-items:center;gap:16px;overflow-x:auto;border-bottom:1px solid var(--border);scrollbar-width:none}.category-legend::-webkit-scrollbar,.intro-actions::-webkit-scrollbar{display:none}.category-filter{padding:6px 8px;display:inline-flex;align-items:center;gap:7px;color:var(--muted);border:1px solid transparent;border-radius:8px;background:transparent;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer;transition:opacity .18s ease,border-color .18s ease,background .18s ease}.calendar-search{width:170px;flex:0 0 170px;display:block}.calendar-search input{width:100%;height:32px;padding-inline:10px;font-size:10px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.category-filter:hover{border-color:var(--border);background:var(--surface-muted)}.category-filter.inactive{opacity:.42;text-decoration:line-through}.category-legend i,.agenda-details i{width:7px;height:7px;flex:0 0 7px;display:inline-block;border-radius:50%}.category-legend .uncategorized-dot{background:#717585}.category-legend-actions{margin-left:auto;display:flex;align-items:center;gap:12px;white-space:nowrap}.legend-action{padding:6px 0;color:var(--accent-soft-text);border:0;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.icon-button,.today-button,.close-button{border:0;background:transparent;cursor:pointer}.icon-button,.today-button{min-height:34px;padding:0 11px;border-radius:8px;color:var(--muted);font-size:12px;font-weight:700}.icon-button:hover,.today-button:hover{color:var(--text);background:var(--surface-muted)}.today-button{color:var(--text);border:1px solid var(--border)}.event-count{color:var(--muted);font-size:12px;font-weight:650;white-space:nowrap}.toolbar-end{justify-self:end;display:flex;align-items:center;gap:12px}.view-switch{padding:3px;display:flex;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted)}.view-switch button{min-height:28px;padding:0 10px;color:var(--muted);border:0;border-radius:6px;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.view-switch button.active{color:var(--text);background:var(--surface);box-shadow:var(--shadow-small)}.calendar-scroll{overflow-x:auto}.agenda-card{padding:22px}.agenda-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:18px}.agenda-heading h2{margin:0;font-size:18px;letter-spacing:-.02em}.agenda-heading>span{min-width:30px;height:30px;padding:0 8px;display:grid;place-items:center;border-radius:9px;color:var(--accent-soft-text);background:var(--accent-soft);font-size:12px;font-weight:800}.agenda-list{min-width:0;display:grid;gap:4px}.agenda-item{width:100%;min-width:0;padding:11px 6px;display:flex;align-items:center;gap:13px;overflow:hidden;border:0;border-bottom:1px solid var(--border);background:transparent;text-align:left;cursor:pointer}.agenda-item:last-child{border-bottom:0}.agenda-item:hover .agenda-details>strong{color:var(--accent-soft-text)}.agenda-date{width:42px;height:48px;flex:0 0 42px;display:grid;place-content:center;border-radius:10px;background:var(--surface-muted);text-align:center}.agenda-date strong,.agenda-date small,.agenda-details strong,.agenda-details small{display:block}.agenda-date strong{font-size:16px;line-height:1}.agenda-date small{margin-top:4px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.agenda-details{flex:1 1 auto;min-width:0;overflow:hidden}.agenda-details strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap;transition:color .18s ease}.agenda-details small{margin-top:5px;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.empty-state{padding:28px 12px;display:grid;gap:7px;color:var(--muted);font-size:12px;line-height:1.5;text-align:center}.empty-state strong{color:var(--text);font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:100;padding:20px;display:grid;place-items:center;background:#05070eb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal{width:min(100%,460px);max-height:calc(100vh - 40px);padding:26px;overflow-y:auto;border:1px solid var(--border-strong);border-radius:18px;background:var(--surface);box-shadow:0 24px 80px #00000059}.modal-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px}.modal-heading h2{margin:0;font-size:24px;letter-spacing:-.035em}.close-button{padding:7px 0;color:var(--muted);font-size:11px;font-weight:700}form,label{display:grid}form{gap:16px}label{gap:8px;color:var(--text-soft);font-size:12px;font-weight:700}label>span{display:inline;color:var(--muted);font-weight:500}input{min-width:0;height:44px;padding:0 13px;color:var(--text);border:1px solid var(--border);border-radius:10px;outline:none;background:var(--surface-muted)}.checkbox-label{display:flex;align-items:center;gap:9px;cursor:pointer}.checkbox-label input{width:18px;height:18px;padding:0;accent-color:var(--accent)}textarea{min-width:0;min-height:88px;padding:11px 13px;color:var(--text);border:1px solid var(--border);border-radius:10px;outline:none;resize:vertical;background:var(--surface-muted)}select{min-width:0;height:44px;padding:0 13px;color:var(--text);border:1px solid var(--border);border-radius:10px;outline:none;background:var(--surface-muted)}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.category-modal{width:min(100%,590px)}.category-list{display:grid;gap:6px}.category-row{min-height:48px;padding:7px 10px;display:grid;grid-template-columns:18px minmax(120px,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.category-row strong{font-size:12px}.category-swatch{width:12px;height:12px;border-radius:4px}.color-input{width:34px;height:32px;padding:3px;border-radius:7px;cursor:pointer}.category-name-input{height:34px}.text-button{padding:6px 2px;color:var(--muted);border:0;background:transparent;font-size:10px;font-weight:750;cursor:pointer}.text-button.accent{color:var(--accent-soft-text)}.text-button.danger{color:#f47b8a}.new-category-form{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.new-category-form p{margin-bottom:10px;color:var(--text-soft);font-size:11px;font-weight:750}.new-category-form>div{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px}.category-help{margin:14px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.event-category{--category-color: var(--accent);width:fit-content;margin-bottom:14px;padding:5px 8px;display:inline-flex;color:var(--text);border-left:3px solid var(--category-color);border-radius:6px;background:color-mix(in srgb,var(--category-color) 14%,var(--surface));font-size:10px;font-weight:750}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.category-row.calendar-management-row{grid-template-columns:minmax(120px,1fr) auto auto}.calendar-create-row{grid-template-columns:minmax(0,1fr) auto!important}.event-categories{margin-bottom:14px;display:flex;flex-wrap:wrap;gap:6px}.event-categories .event-category{margin-bottom:0}.event-category-picker{margin:0;padding:0;border:0}.event-category-picker legend{margin-bottom:8px;color:var(--text-soft);font-size:12px;font-weight:700}.event-category-picker legend span{color:var(--muted);font-weight:500}.event-category-picker>div{display:flex;flex-wrap:wrap;gap:7px}.event-category-picker label{min-height:36px;padding:7px 10px;display:flex;grid-template-columns:none;flex-direction:row;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);cursor:pointer}.event-category-picker input{width:16px;height:16px;padding:0;accent-color:var(--accent)}.event-category-picker i{width:8px;height:8px;border-radius:50%}.form-row.three-columns{grid-template-columns:1.3fr 1fr 1fr}.form-help{margin:-6px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.modal-actions{justify-content:flex-end;margin-top:8px}.event-modal h2{margin-bottom:10px;font-size:26px;letter-spacing:-.035em}.event-modal .modal-heading{margin-bottom:16px}.event-series{width:fit-content;margin:0 0 14px 6px;padding:5px 8px;display:inline-flex;color:var(--muted);border-radius:6px;background:var(--surface-muted);font-size:10px;font-weight:750}.event-actions{justify-content:space-between}.attendance-row{margin:18px 0;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.attendance-row span{color:var(--text-soft);font-size:12px;font-weight:700}.attendance-row strong{font-size:12px}.attendance-actions{display:flex;gap:8px}.attendance-actions .button{min-height:36px;padding-inline:12px;font-size:11px}.attendance-lists{margin-bottom:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.attendance-lists section{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.attendance-lists strong{font-size:11px}.attendance-lists ul{margin:8px 0 0;padding-left:17px;color:var(--muted);font-size:11px;line-height:1.7}.delete-confirmation{margin-top:20px;padding:14px;border:1px solid color-mix(in srgb,#f47b8a 45%,var(--border));border-radius:10px;background:color-mix(in srgb,#f47b8a 8%,var(--surface))}.delete-confirmation p{margin-bottom:12px;color:var(--text-soft);font-size:12px;line-height:1.5}.event-accent{width:42px;height:4px;margin-bottom:18px;border-radius:99px;background:var(--accent)}.event-date,.event-performed-by,.event-location,.event-description,.subscription-copy{color:var(--muted);font-size:13px;line-height:1.6}.export-scope{margin:0 0 18px;padding:0;display:grid;gap:8px;border:0}.export-scope legend{margin-bottom:10px;font-size:13px;font-weight:750}.export-scope label{min-height:46px;padding:9px 12px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);cursor:pointer}.export-scope input{width:17px;height:17px;accent-color:var(--accent)}.export-scope i{width:9px;height:9px;flex:0 0 9px;border-radius:50%}.export-scope span,.export-scope strong,.export-scope small{display:block}.export-scope strong{font-size:12px}.export-scope small{margin-top:2px;color:var(--muted);font-size:10px}.event-location{margin-bottom:24px}.event-performed-by{margin-bottom:8px}.full-width{width:100%;margin-top:12px}.subscription-url-field{position:relative;margin-bottom:14px}.subscription-url{width:100%;min-width:0;padding-right:46px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.subscription-copy-button{position:absolute;top:50%;right:6px;display:grid;width:34px;height:34px;padding:0;place-items:center;color:var(--muted);border:0;border-radius:8px;background:transparent;cursor:pointer;transform:translateY(-50%)}.subscription-copy-button:hover{color:var(--text);background:var(--surface-muted)}.subscription-copy-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.subscription-link{display:inline-grid;place-items:center;text-decoration:none}@media(max-width:1040px){.calendar-layout{grid-template-columns:1fr}.agenda-card{order:-1}.agenda-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}}@media(max-width:700px){.topbar{height:auto;min-height:68px;padding:12px 16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px}.brand small,.theme-toggle,.signed-in-user{display:none}.brand{min-width:0}.brand-mark{width:38px;height:38px}.topbar-actions{justify-self:end;gap:7px}.desktop-label{display:none}.mobile-label{display:inline}.compact{min-height:38px;padding:0 11px;font-size:11px}.content{width:min(100% - 24px,1480px);padding:32px 0 40px}.intro{display:grid;gap:20px;margin-bottom:22px}.intro-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.intro-actions .button{width:100%;min-height:44px;padding-inline:10px;font-size:11px}.calendar-toolbar{min-height:100px;padding:16px;grid-template-columns:1fr auto}.calendar-toolbar h2{grid-row:1;grid-column:1 / -1}.month-navigation,.event-count{grid-row:2}.calendar-selector{width:100%;margin:0;grid-column:1 / -1;grid-row:2}.calendar-selector select{width:100%}.calendar-selector button{display:none}.calendar-scroll mwl-calendar-week-view{display:block;min-width:820px}.toolbar-end{grid-row:2}.toolbar-end .event-count{display:none}.category-legend{padding-inline:16px}.calendar-search{width:min(170px,48vw);flex-basis:min(170px,48vw)}.agenda-card{padding:18px}.agenda-list,.form-row,.form-row.three-columns{grid-template-columns:1fr}.category-row{grid-template-columns:18px minmax(80px,1fr) auto}.category-row .danger{grid-column:2 / -1;justify-self:end}.modal{width:100%;max-height:min(92dvh,760px);padding:22px 18px max(22px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0}.modal-backdrop{padding:0;place-items:end center}.calendar-management-row{grid-template-columns:minmax(0,1fr) auto!important}.calendar-management-row .danger{grid-column:2}.attendance-row{align-items:stretch;flex-direction:column}.attendance-actions,.attendance-actions .button{flex:1}.attendance-lists{grid-template-columns:1fr}.event-actions{align-items:stretch;flex-direction:column-reverse}.event-actions .button,.delete-confirmation .modal-actions .button{width:100%}}@media(max-width:480px){.content{width:min(100% - 16px,1480px);padding-top:24px}h1{font-size:36px}.intro-copy{font-size:13px;line-height:1.5}.calendar-card,.agenda-card{border-radius:14px}.calendar-toolbar{min-height:144px;grid-template-columns:1fr;grid-template-rows:auto auto auto;justify-items:center;gap:10px}.calendar-toolbar h2,.month-navigation,.toolbar-end{grid-column:1}.calendar-toolbar h2{grid-row:1}.month-navigation{grid-row:2}.toolbar-end{grid-row:3;justify-self:center}.calendar-scroll mwl-calendar-month-view{min-width:0}.calendar-scroll mwl-calendar-week-view{min-width:760px}.calendar-create-row,.new-category-form>div{grid-template-columns:38px minmax(0,1fr)}.calendar-create-row{grid-template-columns:1fr!important}.new-category-form>div .button{grid-column:1 / -1}.calendar-create-row .button{width:100%}.modal-actions:not(.event-actions){align-items:stretch;flex-direction:column-reverse}.modal-actions:not(.event-actions) .button{width:100%}}:root{color-scheme:dark;--page: #0d0f15;--surface: #151820;--surface-muted: #1b1f29;--text: #f4f3f8;--text-soft: #d7d5df;--muted: #8f93a3;--border: #292d38;--border-strong: #383d49;--accent: #7657ff;--accent-soft: rgba(118, 87, 255, .14);--accent-soft-text: #b9a9ff;--shadow: 0 18px 50px rgba(0, 0, 0, .18);--shadow-small: 0 3px 10px rgba(0, 0, 0, .18)}:root[data-theme=light]{color-scheme:light;--page: #f5f6fa;--surface: #ffffff;--surface-muted: #f2f3f7;--text: #171820;--text-soft: #353743;--muted: #737786;--border: #e5e6ec;--border-strong: #d4d6df;--accent: #6845f5;--accent-soft: #eeeaff;--accent-soft-text: #5f3ae6;--shadow: 0 16px 46px rgba(36, 38, 53, .07);--shadow-small: 0 3px 10px rgba(36, 38, 53, .08)}*{box-sizing:border-box}html{min-width:320px;background:var(--page)}body{min-width:320px;min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.cal-month-view{background:var(--surface)}.cal-month-view .cal-header{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid var(--border)}.cal-month-view .cal-header .cal-cell{padding:16px 8px}.cal-month-view .cal-days,.cal-month-view .cal-day-cell:not(:last-child),.cal-month-view .cal-days .cal-cell-row,.cal-month-view .cal-cell-row:hover{border-color:var(--border)}.cal-month-view .cal-day-cell{min-height:128px;color:var(--text);background:var(--surface);transition:background .16s ease}.cal-month-view .cal-cell-top{min-height:48px}.cal-month-view .cal-day-cell:hover{background:var(--surface-muted)}.cal-month-view .cal-cell-row:hover{background:transparent}.cal-month-view .cal-cell-row:hover .cal-day-cell{background:var(--surface)}.cal-month-view .cal-cell-row:hover .cal-day-cell:hover{background:var(--surface-muted)}.cal-month-view .cal-cell-row:hover .cal-day-cell.cal-today{background:var(--accent-soft)}.cal-month-view .cal-day-number{margin:13px 14px 0 0;color:var(--text-soft);font-size:12px;font-weight:700;opacity:1}.cal-month-view .cal-out-month .cal-day-number{color:var(--muted);opacity:.42}.cal-month-view .cal-day-cell.cal-today{background:var(--accent-soft)}.cal-month-view .cal-day-cell.cal-today .calendar-cell-day{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;color:#fff;background:var(--accent);font-size:11px}.cal-month-view .cal-day-cell.cal-weekend .cal-day-number{color:var(--text-soft)}.calendar-cell-content{min-height:128px;padding:8px}.calendar-cell-heading{min-height:29px;display:flex;justify-content:flex-end}.calendar-cell-day{width:27px;height:27px;display:grid;place-items:center;color:var(--text-soft);border-radius:9px;font-size:12px;font-weight:700}.cal-month-view .cal-out-month .calendar-cell-day{color:var(--muted);opacity:.35}.calendar-cell-events{display:grid;gap:4px;margin-top:3px}.calendar-event-preview{--event-gradient: var(--accent);position:relative;width:100%;min-width:0;height:28px;padding:0 7px;display:flex;align-items:center;gap:6px;overflow:hidden;color:var(--text);border:0;border-left:0;border-radius:6px;background:color-mix(in srgb,var(--event-color) 14%,var(--surface));text-align:left;cursor:pointer}.calendar-event-preview:before{position:absolute;inset:0 0 auto;height:3px;border-radius:6px 6px 0 0;background:var(--event-gradient);content:""}.calendar-event-preview:hover{background:color-mix(in srgb,var(--event-color) 22%,var(--surface))}.calendar-event-preview span{flex:0 0 auto;color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums}.calendar-event-preview strong{min-width:0;overflow:hidden;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.calendar-more-events{padding-left:10px;color:var(--muted);font-size:9px;font-weight:700}.cal-month-view .cal-day-badge{min-width:20px;min-height:20px;margin-top:9px;margin-left:9px;padding:0 6px;display:grid;place-items:center;color:#fff;border-radius:7px;background:var(--accent);font-size:10px;font-weight:800}.cal-month-view .cal-event{width:7px;height:7px;margin:3px;border:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--surface) 80%,transparent)}.cal-month-view .cal-events{margin:8px 9px}.cal-month-view .cal-open-day-events{padding:12px 16px;color:var(--text);background:var(--surface-muted);box-shadow:inset 0 1px 0 var(--border),inset 0 -1px 0 var(--border)}.cal-month-view .cal-open-day-events>div{padding:8px 0}.cal-month-view .cal-open-day-events .cal-event-title{color:var(--text);font-size:13px}.cal-month-view .cal-cell-row .cal-cell:hover,.cal-month-view .cal-cell.cal-has-events.cal-open{background:var(--surface-muted)}.cal-week-view{color:var(--text);background:var(--surface);border:0}.cal-week-view .cal-day-headers,.cal-week-view .cal-day-headers .cal-header,.cal-week-view .cal-all-day-events,.cal-week-view .cal-time-events,.cal-week-view .cal-day-column,.cal-week-view .cal-hour:not(:last-child) .cal-hour-segment,.cal-week-view .cal-hour:last-child :not(:last-child) .cal-hour-segment{border-color:var(--border)}.cal-week-view .cal-day-headers .cal-header{padding:13px 6px;color:var(--muted);font-size:11px;font-weight:750}.cal-week-view .cal-header.cal-weekend span{color:inherit}.cal-week-view .cal-day-headers .cal-header:hover,.cal-week-view .cal-hour-segment:hover,.cal-week-view .cal-day-column:hover{background:var(--surface-muted)}.cal-week-view .cal-day-headers .cal-today{color:var(--accent-soft-text);background:var(--accent-soft)}.cal-week-view .cal-time-label-column .cal-hour-segment{color:var(--muted);font-size:10px}.cal-week-view .cal-hour-odd{background:color-mix(in srgb,var(--surface-muted) 42%,var(--surface))}.cal-week-view .cal-hour-segment{cursor:pointer}.cal-week-view .cal-event{color:var(--text);border-color:color-mix(in srgb,currentColor 35%,transparent)!important;border-radius:6px}.cal-week-view .cal-event-title{color:inherit;font-size:10px;font-weight:750}.cal-week-view .multi-category-week-event{position:relative;height:100%;padding:7px 5px 4px;overflow:hidden;color:var(--text);border:0!important;background:color-mix(in srgb,var(--surface-muted) 82%,transparent);cursor:pointer}.cal-week-view .multi-category-week-event:before{position:absolute;inset:0 0 auto;height:4px;background:var(--event-gradient);content:""}.cal-week-view .multi-category-week-event strong{font-size:10px;line-height:1.25}.cal-week-view .cal-current-time-marker{background-color:#f06479}@media(max-width:700px){.cal-month-view .cal-day-cell{min-height:76px}.calendar-cell-content{min-height:76px;padding:4px}.cal-month-view .cal-header{letter-spacing:0}.cal-month-view .cal-header .cal-cell{padding:11px 2px;overflow:hidden;font-size:9px}.calendar-cell-heading{min-height:27px}.calendar-cell-events{gap:3px;margin-top:2px}.calendar-event-preview{height:6px;padding:0;border-radius:99px;background:var(--event-gradient)}.calendar-event-preview:before,.calendar-event-preview span,.calendar-event-preview strong,.calendar-more-events{display:none}}
