@layer components{.shell-calendar-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.shell-calendar-hub-widget{flex-direction:column;min-height:0;display:flex;overflow:hidden}.shell-calendar-hub-header{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.shell-calendar-hub-segmented{background:var(--shell-color-surface-alt);border:1px solid var(--shell-color-border);border-radius:999px;align-items:center;gap:2px;margin-right:auto;padding:3px;display:flex}.shell-calendar-hub-seg-btn{color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);white-space:nowrap;background:none;border:0;border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:.78rem;font-weight:600;display:inline-flex}.shell-calendar-hub-seg-btn:hover{color:var(--shell-color-text);background:color-mix(in srgb,var(--shell-color-brand) 10%,transparent)}.shell-calendar-hub-seg-btn.active{background:var(--shell-color-brand);color:#fff}.shell-calendar-hub-seg-badge{color:inherit;background:hsla(0,0%,100%,.25);border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.68rem;font-weight:700;display:inline-flex}.shell-calendar-hub-seg-btn:not(.active) .shell-calendar-hub-seg-badge{background:var(--shell-color-brand);color:#fff}.shell-calendar-settings-btn{border-radius:var(--shell-radius-sm);color:var(--shell-color-text-muted);cursor:pointer;transition:color var(--shell-transition-fast),background var(--shell-transition-fast);background:none;border:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.shell-calendar-settings-btn:hover{color:var(--shell-color-text);background:var(--shell-color-surface-alt)}.shell-calendar-split-active{color:var(--shell-color-brand)}.shell-calendar-hub-header-actions{flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:flex}.shell-calendar-split-container{flex:auto;min-height:0;display:flex;overflow:hidden}.shell-calendar-split-container.shell-calendar-split-resizing{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:col-resize}.shell-calendar-split-container.shell-calendar-split-resizing *{cursor:col-resize!important}.shell-calendar-split-left{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.shell-calendar-split-divider{cursor:col-resize;background:none;border-radius:2px;flex-shrink:0;width:4px;transition:background .15s;position:relative}.shell-calendar-split-divider:before{content:"";position:absolute;top:0;bottom:0;left:-4px;right:-4px}.shell-calendar-split-divider.dragging,.shell-calendar-split-divider:hover{background:var(--shell-color-brand)}.shell-calendar-split-divider:focus-visible{outline:2px solid var(--shell-color-brand);outline-offset:2px}.shell-calendar-split-right{flex-direction:column;min-width:0;min-height:0;padding-left:8px;display:flex;overflow:hidden}.shell-calendar-split-right-tabs{flex-shrink:0;gap:4px;margin-bottom:8px;display:flex}.shell-calendar-split-right-tab{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.shell-calendar-split-right-tab:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text)}.shell-calendar-split-right-tab.active{background:var(--shell-color-brand);border-color:var(--shell-color-brand);color:#fff}.shell-calendar-split-right-content{flex-direction:column;flex:auto;min-height:0;display:flex}.cal-settings-modal{max-width:340px}.cal-settings-color-row{align-items:center;gap:12px;padding:10px 0;display:flex}.cal-settings-color-row+.cal-settings-color-row{border-top:1px solid var(--shell-color-border)}.cal-settings-color-swatch{border:1px solid rgba(0,0,0,.1);border-radius:4px;flex-shrink:0;width:24px;height:24px}.cal-settings-color-label{color:var(--shell-color-text);flex:1;font-size:.85rem;font-weight:500}.cal-settings-color-input{border:1px solid var(--shell-color-border);cursor:pointer;background:none;border-radius:4px;width:36px;height:28px;padding:0}.cal-settings-color-input::-webkit-color-swatch-wrapper{padding:2px}.cal-settings-color-input::-webkit-color-swatch{border:none;border-radius:2px}.shell-calendar-hub-tabs{gap:8px;margin-bottom:10px;display:flex}.shell-calendar-hub-tab{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.shell-calendar-hub-tab:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text)}.shell-calendar-hub-tab.active{background:var(--shell-color-brand);border-color:var(--shell-color-brand);color:#fff}.shell-calendar-hub-tab-badge{color:inherit;background:hsla(0,0%,100%,.2);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;display:inline-flex}.shell-calendar-hub-panels{flex-direction:column;flex:auto;min-height:0;display:flex}.shell-calendar-day-nav{align-items:center;gap:8px;margin-bottom:10px;display:flex}.shell-calendar-day-nav-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);cursor:pointer;transition:all var(--shell-transition-fast);border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:600}.shell-calendar-day-nav-btn:hover:not(:disabled){border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.shell-calendar-day-nav-btn:disabled{opacity:.45;cursor:not-allowed}.shell-calendar-day-label{color:var(--shell-color-text-muted);margin-left:4px;font-size:.82rem;font-weight:600}.shell-calendar-day-nav-select-wrap{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.shell-calendar-day-nav-select-label{color:var(--shell-color-text-muted);font-size:.75rem}.shell-calendar-day-nav-select{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);border-radius:999px;max-width:170px;padding:4px 10px;font-size:.78rem}.shell-calendar-embedded-panel,.shell-meeting-invites-embedded{flex-direction:column;flex:auto;min-height:0;display:flex}.shell-calendar-embedded-panel-hidden,.shell-meeting-invites-embedded-hidden{display:none}.shell-calendar-embedded-body{flex:auto;min-height:0;padding-right:4px;overflow-y:auto}.calendar-summary-panel,.calendar-summary-widget{flex-direction:column;flex:auto;min-height:0;display:flex}.calendar-summary-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.calendar-summary-select-wrap{color:var(--shell-color-text-muted);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.calendar-summary-chip,.calendar-summary-date-input,.calendar-summary-select{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);border-radius:999px;padding:4px 10px;font-size:.78rem}.calendar-summary-chip{align-items:center;display:inline-flex}.calendar-summary-editor-shell{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-md);background:var(--shell-color-surface-alt);flex:auto;min-height:150px;padding:10px;overflow-y:auto}.calendar-summary-template{flex-direction:column;flex:auto;gap:14px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.calendar-summary-section{flex-direction:column;gap:8px;display:flex}.calendar-summary-section-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.calendar-summary-section-header h3{color:var(--shell-color-text);margin:0;font-size:.88rem;font-weight:700}.calendar-summary-collapse-btn{cursor:pointer;color:inherit;font:inherit;background:none;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.calendar-summary-collapse-btn:hover h3{color:var(--shell-color-brand)}.calendar-summary-section-header p{color:var(--shell-color-text-muted);margin:0;font-size:.74rem}.calendar-summary-events-list{flex-direction:column;gap:6px;display:flex}.calendar-summary-event-card{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:var(--shell-radius-md);transition:border-color var(--shell-transition-fast),box-shadow var(--shell-transition-fast);flex-direction:column;display:flex}.calendar-summary-event-card.expanded{border-color:color-mix(in srgb,var(--shell-color-brand) 30%,var(--shell-color-border));padding-bottom:10px}.calendar-summary-event-card.collapsed{border-color:var(--shell-color-border);background:none}.calendar-summary-event-card.collapsed:hover{border-color:color-mix(in srgb,var(--shell-color-brand) 40%,var(--shell-color-border));background:var(--shell-color-surface-alt)}.calendar-summary-event-header{cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:var(--shell-radius-md);transition:background var(--shell-transition-fast);background:none;border:none;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex}.calendar-summary-event-header:hover{background:color-mix(in srgb,var(--shell-color-brand) 6%,transparent)}.calendar-summary-event-chevron{color:var(--shell-color-text-muted);flex-shrink:0;transition:transform .15s}.calendar-summary-event-card.expanded .calendar-summary-event-chevron{transform:rotate(90deg)}.calendar-summary-event-title{color:var(--shell-color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.82rem;font-weight:600;overflow:hidden}.calendar-summary-event-meta{color:var(--shell-color-text-muted);white-space:nowrap;flex-shrink:0;font-size:.72rem}.calendar-summary-event-has-notes{color:var(--shell-color-brand);flex-shrink:0;align-items:center;display:inline-flex}.calendar-summary-event-card.expanded>.calendar-summary-editor-shell,.calendar-summary-event-card.expanded>.calendar-summary-event-attachments-row{margin:0 10px}.calendar-summary-editor-shell-compact{min-height:72px;padding:8px}.calendar-summary-event-attachments-row{flex-direction:column;gap:6px;display:flex}.calendar-summary-attach-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text-muted);cursor:pointer;transition:color var(--shell-transition-fast),border-color var(--shell-transition-fast);border-radius:999px;justify-content:center;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;padding:3px 10px;font-size:.72rem;font-weight:500;display:inline-flex}.calendar-summary-attach-btn:hover{color:var(--shell-color-text);border-color:color-mix(in srgb,var(--shell-color-brand) 40%,var(--shell-color-border))}.calendar-summary-attach-btn input{display:none}.calendar-summary-attachments-list{flex-direction:column;gap:6px;display:flex}.calendar-summary-attachment-item{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface);justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;font-size:.74rem;display:flex}.calendar-summary-attachment-item a,.calendar-summary-attachment-item span{color:var(--shell-color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-summary-attachment-remove{color:var(--shell-color-text-muted);cursor:pointer;background:none;border:none;padding:0;font-size:.72rem}.calendar-summary-editor-content{color:var(--shell-color-text);outline:none;min-height:130px;font-size:.9rem;line-height:1.55}.calendar-summary-editor-shell-compact .calendar-summary-editor-content{min-height:64px}.calendar-summary-editor-content p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--shell-color-text-muted);float:left;pointer-events:none;height:0}.calendar-summary-link-chip{border:1px solid color-mix(in srgb,var(--shell-color-brand) 45%,var(--shell-color-border));background:color-mix(in srgb,var(--shell-color-brand) 15%,var(--shell-color-surface-alt));color:var(--shell-color-text);border-radius:999px;align-items:center;margin:0 2px;padding:1px 7px;font-size:.78rem;display:inline-flex}.calendar-summary-footer{align-items:center;gap:8px;margin-top:8px;display:flex}.calendar-summary-meta{color:var(--shell-color-text-muted);font-size:.72rem}.calendar-summary-notice{color:var(--shell-color-brand);font-size:.75rem;font-weight:600}.calendar-summary-save-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-brand);color:#fff;cursor:pointer;border-radius:999px;margin-left:auto;padding:6px 12px;font-size:.78rem;font-weight:600}.calendar-summary-save-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-summary-links-preview{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.calendar-summary-link-pill{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);border-radius:999px;padding:3px 8px;font-size:.74rem;display:inline-flex}.calendar-summary-empty{color:var(--shell-color-text-muted);padding:6px 0;font-size:.82rem}.calendar-summary-error{border-radius:var(--shell-radius-sm);color:#fca5a5;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);margin-top:8px;padding:8px 10px;font-size:.76rem}.calendar-summary-link-modal-overlay{z-index:1500;background:rgba(0,0,0,.35);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.calendar-summary-link-modal{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:14px;flex-direction:column;width:min(560px,100vw - 32px);max-height:min(72vh,620px);display:flex;overflow:hidden}.calendar-summary-link-modal-header{border-bottom:1px solid var(--shell-color-border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.calendar-summary-link-modal-header h3{margin:0;font-size:.95rem}.calendar-summary-link-modal-close{color:var(--shell-color-text-muted);cursor:pointer;background:none;border:none}.calendar-summary-link-categories{flex-wrap:wrap;gap:6px;padding:10px 12px 0;display:flex}.calendar-summary-link-category-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:.75rem}.calendar-summary-link-category-btn.active{border-color:var(--shell-color-brand);color:var(--shell-color-brand);background:color-mix(in srgb,var(--shell-color-brand) 10%,var(--shell-color-surface-alt))}.calendar-summary-link-search{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface-alt);color:var(--shell-color-text);margin:10px 12px 8px;padding:8px 10px}.calendar-summary-link-results{flex-direction:column;gap:6px;padding:0 12px 12px;display:flex;overflow:auto}.calendar-summary-link-result{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface-alt);color:var(--shell-color-text);text-align:left;cursor:pointer;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.calendar-summary-link-result:hover{border-color:var(--shell-color-brand)}.calendar-summary-link-result-name{font-size:.84rem;font-weight:600}.calendar-summary-link-result-subtitle{color:var(--shell-color-text-muted);font-size:.75rem}.shell-meeting-invites-widget{flex-direction:column;min-height:0;display:flex;overflow:hidden;container:invites-widget/inline-size}.shell-meeting-invites-body{flex:auto;min-height:0;padding-right:4px;overflow-y:auto}.dashboard-module-content>.shell-widget.shell-meeting-invites-widget>:last-child,.workspace-widget-preview .shell-widget.shell-meeting-invites-widget>:last-child{flex:none;min-height:auto;overflow:visible}.shell-calendar-item{border-radius:var(--shell-radius-sm);background:var(--shell-color-surface-alt);border:1px solid var(--shell-color-border);border-left:3px solid var(--cal-stripe-color,var(--shell-color-border));flex-direction:column;gap:3px;padding:9px 12px 9px 14px;display:flex}.shell-calendar-context-item{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface-alt);padding:8px 10px}.shell-calendar-context-item-meta{color:var(--shell-color-text-muted);margin-bottom:4px;font-size:.72rem}.shell-calendar-item-clickable{cursor:pointer;transition:border-color var(--shell-transition-fast),box-shadow var(--shell-transition-fast),background var(--shell-transition-fast)}.shell-calendar-item-clickable:hover{border-color:var(--shell-color-brand);background:color-mix(in srgb,var(--shell-color-brand) 8%,var(--shell-color-surface-alt))}.shell-calendar-item-clickable:focus-visible{border-color:var(--shell-color-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--shell-color-brand) 24%,transparent);outline:none}.shell-calendar-item-main{flex-direction:column;flex:1;gap:4px;display:flex}.shell-calendar-title-row{align-items:flex-start;gap:6px;display:flex}.shell-calendar-title{color:var(--shell-color-text);flex:1;min-width:0;font-weight:600}button.shell-calendar-invite-focus-btn{cursor:pointer;text-align:left;font:inherit;text-underline-offset:2px;transition:text-decoration-color var(--shell-transition-fast),color var(--shell-transition-fast);background:none;border:none;margin:0;padding:0;-webkit-text-decoration:underline transparent;text-decoration:underline transparent}button.shell-calendar-invite-focus-btn:hover{color:var(--shell-color-brand);-webkit-text-decoration-color:var(--shell-color-brand);text-decoration-color:var(--shell-color-brand)}.shell-calendar-title-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.shell-calendar-time{color:var(--shell-color-text-muted);align-items:center;gap:8px;font-size:.875rem;display:flex}.shell-calendar-account-tag{border-radius:var(--shell-radius-sm);background:var(--shell-surface-brand-soft);color:var(--shell-color-brand);text-transform:lowercase;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:200px;padding:2px 6px;font-size:.7rem;font-weight:500;display:inline-block;overflow:hidden}.shell-calendar-meta{color:var(--shell-color-text-muted);overflow-wrap:anywhere;word-break:break-word;font-size:.813rem}.shell-calendar-clarification{border-radius:var(--shell-radius-sm);background:color-mix(in srgb,var(--shell-color-surface) 65%,transparent);border:1px solid var(--shell-color-border);flex-direction:column;gap:3px;margin-top:6px;padding:8px 10px;display:flex}.shell-calendar-clarification-thread+.shell-calendar-clarification-thread{border-top:1px solid color-mix(in srgb,var(--shell-color-border) 75%,transparent);margin-top:8px;padding-top:8px}.shell-calendar-clarification-meta{color:var(--shell-color-text-muted);font-size:.75rem}.shell-calendar-clarification-body{color:var(--shell-color-text);overflow-wrap:anywhere;word-break:break-word;font-size:.813rem}.shell-calendar-clarification-error{color:#dc2626;font-size:.75rem}.shell-calendar-clarification-composer{flex-direction:column;gap:8px;margin-top:8px;display:flex}.shell-calendar-clarification-recipient-row{flex-wrap:wrap;gap:6px;display:flex}.shell-calendar-clarification-empty-recipient{color:var(--shell-color-text-muted);font-size:.78rem}.shell-calendar-clarification-chip{border:1px solid var(--shell-color-brand);background:color-mix(in srgb,var(--shell-color-brand) 12%,transparent);color:var(--shell-color-text);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.76rem;display:inline-flex}.shell-calendar-clarification-recipient-search{border:1px solid var(--shell-color-border);background:var(--shell-color-bg-secondary);color:var(--shell-color-text);border-radius:var(--shell-radius-sm);font:inherit;width:100%;padding:9px 11px}.shell-calendar-clarification-recipient-search:focus{border-color:var(--shell-color-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--shell-color-brand) 20%,transparent);outline:none}.shell-calendar-clarification-recipient-list{flex-direction:column;gap:6px;display:flex}.shell-calendar-clarification-recipient-option{text-align:left;border:1px solid var(--shell-color-border);background:var(--shell-color-bg-secondary);color:var(--shell-color-text);border-radius:var(--shell-radius-sm);cursor:pointer;font:inherit;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:8px 10px;display:flex}.shell-calendar-clarification-recipient-option span:last-child{color:var(--shell-color-text-muted);font-size:.74rem}.shell-calendar-clarification-recipient-option.selected{border-color:var(--shell-color-brand);background:color-mix(in srgb,var(--shell-color-brand) 12%,var(--shell-color-bg-secondary))}.shell-calendar-clarification-input{resize:vertical;border:1px solid var(--shell-color-border);background:var(--shell-color-bg-secondary);color:var(--shell-color-text);border-radius:var(--shell-radius-sm);font:inherit;width:100%;min-height:84px;padding:10px 12px}.shell-calendar-clarification-input:focus{border-color:var(--shell-color-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--shell-color-brand) 20%,transparent);outline:none}.shell-calendar-clarification-actions{justify-content:flex-end;gap:8px;display:flex}.shell-calendar-actions{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:6px;display:flex}.shell-calendar-action-bar{border-top:1px solid var(--shell-color-border);align-items:center;gap:4px;margin-top:2px;padding-top:6px;display:flex}.shell-calendar-action-bar-spacer{flex:1}.shell-calendar-rsvp-row{gap:4px;display:flex}.shell-calendar-footer-badge{border:1px solid var(--shell-color-border);letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:0 8px;font-size:.68rem;font-weight:700;display:inline-flex}.shell-calendar-footer-badge.optional{color:#1d4ed8;background:rgba(59,130,246,.12);border-color:rgba(59,130,246,.32)}.shell-calendar-footer-badge.conflict{color:#b91c1c;background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.42)}.shell-calendar-footer-badge.open{color:#166534;background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.42)}.shell-calendar-rsvp-btn{cursor:pointer;transition:all var(--shell-transition-fast);border:2px solid transparent;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.shell-calendar-rsvp-btn:disabled{opacity:.4;cursor:not-allowed}.shell-calendar-rsvp-btn.accept{color:#fff;background:#22c55e;border-color:#22c55e}.shell-calendar-rsvp-btn.accept:hover:not(:disabled){background:#16a34a;border-color:#16a34a;box-shadow:0 0 0 3px rgba(34,197,94,.25)}.shell-calendar-rsvp-btn.tentative{color:#fff;background:#f59e0b;border-color:#f59e0b}.shell-calendar-rsvp-btn.tentative:hover:not(:disabled){background:#d97706;border-color:#d97706;box-shadow:0 0 0 3px rgba(245,158,11,.25)}.shell-calendar-rsvp-btn.decline{color:#ef4444;background:none;border-color:rgba(239,68,68,.4)}.shell-calendar-rsvp-btn.decline:hover:not(:disabled){color:#fff;background:#ef4444;border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.25)}.shell-calendar-pill-btn{border:1px solid var(--shell-color-border);color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);white-space:nowrap;background:none;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:.7rem;font-weight:500;line-height:1.4;display:inline-flex}.shell-calendar-pill-btn:hover:not(:disabled){border-color:var(--shell-color-brand);color:var(--shell-color-text);background:var(--shell-color-surface)}.shell-calendar-pill-btn.accept{background:var(--shell-color-brand);color:#fff;border-color:var(--shell-color-brand)}.shell-calendar-pill-btn.accept:hover:not(:disabled){filter:brightness(1.15);color:#fff}.shell-calendar-pill-btn.decline:hover:not(:disabled){color:#ef4444;background:rgba(239,68,68,.08);border-color:#ef4444}.shell-calendar-pill-btn:disabled{opacity:.5;cursor:not-allowed}.shell-calendar-pill-label{pointer-events:none}.shell-calendar-util-row{justify-content:flex-end;gap:4px;display:flex}.shell-calendar-icon-btn{color:var(--shell-color-text-muted);border-radius:var(--shell-radius-sm);cursor:pointer;transition:all var(--shell-transition-fast);background:none;border:1px solid transparent;justify-content:center;align-items:center;width:26px;height:26px;padding:0;text-decoration:none;display:inline-flex}.shell-calendar-icon-btn:hover:not(:disabled){border-color:var(--shell-color-border);color:var(--shell-color-text);background:var(--shell-color-surface)}.shell-calendar-icon-btn:disabled{opacity:.5;cursor:not-allowed}.shell-calendar-btn{border:1px solid var(--shell-color-border);color:var(--shell-color-text);border-radius:var(--shell-radius-sm);cursor:pointer;transition:all var(--shell-transition-fast);background:none;padding:6px 10px;font-size:.813rem;text-decoration:none}.shell-calendar-btn.primary{background:var(--shell-color-brand);color:#fff}.shell-calendar-btn.primary,.shell-calendar-btn:hover:not(:disabled){border-color:var(--shell-color-brand)}.shell-calendar-btn:disabled{opacity:.6;cursor:not-allowed}.shell-calendar-notice{background:var(--shell-surface-brand-faint);color:var(--shell-color-text);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);margin-bottom:8px;padding:8px 12px;font-size:.85rem}.shell-invite-settings-modal{max-width:520px}.shell-invite-settings-note{margin:0;font-size:.78rem}.shell-invite-settings-error{color:#ef4444;margin:0;font-size:.82rem}.shell-meeting-invites-footer{flex-wrap:wrap;align-items:center;gap:10px}.shell-meeting-invites-rsvp-window{align-items:center;gap:7px;min-height:28px;display:inline-flex}.shell-meeting-invites-rsvp-label{color:var(--shell-color-text-muted);letter-spacing:.01em;text-transform:uppercase;font-size:.76rem;font-weight:600}.shell-meeting-invites-rsvp-value{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:0 9px;font-size:.74rem;font-weight:700;display:inline-flex}.shell-meeting-invites-rsvp-value.is-enabled{color:var(--shell-color-brand);border-color:color-mix(in srgb,var(--shell-color-brand) 45%,var(--shell-color-border));background:color-mix(in srgb,var(--shell-color-brand) 12%,var(--shell-color-surface-alt))}.shell-meeting-invites-footer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.shell-meeting-invites-footer-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);cursor:pointer;transition:border-color var(--shell-transition-fast),color var(--shell-transition-fast),background var(--shell-transition-fast);border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:600;line-height:1.3}.shell-meeting-invites-footer-btn:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text);background:color-mix(in srgb,var(--shell-color-brand) 10%,var(--shell-color-surface-alt))}.shell-meeting-invites-footer-btn:focus-visible{outline:2px solid var(--shell-color-brand);outline-offset:2px}@container invites-widget (width <= 520px){.shell-meeting-invites-footer{align-items:stretch}.shell-meeting-invites-rsvp-window{justify-content:space-between;width:100%}.shell-meeting-invites-footer-actions{justify-content:flex-start;width:100%;margin-left:0}}.shell-calendar-notification-settings-overlay{z-index:2400;align-items:flex-start;padding:min(5vh,36px) min(4vw,32px);overflow-y:auto}.cal-modal.shell-calendar-notification-settings-modal{width:min(820px,100vw - 20px);max-width:820px;max-height:none;overflow:hidden}.cal-modal.shell-calendar-notification-settings-modal .cal-modal-body{overscroll-behavior:contain;max-height:min(74vh,760px);overflow-y:auto}.shell-calendar-notification-settings-grid{flex-direction:column;gap:14px;display:flex}.shell-calendar-notification-settings-section{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.shell-calendar-notification-settings-section h3{color:var(--shell-color-text);margin:0;font-size:.9rem}.shell-calendar-offset-grid{flex-wrap:wrap;gap:8px;display:flex}.shell-calendar-offset-chip{border:1px solid var(--shell-color-border);color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);background:none;border-radius:999px;padding:6px 10px;font-size:.78rem}.shell-calendar-offset-chip:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text)}.shell-calendar-offset-chip.active{background:var(--shell-color-brand);border-color:var(--shell-color-brand);color:#fff}.shell-calendar-settings-note{color:var(--shell-color-text-muted);margin:0;font-size:.78rem}.shell-calendar-settings-error{color:#ef4444;margin:0;font-size:.82rem}.shell-calendar-settings-permission{color:var(--shell-color-text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:.8rem;display:flex}.shell-calendar-settings-inline-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.shell-calendar-reminder-overlay{z-index:1100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:rgba(2,6,23,.68);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.shell-calendar-reminder-modal{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);border-radius:14px;flex-direction:column;gap:10px;width:min(92vw,560px);padding:18px;display:flex;box-shadow:0 28px 70px rgba(2,6,23,.5)}.shell-calendar-reminder-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.shell-calendar-reminder-kicker{letter-spacing:.05em;text-transform:uppercase;color:var(--shell-color-brand);margin:0;font-size:.76rem;font-weight:700}.shell-calendar-reminder-title{color:var(--shell-color-text);margin:0;font-size:1.25rem;line-height:1.2}.shell-calendar-reminder-account,.shell-calendar-reminder-location,.shell-calendar-reminder-queue,.shell-calendar-reminder-subtitle{color:var(--shell-color-text-muted);margin:0;font-size:.88rem}.shell-calendar-reminder-actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.shell-calendar-reminder-actions .shell-calendar-btn{min-width:120px}.shell-invite-enforce-overlay{z-index:1200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(2,6,23,.82);justify-content:center;align-items:center;padding:min(4vh,32px) min(4vw,32px);display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.shell-invite-enforce-modal{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);border-radius:16px;flex-direction:column;justify-content:center;gap:16px;width:min(94vw,1024px);min-height:min(84vh,760px);padding:24px;display:flex;box-shadow:0 30px 80px rgba(0,0,0,.45)}.shell-invite-enforce-kicker{letter-spacing:.05em;text-transform:uppercase;color:var(--shell-color-brand);margin:0;font-size:.78rem;font-weight:700}.shell-invite-enforce-title{color:var(--shell-color-text);margin:0;font-size:max(1.25rem,min(2.2vw,2rem));line-height:1.2}.shell-invite-enforce-subtitle{color:var(--shell-color-text-muted);max-width:75ch;margin:0;font-size:.92rem}.shell-invite-enforce-card{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.shell-invite-enforce-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.shell-invite-enforce-actions .shell-calendar-btn{text-align:center;min-width:120px}.shell-calendar-now-indicator{align-items:center;gap:8px;margin-bottom:4px;padding:6px 0;display:flex}.shell-calendar-now-dot{background:var(--shell-color-brand);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}.shell-calendar-now-time{color:var(--shell-color-brand);flex-shrink:0;font-size:.75rem;font-weight:600}.shell-calendar-now-line{background:var(--shell-color-brand);opacity:.4;flex:1;height:1px}.shell-calendar-proposed-overlay{border-style:dashed;border-width:2px;border-color:color-mix(in srgb,var(--shell-color-brand) 60%,var(--shell-color-border));background:color-mix(in srgb,var(--shell-color-brand) 12%,var(--shell-color-surface-alt))}.shell-calendar-proposed-overlay-conflict{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.72)}.shell-calendar-proposed-badge{text-transform:uppercase;letter-spacing:.03em;color:var(--shell-color-brand);border:1px solid color-mix(in srgb,var(--shell-color-brand) 50%,var(--shell-color-border));background:color-mix(in srgb,var(--shell-color-brand) 18%,var(--shell-color-surface));border-radius:999px;justify-content:center;align-items:center;padding:1px 8px;font-size:.66rem;font-weight:700;display:inline-flex}.shell-calendar-proposed-overlay-conflict .shell-calendar-proposed-badge{color:#dc2626;background:hsla(0,96%,89%,.55);border-color:rgba(239,68,68,.5)}.shell-calendar-free-time{border-style:dashed!important;border-color:var(--shell-color-success,#22c55e)!important;background:rgba(34,197,94,.05)!important}.shell-calendar-free-label{gap:6px;font-size:.875rem;font-weight:500}.shell-calendar-free-icon,.shell-calendar-free-label{color:var(--shell-color-success,#22c55e);align-items:center;display:flex}.shell-calendar-item-past{opacity:.5;background:var(--shell-color-surface)!important}.shell-calendar-item-past .shell-calendar-title{text-decoration:line-through;-webkit-text-decoration-color:var(--shell-color-text-muted);text-decoration-color:var(--shell-color-text-muted)}.shell-calendar-item-current{box-shadow:0 2px 8px color-mix(in srgb,var(--cal-stripe-color,var(--shell-color-brand)) 20%,transparent);position:relative;border-color:var(--cal-stripe-color,var(--shell-color-brand))!important;background:color-mix(in srgb,var(--cal-stripe-color,var(--shell-color-brand)) 8%,var(--shell-color-surface-alt))!important;border-left-width:4px!important}.shell-calendar-item-current:before{content:"▶ NOW";color:var(--cal-stripe-color,var(--shell-color-brand));background:var(--shell-color-surface);letter-spacing:.06em;border-radius:3px;padding:0 5px;font-size:.62rem;font-weight:800;position:absolute;top:-9px;left:14px}.shell-calendar-item-proposed-conflict{box-shadow:inset 0 0 0 1px rgba(239,68,68,.35);border-color:rgba(239,68,68,.65)!important}.shell-calendar-proposed-conflict-badge{color:#dc2626;text-transform:uppercase;letter-spacing:.03em;background:hsla(0,96%,89%,.45);border:1px solid rgba(239,68,68,.45);border-radius:999px;align-items:center;margin-left:auto;padding:1px 7px;font-size:.65rem;font-weight:700;display:inline-flex}.shell-calendar-proposed-empty-note{color:var(--shell-color-text-muted);border:1px dashed var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface-alt);padding:8px 10px;font-size:.8rem}.shell-calendar-countdown{color:var(--shell-color-brand);background:var(--shell-surface-brand-soft);border-radius:10px;align-items:center;gap:4px;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:600;animation:countdown-pulse 2s ease-in-out infinite;display:inline-flex}@keyframes countdown-pulse{0%,to{opacity:1}50%{opacity:.7}}.shell-link-button{color:var(--shell-color-brand);cursor:pointer;font:inherit;background:none;border:none;padding:0;text-decoration:underline}.shell-calendar-page{gap:var(--shell-spacing-lg);flex-direction:column;height:100%;display:flex}.shell-calendar-toolbar{justify-content:space-between;align-items:flex-start;gap:var(--shell-spacing-lg);border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:16px;padding:18px 20px;display:flex;box-shadow:0 10px 30px rgba(0,0,0,.06)}.shell-calendar-toolbar-left{flex-direction:column;gap:8px;display:flex}.shell-calendar-title-block .eyebrow{text-transform:uppercase;letter-spacing:.04em;color:var(--shell-color-text-muted);font-size:.75rem}.shell-calendar-title-block .title{color:var(--shell-color-text);font-size:1.3rem;font-weight:700}.shell-calendar-controls{align-items:center;gap:10px;display:flex}.shell-calendar-nav-btns{align-items:center;gap:8px;display:flex}.shell-calendar-range{color:var(--shell-color-text);letter-spacing:-.01em;font-weight:600}.shell-calendar-toolbar-right{align-items:center;gap:var(--shell-spacing-md);display:flex}.shell-calendar-view-switch{background:var(--shell-color-surface-alt);border:1px solid var(--shell-color-border);border-radius:999px;gap:6px;padding:4px;display:inline-flex}.shell-calendar-pill{color:var(--shell-color-text-muted);cursor:pointer;transition:all var(--shell-transition-fast);background:none;border:1px solid transparent;border-radius:999px;padding:6px 12px;font-weight:600}.shell-calendar-pill.active{background:var(--shell-color-brand);color:#fff;border-color:var(--shell-color-brand);box-shadow:0 6px 20px var(--shell-surface-brand-strong)}.shell-calendar-connection{align-items:center;gap:10px;display:flex}.shell-calendar-btn.subtle{background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);border-style:dashed}.shell-calendar-btn.icon{width:34px;height:34px;padding:0}.shell-calendar-layout{gap:var(--shell-spacing-lg);grid-template-columns:minmax(0,2fr) minmax(320px,420px);align-items:start;display:grid}.shell-calendar-surface{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:16px;min-height:520px;padding:16px}.shell-calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.shell-calendar-week.single{grid-template-columns:1fr}.shell-calendar-week-day{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:12px;flex-direction:column;min-height:200px;display:flex}.shell-calendar-week-day-header{border-bottom:1px solid var(--shell-color-border);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.shell-calendar-week-day-name{color:var(--shell-color-text-muted);font-weight:600}.shell-calendar-week-day-number{color:var(--shell-color-text);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.shell-calendar-week-day-number.today{background:var(--shell-surface-brand-soft);color:var(--shell-color-brand);font-weight:700}.shell-calendar-week-events{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex}.shell-calendar-event-card{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-md);text-align:left;background:var(--shell-color-surface);cursor:pointer;transition:all var(--shell-transition-fast);padding:10px 12px}.shell-calendar-event-card:hover{border-color:var(--shell-color-brand);transform:translateY(-2px)}.shell-calendar-event-card.selected{border-color:var(--shell-color-brand);box-shadow:0 6px 20px var(--shell-surface-brand-strong)}.shell-calendar-event-time{color:var(--shell-color-text-muted);font-size:.85rem}.shell-calendar-event-title{margin-top:2px;margin-bottom:4px;font-weight:600}.shell-calendar-event-meta{color:var(--shell-color-text-muted);font-size:.8rem}.shell-calendar-empty{text-align:center;color:var(--shell-color-text-muted);padding:16px}.shell-calendar-empty.muted{text-align:left;padding:0}.shell-calendar-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.shell-calendar-month-cell{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:12px;flex-direction:column;gap:6px;min-height:120px;padding:8px;display:flex}.shell-calendar-month-cell.today{border-color:var(--shell-color-brand);box-shadow:inset 0 0 0 1px var(--shell-border-brand-soft)}.shell-calendar-month-cell.muted{opacity:.5}.shell-calendar-month-day{color:var(--shell-color-text);justify-content:space-between;font-weight:600;display:flex}.shell-calendar-month-events{flex-direction:column;gap:6px;display:flex}.shell-calendar-chip{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);cursor:pointer;text-align:left;transition:all var(--shell-transition-fast);border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:inline-flex}.shell-calendar-chip .dot{background:var(--shell-color-brand);border-radius:999px;width:8px;height:8px}.shell-calendar-chip .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-calendar-chip.selected{border-color:var(--shell-color-brand);background:var(--shell-surface-brand-weak)}.shell-calendar-more{color:var(--shell-color-text-muted);font-size:.8rem}.shell-calendar-agenda{flex-direction:column;gap:8px;display:flex}.shell-calendar-agenda-row{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);cursor:pointer;transition:all var(--shell-transition-fast);border-radius:12px;grid-template-columns:90px 1fr 80px;align-items:center;gap:12px;padding:10px 12px;display:grid}.shell-calendar-agenda-row.selected,.shell-calendar-agenda-row:hover{border-color:var(--shell-color-brand)}.shell-calendar-agenda-row.selected{box-shadow:0 6px 20px var(--shell-surface-brand-strong)}.shell-calendar-agenda-date{color:var(--shell-color-text-muted);flex-direction:column;align-items:flex-start;gap:2px;font-weight:600;display:flex}.shell-calendar-agenda-date .day{color:var(--shell-color-text);font-size:1.3rem}.shell-calendar-agenda-main .title{font-weight:600}.shell-calendar-agenda-main .meta{color:var(--shell-color-text-muted);font-size:.85rem}.shell-calendar-agenda-actions{text-align:right;color:var(--shell-color-brand);font-weight:600}.shell-calendar-context{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:16px;flex-direction:column;gap:16px;padding:16px;display:flex;position:-webkit-sticky;position:sticky;top:12px}.shell-calendar-context-header .label{color:var(--shell-color-text-muted);letter-spacing:.03em;text-transform:uppercase;font-size:.8rem}.shell-calendar-context-header .heading{margin-top:4px;font-size:1.1rem;font-weight:700}.shell-calendar-context-header .subheading{color:var(--shell-color-text-muted);margin-top:2px}.shell-calendar-context-header .meta{color:var(--shell-color-text-muted);font-size:.9rem}.shell-calendar-context-body{flex-direction:column;gap:16px;display:flex}.shell-calendar-context-block{border:1px dashed var(--shell-color-border);background:var(--shell-color-surface-alt);border-radius:12px;padding:12px}.shell-calendar-context-block .block-title{margin-bottom:8px;font-weight:700}.shell-calendar-context-card{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:12px;flex-direction:column;gap:4px;padding:12px;display:flex}.shell-calendar-context-card .label{color:var(--shell-color-text-muted);font-size:.8rem}.shell-calendar-context-card .title{font-weight:700}.shell-calendar-context-card p{color:var(--shell-color-text-muted);margin:0;font-size:.9rem}.shell-calendar-context-grid{gap:10px}.shell-calendar-blueprint,.shell-calendar-context-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.shell-calendar-blueprint{gap:8px;margin:0;padding:0;list-style:none}.shell-calendar-blueprint li{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:10px;padding:10px}.shell-calendar-blueprint .title{font-weight:700}.shell-calendar-blueprint .body{color:var(--shell-color-text-muted);margin-top:4px;font-size:.9rem}.shell-calendar-attachment-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shell-calendar-attachment-list li{justify-content:space-between;align-items:center;gap:8px;display:flex}.shell-calendar-attachment-list a{color:var(--shell-color-brand);font-weight:600}.shell-calendar-attachment-list .mime{color:var(--shell-color-text-muted);font-size:.8rem}.pill-row{flex-wrap:wrap;gap:8px;display:flex}.shell-calendar-pill.attendee{border-color:var(--shell-color-border);color:var(--shell-color-text)}.shell-calendar-pill.attendee .sub{color:var(--shell-color-text-muted);margin-left:6px;font-weight:400}@media (max-width:1100px){.shell-calendar-layout{grid-template-columns:1fr}.shell-calendar-context{position:static}.shell-calendar-toolbar{flex-direction:column}}.cal-page{flex-direction:column;gap:16px;height:100%;display:flex}.cal-toolbar{background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-md);box-shadow:var(--shell-shadow-md);flex-shrink:0;justify-content:space-between;padding:12px 16px}.cal-toolbar,.cal-toolbar-left{align-items:center;display:flex}.cal-toolbar-left{gap:12px}.cal-toolbar-right{align-items:center;gap:10px;display:flex}.cal-nav-btn{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);color:var(--shell-color-text);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:all .15s}.cal-nav-btn:hover{background:var(--shell-color-surface-alt);border-color:var(--shell-color-brand)}.cal-nav-arrows{gap:4px;display:flex}.cal-nav-arrow{border:1px solid var(--shell-color-border);color:var(--shell-color-text-muted);cursor:pointer;background:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.cal-nav-arrow:hover{background:var(--shell-color-surface-alt);color:var(--shell-color-text);border-color:var(--shell-color-brand)}.cal-title{color:var(--shell-color-text);margin:0;font-size:1.125rem;font-weight:600}.cal-view-toggle{background:var(--shell-color-surface-alt);border-radius:8px;gap:2px;padding:3px;display:flex}.cal-view-btn{color:var(--shell-color-text-muted);cursor:pointer;background:none;border:none;border-radius:6px;padding:6px 14px;font-size:.875rem;font-weight:500;transition:all .15s}.cal-view-btn.active,.cal-view-btn:hover{color:var(--shell-color-text)}.cal-view-btn.active{background:var(--shell-color-surface);box-shadow:0 1px 3px rgba(0,0,0,.1)}.cal-preferences-trigger{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:inline-flex}.cal-preferences-trigger svg{width:16px;height:16px}.cal-preferences-trigger:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text);background:var(--shell-color-surface-alt)}.cal-status{color:var(--shell-color-text-muted);align-items:center;gap:6px;font-size:.813rem;display:flex}.cal-status-dot{background:var(--shell-color-text-muted);border-radius:50%;width:8px;height:8px}.cal-status.connected .cal-status-dot{background:#10b981}.cal-status.disconnected .cal-status-dot{background:#f59e0b}.cal-content{flex:1;grid-template-columns:230px minmax(0,1fr) 340px;gap:16px;min-height:0;display:grid;overflow:hidden}.cal-calendar-list-panel{background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-md);box-shadow:var(--shell-shadow-md);min-width:0;min-height:0;padding:14px;overflow:auto}.cal-calendar-list-header{border-bottom:1px solid var(--shell-color-border);justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:12px;display:flex}.cal-calendar-list-title{color:var(--shell-color-text);font-size:.875rem;font-weight:800}.cal-calendar-list-count{color:var(--shell-color-text-muted);margin-top:2px;font-size:.75rem}.cal-calendar-list-actions{gap:4px;display:flex}.cal-calendar-list-actions button{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text-muted);cursor:pointer;border-radius:6px;height:26px;padding:0 8px;font-size:.75rem;font-weight:700}.cal-calendar-list-actions button:hover{border-color:var(--shell-color-brand);color:var(--shell-color-text)}.cal-source-group{padding-top:14px}.cal-source-group-title{color:var(--shell-color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.7rem;font-weight:800}.cal-source-list{flex-direction:column;gap:3px;display:flex}.cal-source-row{color:var(--shell-color-text-muted);cursor:pointer;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;min-height:30px;padding:4px 5px;display:grid}.cal-source-row:hover{background:var(--shell-color-surface-alt)}.cal-source-row:focus-within{box-shadow:0 0 0 2px var(--shell-color-brand)}.cal-source-row.checked{color:var(--shell-color-text)}.cal-source-row input{opacity:0;pointer-events:none;position:absolute}.cal-source-swatch{box-sizing:border-box;border:2px solid;border-radius:4px;width:15px;height:15px}.cal-source-row.checked .cal-source-swatch:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:8px;margin:0 auto;display:block;transform:rotate(45deg)}.cal-source-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.cal-source-account,.cal-source-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-source-name{font-size:.8125rem;font-weight:650}.cal-source-account{color:var(--shell-color-text-muted);font-size:.68rem}.cal-source-empty{color:var(--shell-color-text-muted);padding:14px 0;font-size:.8125rem}.cal-main,.cal-sidebar{background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-md);box-shadow:var(--shell-shadow-md);flex-direction:column;min-height:0;display:flex;overflow:hidden}.cal-sidebar{height:100%;max-height:100%}.cal-grid-container{flex-direction:column;height:100%;display:flex}.cal-header-row{border-bottom:1px solid var(--shell-color-border);flex-shrink:0;display:flex}.cal-header-row .cal-time-gutter{flex-shrink:0;width:60px}.cal-day-header{flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 8px;display:flex}.cal-day-name{color:var(--shell-color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:500}.cal-day-number{color:var(--shell-color-text);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.938rem;font-weight:600;display:flex}.cal-day-number.today{background:var(--shell-color-brand);color:#fff}.cal-all-day-row,.cal-outside-hours-row,.cal-tasks-due-row{border-bottom:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface) 92%,var(--shell-color-background));flex-shrink:0;display:flex}.cal-band-gutter{color:var(--shell-color-text-muted);text-transform:uppercase;border-right:1px solid rgba(0,0,0,.06);flex-shrink:0;justify-content:flex-end;align-items:flex-start;width:60px;padding:8px 8px 8px 0;font-size:.688rem;font-weight:600;display:flex}.cal-all-day-cell,.cal-outside-hours-cell,.cal-tasks-due-cell{border-right:1px solid rgba(0,0,0,.06);flex-direction:column;flex:1;gap:4px;min-width:0;min-height:42px;padding:6px;display:flex}.cal-all-day-cell:last-child,.cal-outside-hours-cell:last-child,.cal-tasks-due-cell:last-child{border-right:none}.cal-tasks-due-row{background:color-mix(in srgb,var(--shell-color-surface) 96%,var(--shell-color-background))}.cal-tasks-due-cell{justify-content:center;min-height:34px;padding:4px 6px}.cal-tasks-due-button{color:var(--shell-color-text-muted);text-align:center;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:none;border:1px solid transparent;border-radius:6px;width:100%;min-height:24px;padding:3px 7px;font-size:.72rem;font-weight:700;line-height:1.2;transition:background .15s,border-color .15s,color .15s;overflow:hidden}.cal-tasks-due-button.has-tasks,.cal-tasks-due-button:hover{border-color:color-mix(in srgb,var(--shell-color-brand) 28%,var(--shell-color-border));background:var(--shell-surface-brand-weak);color:var(--shell-color-brand)}.cal-outside-hours-row{background:color-mix(in srgb,var(--shell-color-surface) 86%,var(--shell-color-warning-bg,#fef7e0))}.cal-all-day-event,.cal-outside-hours-event{cursor:pointer;text-align:left;box-sizing:border-box;border:none;border-left:4px solid;border-radius:6px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:3px 6px;width:100%;min-height:28px;padding:4px 7px;transition:box-shadow .15s,transform .15s;display:grid}.cal-all-day-event:hover,.cal-outside-hours-event:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.12)}.cal-all-day-event.selected,.cal-outside-hours-event.selected{box-shadow:0 0 0 2px var(--shell-color-brand)}.cal-band-prefix{color:var(--event-color,var(--shell-color-text-muted));text-transform:uppercase;grid-column:1/-1;font-size:.625rem;font-weight:700}.cal-band-title{text-overflow:ellipsis;white-space:nowrap;color:var(--shell-color-text);min-width:0;font-size:.75rem;font-weight:700;overflow:hidden}.cal-band-time{color:var(--event-color,var(--shell-color-text-muted));white-space:nowrap;font-size:.688rem;font-weight:600}.cal-grid-scroll{flex:1;overflow-x:hidden;overflow-y:auto}.cal-grid-body{display:flex;position:relative}.cal-grid-body .cal-time-gutter{border-right:1px solid rgba(0,0,0,.06);flex-shrink:0;width:60px}.cal-time-label{color:var(--shell-color-text-muted);justify-content:flex-end;align-items:flex-start;height:60px;padding:0 8px;font-size:.688rem;display:flex;transform:translateY(-8px)}.cal-day-column{border-right:1px solid rgba(0,0,0,.06);flex:1;position:relative}.cal-day-column:last-child{border-right:none}.cal-day-column.today{background:rgba(66,133,244,.04)}.cal-time-slot{cursor:pointer;border-bottom:1px solid rgba(0,0,0,.06);height:60px;transition:background-color .15s;position:relative}.cal-time-slot:hover{background:var(--shell-surface-brand-hover)}.cal-time-slot.outside-working-hours{background:color-mix(in srgb,var(--shell-color-background) 46%,transparent)}.cal-time-slot.outside-working-hours:hover{background:color-mix(in srgb,var(--shell-color-brand) 9%,var(--shell-color-background))}.cal-time-slot.drop-target{background:var(--shell-surface-brand-soft);box-shadow:inset 0 0 0 2px var(--shell-color-brand)}.cal-time-slot:after{content:"";pointer-events:none;background:rgba(0,0,0,.03);height:1px;position:absolute;top:50%;left:0;right:0}.cal-time-slot:last-child{border-bottom:none}.cal-now-line{z-index:10;height:2px;left:0;right:0}.cal-now-line,.cal-now-line:before{background:#ef4444;position:absolute}.cal-now-line:before{content:"";border-radius:50%;width:8px;height:8px;top:-3px;left:-4px}.cal-event{text-align:left;cursor:grab;z-index:5;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:none;border-left:4px solid;border-radius:6px;padding:3px 8px;transition:box-shadow .15s,opacity .15s,z-index;position:absolute;left:4px;right:4px;overflow:hidden}.cal-event:hover{z-index:7;box-shadow:0 2px 8px rgba(0,0,0,.15)}.cal-event:active{cursor:grabbing}.cal-event.dragging{opacity:.5;z-index:100;box-shadow:0 4px 16px rgba(0,0,0,.2)}.cal-event.selected{box-shadow:0 0 0 2px var(--shell-color-brand);z-index:8}.cal-event-time{gap:4px;font-size:.688rem;font-weight:500}.cal-event-time,.cal-private-event-icon{color:var(--event-color,var(--shell-color-text-muted));align-items:center;display:inline-flex}.cal-private-event-icon{opacity:.55;vertical-align:middle;flex-shrink:0;justify-content:center;width:14px;height:14px}.cal-private-event-icon svg{width:13px;height:13px}.cal-event-title{color:var(--shell-color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.813rem;font-weight:600;overflow:hidden}.cal-event.compact{align-items:center;padding:2px 6px;display:flex}.cal-event-compact{align-items:baseline;gap:2px;min-width:0;display:flex;overflow:hidden}.cal-event-compact .cal-event-title{flex-shrink:1;min-width:0}.cal-event-compact .cal-event-time{flex-shrink:0;margin-left:0}.cal-month{flex-direction:column;height:100%;display:flex}.cal-month-header{border-bottom:1px solid var(--shell-color-border);grid-template-columns:repeat(7,1fr);display:grid}.cal-month-day-name{text-align:center;color:var(--shell-color-text-muted);text-transform:uppercase;letter-spacing:.03em;padding:12px;font-size:.75rem;font-weight:500}.cal-month-grid{flex:1;grid-template-columns:repeat(7,1fr);display:grid}.cal-month-cell{border-right:1px solid var(--shell-color-border);border-bottom:1px solid var(--shell-color-border);min-height:100px;padding:8px}.cal-month-cell:nth-child(7n){border-right:none}.cal-month-cell.muted{background:var(--shell-color-surface-alt)}.cal-month-cell.muted .cal-month-date{color:var(--shell-color-text-muted)}.cal-month-cell.today .cal-month-date{background:var(--shell-color-brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.cal-month-date{color:var(--shell-color-text);margin-bottom:4px;font-size:.813rem;font-weight:500}.cal-month-events{flex-direction:column;gap:2px;display:flex}.cal-month-event{cursor:pointer;text-align:left;background:none;border:none;border-radius:4px;align-items:center;gap:6px;padding:2px 6px;transition:background .15s;display:flex}.cal-month-event:hover{background:var(--shell-color-surface-alt)}.cal-month-event.selected{background:var(--shell-surface-brand-weak)}.cal-month-event .dot{background:var(--dot-color,var(--shell-color-brand));border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-month-event .label{color:var(--shell-color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.cal-month-more{color:var(--shell-color-text-muted);padding:2px 6px;font-size:.688rem}.cal-agenda{flex-direction:column;gap:2px;padding:12px;display:flex}.cal-agenda-item{cursor:pointer;text-align:left;background:none;border:1px solid transparent;border-radius:8px;align-items:center;gap:12px;padding:12px;transition:all .15s;display:flex}.cal-agenda-item.selected,.cal-agenda-item:hover{background:var(--shell-color-surface-alt)}.cal-agenda-item.selected{border-color:var(--shell-color-brand)}.cal-agenda-date{text-align:center;flex-shrink:0;width:48px}.cal-agenda-date .day{color:var(--shell-color-text);font-size:1.5rem;font-weight:600;line-height:1;display:block}.cal-agenda-date .month{color:var(--shell-color-text-muted);text-transform:uppercase;font-size:.75rem;display:block}.cal-agenda-indicator{border-radius:2px;flex-shrink:0;width:3px;height:40px}.cal-agenda-content{flex:1;min-width:0}.cal-agenda-content .title{color:var(--shell-color-text);font-weight:500}.cal-agenda-content .meta,.cal-agenda-content .title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-agenda-content .meta{color:var(--shell-color-text-muted);font-size:.813rem}.cal-view-shell{height:100%;min-height:0;position:relative}.cal-view-shell.loading{cursor:progress}.cal-loading-banner{z-index:5;border:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface) 92%,transparent);box-shadow:var(--shell-shadow-sm);color:var(--shell-color-text-muted);pointer-events:none;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:7px 12px;font-size:.813rem;font-weight:600;display:inline-flex;position:absolute;top:12px;right:12px}.cal-loading-banner .cal-loading-spinner{width:16px;height:16px}.cal-loading{color:var(--shell-color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:300px;display:flex}.cal-loading-spinner{border:2px solid var(--shell-color-border);border-top-color:var(--shell-color-brand);border-radius:50%;width:24px;height:24px;animation:cal-spin .8s linear infinite}@keyframes cal-spin{to{transform:rotate(1turn)}}.cal-empty{color:var(--shell-color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:300px;padding:24px;display:flex}.cal-btn{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);color:var(--shell-color-text);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:all .15s}.cal-btn.primary{background:var(--shell-color-brand);border-color:var(--shell-color-brand);color:#fff}.cal-btn.primary:hover{filter:brightness(1.1)}.cal-detail-empty{text-align:center;color:var(--shell-color-text-muted);-webkit-overflow-scrolling:touch;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:300px;padding:24px;display:flex;overflow-y:auto}.cal-detail-empty-icon{color:var(--shell-color-border)}.cal-detail{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:16px;min-height:0;padding:20px 20px 32px;display:flex;overflow-y:auto}.cal-detail-header{border-left:3px solid var(--shell-color-brand);padding-left:12px}.cal-detail-title{color:var(--shell-color-text);font-size:1.125rem;font-weight:600;line-height:1.3}.cal-detail-time{color:var(--shell-color-text);margin-top:4px;font-size:.938rem}.cal-detail-date{color:var(--shell-color-text-muted);margin-top:2px;font-size:.875rem}.cal-detail-calendar{color:var(--shell-color-text-muted);margin-top:8px;font-size:.75rem;font-weight:700}.cal-join-btn{color:#fff;background:#10b981;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.cal-join-btn:hover{filter:brightness(1.1)}.cal-meeting-hub-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.cal-meeting-hub-btn:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.cal-detail-section{flex-direction:column;gap:8px;display:flex}.cal-detail-section-title{color:var(--shell-color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.cal-detail-description,.cal-detail-location{color:var(--shell-color-text);font-size:.875rem}.cal-detail-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.cal-meeting-agenda-detail{color:var(--shell-color-text);flex-direction:column;gap:12px;font-size:.875rem;display:flex}.cal-meeting-agenda-detail strong{color:var(--shell-color-text-muted);margin-bottom:4px;font-size:.78rem;display:block}.cal-meeting-agenda-detail p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.cal-meeting-agenda-docs{flex-direction:column;gap:6px;display:flex}.cal-meeting-agenda-docs a,.cal-meeting-agenda-docs span{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);overflow-wrap:anywhere;border-radius:8px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:6px 8px;font-size:.8rem;text-decoration:none}.cal-attendees{flex-direction:column;gap:8px;display:flex}.cal-attendee{align-items:center;gap:10px;display:flex}.cal-attendee-avatar{background:var(--shell-color-surface-alt);border:1px solid var(--shell-color-border);color:var(--shell-color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.813rem;font-weight:600;display:flex}.cal-attendee-info .name{color:var(--shell-color-text);font-size:.875rem;font-weight:500}.cal-attendee-info .email{color:var(--shell-color-text-muted);font-size:.75rem}.cal-attendee-status{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text-muted);white-space:nowrap;border-radius:999px;margin-left:auto;padding:3px 7px;font-size:.688rem;font-weight:700;line-height:1}.cal-attendee-status.status-accepted{color:#047857;background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.24)}.cal-attendee-status.status-declined{color:#b91c1c;background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.24)}.cal-attendee-status.status-tentative{color:#92400e;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28)}.cal-attendee-more{color:var(--shell-color-text-muted);padding-left:42px;font-size:.813rem}.cal-attachments{flex-direction:column;gap:6px;display:flex}.cal-attachment{background:var(--shell-color-surface-alt);border:1px solid var(--shell-color-border);color:var(--shell-color-text);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.875rem;text-decoration:none;transition:all .15s;display:flex}.cal-attachment:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.cal-detail-account{color:var(--shell-color-text);align-items:center;gap:8px;font-size:.875rem;display:flex}.cal-account-dot{border-radius:50%;width:8px;height:8px}.cal-open-link{border:1px dashed var(--shell-color-border);color:var(--shell-color-text-muted);background:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.813rem;text-decoration:none;transition:all .15s;display:flex}.shell-calendar-modal-link-list{flex-direction:column;gap:8px;display:flex}.cal-open-link:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.cal-notes-title-row{align-items:center;gap:6px;display:inline-flex;position:relative}.cal-info-tooltip{border:1px solid var(--shell-color-border);color:var(--shell-color-text-muted);cursor:help;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex;position:static}.cal-info-tooltip-content{z-index:6;background:var(--shell-color-text);color:var(--shell-color-surface);overflow-wrap:break-word;opacity:0;pointer-events:none;border-radius:8px;width:min(240px,100vw - 32px);padding:8px 10px;font-size:.75rem;font-weight:500;line-height:1.35;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 8px);left:0;transform:translateY(4px)}.cal-info-tooltip:focus .cal-info-tooltip-content,.cal-info-tooltip:hover .cal-info-tooltip-content{opacity:1;transform:translateY(0)}.cal-detail-actions{gap:8px;display:flex}.cal-action-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.cal-action-btn:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.cal-action-btn.danger{color:#ef4444}.cal-action-btn.danger:hover{background:rgba(239,68,68,.1);border-color:#ef4444}.cal-tasks-due-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:rgba(15,23,42,.38);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.cal-tasks-due-modal{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:12px;flex-direction:column;width:min(620px,100%);min-height:420px;max-height:min(760px,100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.28)}.cal-tasks-due-modal-header{border-bottom:1px solid var(--shell-color-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 14px;display:flex}.cal-tasks-due-modal-header h2{color:var(--shell-color-text);margin:2px 0 0;font-size:1.1rem;line-height:1.25}.cal-tasks-due-modal-eyebrow{color:var(--shell-color-text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.cal-tasks-due-modal-close{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);cursor:pointer;border-radius:999px;flex-shrink:0;padding:7px 12px;font-size:.82rem;font-weight:700;transition:border-color .15s,color .15s,background .15s}.cal-tasks-due-modal-close:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand);background:var(--shell-surface-brand-weak)}.cal-tasks-due-modal-body{flex:1;min-height:0;padding:14px;overflow:hidden}.cal-preferences-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:rgba(15,23,42,.38);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.cal-preferences-modal{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:12px;flex-direction:column;width:min(560px,100%);max-height:min(720px,100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.28)}.cal-preferences-modal-footer,.cal-preferences-modal-header{justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.cal-preferences-modal-header{border-bottom:1px solid var(--shell-color-border)}.cal-preferences-modal-footer{border-top:1px solid var(--shell-color-border)}.cal-preferences-modal-header h2{color:var(--shell-color-text);margin:2px 0 0;font-size:1.05rem;line-height:1.25}.cal-preferences-eyebrow{color:var(--shell-color-text-muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:800}.cal-preferences-close,.cal-preferences-primary,.cal-preferences-secondary{border:1px solid var(--shell-color-border);cursor:pointer;border-radius:999px;min-height:34px;padding:7px 13px;font-size:.82rem;font-weight:700;transition:all .15s}.cal-preferences-close,.cal-preferences-secondary{background:var(--shell-color-surface);color:var(--shell-color-text)}.cal-preferences-primary{border-color:var(--shell-color-brand);background:var(--shell-color-brand);color:#fff}.cal-preferences-close:hover,.cal-preferences-secondary:hover{border-color:var(--shell-color-brand);color:var(--shell-color-brand);background:var(--shell-surface-brand-weak)}.cal-preferences-primary:hover:not(:disabled){background:var(--shell-color-brand-hover)}.cal-preferences-primary:disabled,.cal-preferences-secondary:disabled{opacity:.55;cursor:not-allowed}.cal-preferences-modal-body{flex-direction:column;gap:10px;padding:14px 18px;display:flex;overflow-y:auto}.cal-preferences-field{border-bottom:1px solid var(--shell-color-border);color:var(--shell-color-text);grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:12px;min-height:58px;padding:10px 0;font-size:.88rem;font-weight:700;display:grid}.cal-preferences-field input[type=color]{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);cursor:pointer;border-radius:7px;width:38px;height:30px;padding:2px}.cal-preferences-description{color:var(--shell-color-text-muted);margin-top:3px;font-size:.75rem;font-weight:500;line-height:1.35;display:block}.cal-preferences-working-hours{grid-template-columns:minmax(0,1fr) auto}.cal-preferences-time-range{color:var(--shell-color-text-muted);align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:inline-flex}.cal-preferences-time-range input{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);border-radius:8px;min-height:32px;padding:4px 8px}.cal-preferences-toggle-row{color:var(--shell-color-text);cursor:pointer;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:10px 0 4px;display:grid}.cal-preferences-toggle-row input{margin-top:3px}.cal-preferences-toggle-row span span,.cal-preferences-toggle-row strong{display:block}.cal-preferences-toggle-row span span{color:var(--shell-color-text-muted);margin-top:3px;font-size:.76rem;line-height:1.35}.cal-preferences-error{color:#dc2626;background:rgba(239,68,68,.1);border-radius:8px;margin:4px 0 0;padding:8px 10px;font-size:.8rem;font-weight:700}.cal-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.5);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.cal-modal{background:var(--shell-color-surface);border:1px solid var(--shell-color-border);border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px rgba(0,0,0,.3)}.cal-modal.shell-calendar-event-modal{background:var(--shell-color-bg-elevated,var(--shell-color-surface-elevated,var(--shell-color-surface)));border-color:color-mix(in srgb,var(--shell-color-border) 88%,#000 12%);max-width:640px}.cal-modal-header{border-bottom:1px solid var(--shell-color-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.cal-modal-title{color:var(--shell-color-text);font-size:1.125rem;font-weight:600}.cal-modal-close{color:var(--shell-color-text-muted);cursor:pointer;background:none;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.cal-modal-close:hover{background:var(--shell-color-surface-alt);color:var(--shell-color-text)}.cal-modal-body{flex-direction:column;gap:16px;padding:20px;display:flex}.shell-calendar-attendance-row{flex-wrap:wrap;gap:8px;display:flex}.shell-calendar-attendance-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);cursor:pointer;border-radius:999px;min-width:84px;padding:8px 12px;font-size:.8rem;font-weight:600;transition:all .15s}.shell-calendar-attendance-btn.yes.active{color:#fff;background:#22c55e;border-color:#16a34a}.shell-calendar-attendance-btn.maybe.active{color:#fff;background:#f59e0b;border-color:#d97706}.shell-calendar-attendance-btn.no.active{color:#fff;background:#ef4444;border-color:#dc2626}.shell-calendar-attendance-btn:hover:not(:disabled){border-color:var(--shell-color-brand)}.shell-calendar-attendance-btn:disabled{opacity:.6;cursor:not-allowed}.shell-calendar-attendance-note{color:var(--shell-color-text-muted);font-size:.78rem;line-height:1.4}.shell-calendar-attendance-error{color:#dc2626;font-size:.82rem}.cal-form-group{flex-direction:column;gap:6px;display:flex}.cal-form-label{color:var(--shell-color-text-muted);font-size:.813rem;font-weight:500}.cal-form-input{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);border-radius:8px;outline:none;padding:10px 12px;font-size:.875rem;transition:all .15s}.cal-form-input:focus{border-color:var(--shell-color-brand);box-shadow:0 0 0 3px var(--shell-surface-brand-weak)}.cal-form-input::placeholder{color:var(--shell-color-text-muted)}.cal-form-textarea{resize:vertical;min-height:96px;line-height:1.45}.cal-attendee-input-wrap{flex-direction:column;gap:8px;display:flex;position:relative}.cal-attendee-suggestions{z-index:4;border:1px solid var(--shell-color-border);background:var(--shell-color-bg-elevated,var(--shell-color-surface));border-radius:10px;flex-direction:column;gap:4px;max-height:240px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 36px rgba(15,23,42,.16)}.cal-attendee-suggestion{color:var(--shell-color-text);text-align:left;cursor:pointer;background:none;border:0;border-radius:8px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:44px;padding:7px 8px;display:grid}.cal-attendee-suggestion:hover{background:var(--shell-color-surface-alt)}.cal-attendee-suggestion-avatar{background:var(--shell-surface-brand-weak);color:var(--shell-color-brand);border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.82rem;font-weight:700;display:inline-flex}.cal-attendee-suggestion-main{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-attendee-suggestion-main span,.cal-attendee-suggestion-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-attendee-suggestion-main strong{font-size:.84rem;font-weight:700}.cal-attendee-suggestion-main span,.cal-attendee-suggestion-source{color:var(--shell-color-text-muted);font-size:.75rem}.cal-attendee-suggestion-source{white-space:nowrap}.cal-meeting-agenda-form{border:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface-alt) 72%,transparent);border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.cal-meeting-agenda-form>.cal-form-label{color:var(--shell-color-text);font-weight:700}.cal-meeting-agenda-attach-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-meeting-agenda-attach-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.cal-form-doc-row .cal-modal-btn,.cal-meeting-agenda-attach-actions .cal-modal-btn{flex:none;padding:7px 10px;font-size:.78rem}.cal-form-doc-list,.cal-form-doc-search-results{flex-direction:column;gap:8px;display:flex}.cal-form-doc-row{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:8px 10px;display:flex}.cal-form-doc-row span{color:var(--shell-color-text);overflow-wrap:anywhere;min-width:0;font-size:.82rem}.cal-form-doc-remove{color:#dc2626;cursor:pointer;background:none;border:none;flex:none;font-size:.78rem;font-weight:600}.cal-form-file-picker{border:1px dashed var(--shell-color-border);background:var(--shell-color-surface);border-radius:10px;flex-direction:column;gap:10px;padding:10px;display:flex}.cal-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cal-form-checkbox{cursor:pointer;align-items:center;gap:8px;display:flex}.cal-form-checkbox input{accent-color:var(--shell-color-brand);width:16px;height:16px}.cal-form-checkbox span{color:var(--shell-color-text);font-size:.875rem}.cal-modal-footer{border-top:1px solid var(--shell-color-border);gap:12px;padding:16px 20px;display:flex}.cal-modal-btn{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);cursor:pointer;border-radius:8px;flex:1;padding:10px 16px;font-size:.875rem;font-weight:500;transition:all .15s}.cal-modal-btn:hover{background:var(--shell-color-surface-alt)}.cal-modal-btn.primary{background:var(--shell-color-brand);border-color:var(--shell-color-brand);color:#fff}.cal-modal-btn.primary:hover{background:var(--shell-color-brand-hover,#5855eb)}.cal-modal-btn:disabled{opacity:.5;cursor:not-allowed}.cal-account-select{border:1px solid var(--shell-color-border);background:var(--shell-color-surface-alt);color:var(--shell-color-text);cursor:pointer;border-radius:8px;outline:none;padding:10px 12px;font-size:.875rem}.cal-account-select:focus{border-color:var(--shell-color-brand)}.cal-create-btn{background:var(--shell-color-brand);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.cal-create-btn:hover{background:var(--shell-color-brand-hover,#5855eb)}.cal-create-btn svg{width:16px;height:16px}.cal-confirm-text{font-size:.875rem;line-height:1.5}.cal-confirm-text,.cal-confirm-text strong{color:var(--shell-color-text)}.cal-modal-btn.danger{color:#fff;background:#ef4444;border-color:#ef4444}.cal-modal-btn.danger:hover{background:#dc2626}@media (max-width:1280px){.cal-content{grid-template-columns:220px minmax(0,1fr)}.cal-sidebar{grid-column:1/-1}}@media (max-width:1024px){.cal-content{grid-template-columns:1fr}.cal-calendar-list-panel{max-height:260px}.cal-sidebar{order:2}}@media (max-width:768px){.cal-toolbar{flex-direction:column;align-items:stretch;gap:12px}.cal-toolbar-left,.cal-toolbar-right{justify-content:space-between}.cal-title{font-size:1rem}.shell-calendar-settings-inline-row{grid-template-columns:1fr}.shell-calendar-reminder-overlay{align-items:flex-end;padding:12px}.shell-calendar-reminder-modal{border-radius:12px 12px 0 0;width:100%}}}