.cal-type-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cal-chip-count{background:var(--muted);min-width:16px;height:14px;color:var(--muted-foreground);border-radius:8px;justify-content:center;align-items:center;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-flex}.cal-type-filter{display:inline-block;position:relative}.cal-type-trigger{border:.5px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer;border-radius:7px;align-items:center;gap:7px;padding:6px 11px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.cal-type-trigger:hover{background:var(--muted)}.cal-type-trigger.filtered{border-color:var(--brand-primary);color:var(--brand-primary)}.cal-type-trigger-summary{color:var(--muted-foreground);font-weight:400}.cal-type-trigger.filtered .cal-type-trigger-summary{color:var(--brand-primary);font-weight:500}.cal-type-trigger-caret{transition:transform .15s;display:inline-flex}.cal-type-trigger-caret.open{transform:rotate(180deg)}.cal-type-menu{overscroll-behavior:contain;background:var(--card);border:.5px solid var(--border);z-index:50;border-radius:8px;min-width:234px;max-height:min(320px,50vh);padding:4px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 6px 20px #00000024,0 1px 3px #0000000f}.cal-type-menu-item{width:100%;color:var(--foreground);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:7px 9px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background .1s;display:flex}.cal-type-menu-item:hover{background:var(--muted)}.cal-type-check{width:14px;color:var(--brand-primary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.cal-type-menu-sep{background:var(--border);height:1px;margin:4px 6px}
.cal-header-actions{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.cal-toolbar{background:var(--card);border:.5px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;padding:10px 14px;display:flex}.cal-nav-group{flex-shrink:0;align-items:center;gap:6px;display:flex}.cal-period-label{color:var(--foreground);letter-spacing:-.2px;white-space:nowrap;text-overflow:ellipsis;min-width:0;padding-left:6px;font-size:16px;font-weight:600;overflow:hidden}.cal-toolbar-spacer{flex:1;min-width:0}.cal-filter-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.cal-type-chip{border:.5px solid var(--border);background:var(--card);color:var(--muted-foreground);cursor:pointer;border-radius:18px;align-items:center;gap:6px;padding:5px 11px;font-family:inherit;font-size:12px;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.cal-type-chip:hover{color:var(--foreground);border-color:var(--border)}.cal-type-chip.active.all-chip{background:color-mix(in srgb, var(--brand-primary) 12%, transparent);color:var(--brand-primary);border-color:color-mix(in srgb, var(--brand-primary) 40%, transparent)}.cal-type-chip.active .cal-chip-count{color:inherit;background:#00000014}[data-theme=dark] .cal-type-chip.active .cal-chip-count{background:#ffffff2e}.cal-type-chip.active.all-chip .cal-chip-count{background:color-mix(in srgb, var(--brand-primary) 18%, transparent);color:var(--brand-primary)}.cal-card{background:var(--card);border:.5px solid var(--border);border-radius:10px;overflow:hidden}.cal-layout{grid-template-columns:minmax(0,3fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (max-width:900px){.cal-layout{grid-template-columns:1fr}}.cal-dow-row{border-bottom:.5px solid var(--border);background:var(--muted);grid-template-columns:repeat(7,1fr);display:grid}.cal-dow-cell{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);padding:8px 10px;font-size:11px;font-weight:600}.cal-month-grid{grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(110px,1fr);display:grid}.cal-day{border-right:.5px solid var(--border);border-bottom:.5px solid var(--border);cursor:pointer;flex-direction:column;gap:4px;min-width:0;min-height:0;padding:6px 8px 8px;transition:background .12s;display:flex}.cal-day:hover{background:var(--muted)}.cal-day:nth-child(7n){border-right:none}.cal-day.cal-out{background:var(--muted)}.cal-day.cal-out .cal-day-num{color:var(--muted-foreground)}.cal-day.cal-today .cal-day-num{background:var(--brand-primary);color:#fff;border-radius:50%}.cal-day.cal-selected{box-shadow:inset 0 0 0 2px var(--brand-primary)}.cal-day-num{min-width:22px;height:22px;color:var(--foreground);justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:600;display:inline-flex}.cal-day-events{flex-direction:column;gap:2px;min-height:0;display:flex;overflow:hidden}.cal-event{cursor:pointer;border-radius:4px;align-items:flex-start;gap:5px;padding:2px 6px;font-size:11px;font-weight:500;line-height:1.3;transition:filter .1s;display:flex;overflow:hidden}.cal-event:hover{filter:brightness(.95)}[data-theme=dark] .cal-event:hover{filter:brightness(1.15)}.cal-event-time{opacity:.8;flex-shrink:0;padding-top:.5px;font-size:10px;font-weight:700}.cal-event-title{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cal-event-more{color:var(--muted-foreground);cursor:pointer;padding:1px 5px;font-size:10.5px;font-weight:500}.cal-event-more:hover{color:var(--foreground)}.cal-week-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-week-col{border-right:.5px solid var(--border);flex-direction:column;gap:6px;min-width:0;min-height:360px;padding:8px 8px 12px;display:flex}.cal-week-col:last-child{border-right:none}.cal-week-col.cal-today{background:color-mix(in srgb, var(--brand-primary) 12%, transparent)}[data-theme=dark] .cal-week-col.cal-today{background:color-mix(in srgb, var(--brand-primary) 8%, transparent)}.cal-week-head{border-bottom:.5px solid var(--border);flex-direction:column;gap:1px;padding-bottom:6px;display:flex}.cal-week-dow{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-size:10.5px;font-weight:600}.cal-week-num{color:var(--foreground);font-size:18px;font-weight:600;line-height:1.1}.cal-week-col.cal-today .cal-week-num{color:var(--brand-primary)}.cal-week-events{flex-direction:column;gap:4px;display:flex}.cal-week-event{cursor:pointer;border-radius:5px;padding:5px 8px;font-size:11.5px;font-weight:500;transition:filter .1s}.cal-week-event:hover{filter:brightness(.95)}[data-theme=dark] .cal-week-event:hover{filter:brightness(1.15)}.cal-week-event-time{opacity:.85;font-size:10px;font-weight:700}.cal-week-event-title{word-break:break-word;font-size:11.5px;line-height:1.3}.cal-day-view{padding:18px 22px 22px}.cal-day-header{color:var(--foreground);letter-spacing:-.2px;margin-bottom:14px;font-size:18px;font-weight:600}.cal-day-header-sub{color:var(--muted-foreground);margin-left:8px;font-size:12px;font-weight:500}.cal-timeline{flex-direction:column;gap:1px;display:flex}.cal-hour-row{border-top:.5px solid var(--border);grid-template-columns:60px 1fr;gap:12px;min-height:44px;padding:8px 0;display:grid}.cal-hour-row:first-child{border-top:none}.cal-hour-label{color:var(--muted-foreground);padding-top:2px;font-size:11px;font-weight:600}.cal-hour-events{flex-direction:column;gap:4px;display:flex}.cal-hour-event{cursor:pointer;border-radius:6px;padding:7px 10px;font-size:12.5px;font-weight:500;transition:filter .1s}.cal-hour-event:hover{filter:brightness(.95)}[data-theme=dark] .cal-hour-event:hover{filter:brightness(1.15)}.cal-hour-event-meta{opacity:.85;align-items:center;gap:6px;margin-top:2px;font-size:10.5px;font-weight:600;display:flex}.cal-detail{background:var(--card);border:.5px solid var(--border);border-radius:10px;max-height:calc(100vh - 100px);padding:14px 16px;position:sticky;top:0;overflow-y:auto}@media (max-width:900px){.cal-detail{max-height:none;position:static}}.cal-detail-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.cal-detail-date{color:var(--foreground);font-size:14px;font-weight:600}.cal-detail-count{color:var(--muted-foreground);background:var(--muted);border-radius:8px;padding:1px 7px;font-size:11px;font-weight:500}.cal-detail-close{cursor:pointer;color:var(--muted-foreground);background:0 0;border:none;border-radius:4px;margin-left:auto;padding:4px;display:flex}.cal-detail-close:hover{color:var(--foreground);background:var(--muted)}.cal-detail-list{flex-direction:column;gap:6px;display:flex}.cal-detail-item{border:.5px solid var(--border);background:var(--card);border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.cal-detail-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.cal-detail-body{flex:1;min-width:0}.cal-detail-title{color:var(--foreground);font-size:13px;font-weight:600;line-height:1.3}.cal-detail-meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;font-size:11.5px;display:flex}.cal-detail-meta .meta-dot{background:var(--muted-foreground);border-radius:50%;width:3px;height:3px;display:inline-block}.cal-detail-day-section{flex-direction:column;gap:6px;display:flex}.cal-detail-day-section+.cal-detail-day-section{border-top:.5px dashed var(--border);margin-top:10px;padding-top:10px}.cal-detail-day-label{color:var(--foreground);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;font-size:11.5px;font-weight:600;display:flex}.cal-detail-day-label .day-today-pill{background:var(--brand-primary);color:#fff;text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:1px 7px;font-size:10px}.cal-detail-day-label .day-count{color:var(--muted-foreground);text-transform:none;letter-spacing:0;font-weight:400}.cal-detail-day-empty{color:var(--muted-foreground);padding:2px 0;font-size:11.5px;font-style:italic}.cal-detail-sub{color:var(--muted-foreground);white-space:nowrap;font-size:11.5px}.cal-owner-pill{align-items:center;gap:5px;display:inline-flex}.cal-owner-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;font-weight:700;display:inline-flex}.cal-empty{text-align:center;color:var(--muted-foreground);padding:28px 20px;font-size:13px}.cal-empty-icon{background:var(--muted);width:36px;height:36px;color:var(--muted-foreground);border-radius:10px;justify-content:center;align-items:center;margin:0 auto 10px;display:flex}@media (max-width:768px){.cal-toolbar{flex-wrap:nowrap;gap:10px;padding:10px}.cal-period-label{padding-left:4px;font-size:14px}.cal-filter-row{flex-wrap:nowrap}.cal-filter-row .cal-type-filter{min-width:0}.cal-filter-row .cal-type-trigger{white-space:nowrap;max-width:100%}.cal-filter-row .cal-type-trigger-summary{text-overflow:ellipsis;min-width:0;overflow:hidden}.cal-month-grid{grid-auto-rows:minmax(80px,1fr)}.cal-day{padding:4px 5px 6px}.cal-event{padding:1px 5px;font-size:10.5px}.cal-event-time{display:none}.cal-dow-cell{padding:6px;font-size:10px}.cal-day-view{padding:14px 12px 16px}.cal-hour-row{grid-template-columns:44px minmax(0,1fr);gap:8px}.cal-hour-event{overflow-wrap:anywhere;min-width:0}.cal-hour-event-meta{flex-wrap:wrap}}@media (max-width:480px){.cal-toolbar{gap:8px}.cal-month-grid{grid-auto-rows:minmax(64px,1fr)}.cal-dow-cell{padding:6px 4px}.cal-day-num{min-width:18px;height:18px;font-size:11px}.cal-day-events{flex-flow:wrap;gap:3px}.cal-event{border-radius:50%;width:6px;height:6px;padding:0}.cal-event-time,.cal-event-title{display:none}.cal-event-more{font-size:9.5px}}.cal-tc{background:var(--cal-tc-bg);color:var(--cal-tc-fg)}.cal-tc-fg{color:var(--cal-tc-fg)}.cal-tc-dot{background:var(--cal-tc-fg)}.cal-t-task{--cal-tc-fg:#854f0b;--cal-tc-bg:#faeeda}.cal-t-log{--cal-tc-fg:#5f6b7a;--cal-tc-bg:#eff2f6}.cal-t-reminder{--cal-tc-fg:var(--color-insight-warn-fg);--cal-tc-bg:var(--color-insight-warn-bg)}.dark .cal-t-task{--cal-tc-fg:#dfa757;--cal-tc-bg:#854f0b38}.dark .cal-t-log{--cal-tc-fg:#9dabbd;--cal-tc-bg:#5f6b7a42}.cal-event.cal-todo,.cal-week-event.cal-todo{background:color-mix(in srgb, var(--foreground) 5%, transparent);border-radius:4px;align-items:center;gap:4px;display:flex}.cal-detail-item.cal-detail-todo{background:color-mix(in srgb, var(--foreground) 4%, transparent);border-radius:8px;align-items:flex-start;padding:8px 10px}.cal-todo-check{cursor:pointer;width:14px;height:14px;accent-color:var(--brand-primary);flex-shrink:0;margin-top:2px}.cal-todo-pill{border-radius:4px;align-items:center;padding:1px 6px;font-size:10px;font-weight:600;line-height:1.4;display:inline-flex}.cal-t-personal{--cal-tc-fg:#4a5568;--cal-tc-bg:transparent}.cal-tc.cal-t-personal{border:1px dashed var(--cal-tc-fg)}.dark .cal-t-personal{--cal-tc-fg:#a0aec0;--cal-tc-bg:transparent}
