.cm-push-optin{display: flex;align-items: center;justify-content: space-between;gap: 1rem;padding: 0.75rem 1rem;margin-bottom: 1rem;border: 1px solid var(--cm-app-border,var(--cm-gray-200,#e5e7eb));border-radius: var(--cm-radius-md,0.5rem)}.cm-push-optin__text strong{display: block}.cm-push-optin .cm-settings-help{margin: 0.25rem 0 0}:root{--cm-primary: #1e3a5f;--cm-primary-light: #2d4a6f;--cm-primary-dark: #152a47;--cm-primary-contrast: #fff;--cm-primary-text: #1e3a5f;--cm-secondary: #c9a227;--cm-secondary-light: #d4af37;--cm-secondary-dark: #a88920;--cm-secondary-contrast: #000;--cm-secondary-text: #7a5d00;--cm-gray-50: #f9fafb;--cm-gray-100: #f3f4f6;--cm-gray-200: #e5e7eb;--cm-gray-300: #d1d5db;--cm-gray-400: #9ca3af;--cm-gray-500: #6b7280;--cm-gray-600: #4b5563;--cm-gray-700: #374151;--cm-gray-800: #1f2937;--cm-gray-900: #111827;--cm-success: #059669;--cm-success-light: #d1fae5;--cm-success-text: #047857;--cm-warning: #d97706;--cm-warning-light: #fef3c7;--cm-warning-text: #92400e;--cm-danger: #dc2626;--cm-danger-light: #fee2e2;--cm-danger-text: #b91c1c;--cm-info: #0284c7;--cm-info-light: #e0f2fe;--cm-info-text: #0369a1;--cm-shadow-sm: 0 1px 2px 0 rgba(0,0,0,0.05);--cm-shadow: 0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px -1px rgba(0,0,0,0.1);--cm-shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--cm-shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1);--cm-shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1);--cm-radius-sm: 0.25rem;--cm-radius: 0.375rem;--cm-radius-md: 0.5rem;--cm-radius-lg: 0.75rem;--cm-radius-xl: 1rem;--cm-transition: 150ms cubic-bezier(0.4,0,0.2,1)}.cm-dashboard{font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;font-size: 14px;line-height: 1.5;color: var(--cm-app-text,var(--cm-gray-800));background: var(--cm-app-canvas,var(--cm-gray-100));min-height: 100vh}.cm-dashboard *{box-sizing: border-box}.cm-header{background: var(--cm-primary);color: var(--cm-primary-contrast);box-shadow: var(--cm-shadow-md);position: sticky;top: 0;z-index: 100;width: 100%;transition: box-shadow 0.2s ease}.cm-header.is-scrolled{box-shadow: var(--cm-shadow-lg)}.cm-header-inner{display: flex;justify-content: space-between;align-items: center;padding: 1rem 1.5rem;max-width: 1600px;margin: 0 auto;transition: padding 0.3s ease}.cm-header-left{display: flex;align-items: center;gap: 1rem}.cm-group-logo{width: 48px;height: 48px;object-fit: contain;border-radius: var(--cm-radius);background: #fff;padding: 4px}.cm-group-logo--light{background: transparent;padding: 0}.cm-group-info{display: flex;flex-direction: column}.cm-group-name{margin: 0;font-size: 1.25rem;font-weight: 700;color: var(--cm-primary-contrast)}.cm-group-switch-btn{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;min-height: 44px;padding: 0.625rem 0.875rem;background: var(--cm-primary-contrast);border: 1px solid var(--cm-primary-contrast);border-radius: var(--cm-radius-md);color: var(--cm-primary);font-size: 0.875rem;font-weight: 600;line-height: 1;white-space: nowrap;cursor: pointer;transition: background-color var(--cm-transition),border-color var(--cm-transition)}.cm-group-switch-btn:hover{background: var(--cm-primary);border-color: var(--cm-primary-contrast);color: var(--cm-primary-contrast)}.cm-dashboard .cm-group-switch-btn:focus-visible{outline: 2px solid var(--cm-primary-contrast);outline-offset: 2px}.cm-group-switch-icon,.cm-group-switch-chevron{flex-shrink: 0}.cm-group-switch-chevron{width: 16px;height: 16px;transition: transform var(--cm-transition)}.cm-group-switch-btn[aria-expanded="true"] .cm-group-switch-chevron{transform: rotate(180deg)}.cm-group-switcher{position: relative;flex-shrink: 0}.cm-group-dropdown{position: absolute;top: calc(100% + 0.5rem);right: 0;left: auto;background: var(--cm-app-surface,#fff);border: 1px solid var(--cm-app-border,var(--cm-gray-200));border-radius: var(--cm-radius-md);box-shadow: var(--cm-shadow-lg);min-width: 220px;padding: 0.375rem;z-index: 50;overflow: hidden}.cm-group-dropdown-item{display: block;padding: 0.625rem 0.75rem;border-radius: var(--cm-radius);color: var(--cm-app-text,var(--cm-gray-700));font-size: 0.875rem;font-weight: 500;text-decoration: none;transition: background-color var(--cm-transition),color var(--cm-transition)}.cm-group-dropdown-item:hover{background: var(--cm-app-subtle,var(--cm-gray-50));color: var(--cm-app-link-hover,var(--cm-primary-text))}.cm-header-right{display: flex;align-items: center;gap: 1rem;margin-left: auto}.cm-user-name{color: var(--cm-primary-contrast);font-size: 0.875rem}.cm-logout-btn{color: var(--cm-primary-contrast);text-decoration: none;font-size: 0.875rem;padding: 0.5rem 1rem;border: 1px solid var(--cm-primary-contrast);border-radius: var(--cm-radius);transition: all var(--cm-transition)}.cm-logout-btn:hover{background: var(--cm-primary-contrast);color: var(--cm-primary)}.cm-main-container{display: flex;min-height: calc(100vh - 80px);max-width: 1600px;margin: 0 auto;width: 100%}.cm-sidebar{width: 240px;background: var(--cm-app-surface,#fff);border-right: 1px solid var(--cm-app-border,var(--cm-gray-200));padding: 1.5rem 0;flex-shrink: 0;display: flex;flex-direction: column}.cm-nav{list-style: none;margin: 0;padding: 0}.cm-nav-item{margin: 0}.cm-nav-section-header{margin: 0;padding: 0.75rem 1.5rem;list-style: none;cursor: pointer;user-select: none;display: flex;align-items: center;justify-content: space-between;width: 100%;background: none;font: inherit;color: inherit;text-align: left;border: 0;border-top: 1px solid var(--cm-app-border,var(--cm-gray-200));margin-top: 0.5rem;transition: background-color var(--cm-transition)}.cm-nav-section-header:hover{background-color: var(--cm-app-subtle,var(--cm-gray-50))}.cm-nav-section-header.is-active{box-shadow: inset 3px 0 0 var(--cm-app-focus,var(--cm-primary))}.cm-nav-section-header.is-active .cm-nav-section-label{color: var(--cm-app-heading,var(--cm-primary));font-weight: 600}.cm-nav-section-header:focus{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: -2px}.cm-nav-section-header:focus:not(:focus-visible){outline: none}.cm-nav-section-label{display: block;font-size: 0.6875rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.075em;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-nav-section-chevron{flex-shrink: 0;opacity: 0.5;transition: transform 0.2s ease,opacity var(--cm-transition)}.cm-nav-section-header:hover .cm-nav-section-chevron{opacity: 0.8}.cm-nav-section-header[aria-expanded="true"] .cm-nav-section-chevron{transform: rotate(90deg)}.cm-nav-section{list-style: none;margin: 0;padding: 0}.cm-nav-section-items{list-style: none;margin: 0;padding: 0;overflow: hidden}.cm-nav-section-items.is-collapsed{display: none}.cm-nav-link{display: flex;align-items: center;justify-content: flex-start;padding: 0.75rem 1.5rem;color: var(--cm-app-muted,var(--cm-gray-600));text-decoration: none;font-weight: 500;transition: all var(--cm-transition);border-left: 3px solid transparent}.cm-nav-link:hover{background: var(--cm-app-subtle,var(--cm-gray-50));color: var(--cm-app-link-hover,var(--cm-primary))}.cm-nav-item.active .cm-nav-link{background: var(--cm-app-subtle,linear-gradient(90deg,rgba(30,58,95,0.08) 0%,rgba(30,58,95,0) 100%));color: var(--cm-app-link,var(--cm-primary));border-left-color: var(--cm-app-focus,var(--cm-secondary));font-weight: 600}.cm-nav-icon{flex-shrink: 0;width: 18px;height: 18px;margin-right: 0.75rem;opacity: 0.7;transition: opacity var(--cm-transition)}.cm-nav-item.active .cm-nav-icon,.cm-nav-link:hover .cm-nav-icon{opacity: 1}.cm-nav-label{flex: 1;min-width: 0}.cm-user-roles{margin-top: auto;padding: 1.5rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-200))}.cm-user-roles h3{font-size: 0.75rem;text-transform: uppercase;letter-spacing: 0.05em;color: var(--cm-app-muted,var(--cm-gray-500));margin: 0 0 0.75rem}.cm-user-roles ul{list-style: none;margin: 0;padding: 0}.cm-user-roles li{font-size: 0.875rem;color: var(--cm-app-text,var(--cm-gray-700));padding: 0.25rem 0}.cm-content{flex: 1;padding: 2rem;background: var(--cm-app-canvas,var(--cm-gray-50));overflow-y: auto;min-width: 0}.cm-section{width: 100%;background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);padding: 1.5rem;margin-bottom: 1.5rem;box-shadow: var(--cm-shadow)}.cm-section-header{display: flex;justify-content: space-between;align-items: center;margin-bottom: 1.5rem;flex-wrap: wrap;gap: 1rem}.cm-section-header h2{margin: 0;font-size: 1.5rem;font-weight: 700;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-card{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);box-shadow: var(--cm-shadow);overflow: hidden;transition: box-shadow var(--cm-transition)}.cm-card:hover{box-shadow: var(--cm-shadow-md)}.cm-card-header{padding: 1rem 1.5rem;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-100));display: flex;justify-content: space-between;align-items: center}.cm-card-header h3{margin: 0;font-size: 1rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-card-body{padding: 1.5rem}.cm-card-footer{padding: 1rem 1.5rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-100));background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-stats-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(200px,1fr));gap: 1.5rem;margin-bottom: 2rem}.cm-stat-card{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);padding: 1.5rem;box-shadow: var(--cm-shadow);display: flex;align-items: flex-start;gap: 1rem;transition: transform var(--cm-transition),box-shadow var(--cm-transition)}.cm-stat-card:hover{transform: translateY(-2px);box-shadow: var(--cm-shadow-md)}.cm-stat-icon{width: 48px;height: 48px;border-radius: var(--cm-radius-md);display: flex;align-items: center;justify-content: center;flex-shrink: 0}.cm-stat-icon--primary{background: linear-gradient(135deg,var(--cm-primary) 0%,var(--cm-primary-light) 100%);color: var(--cm-secondary)}.cm-stat-icon--success{background: var(--cm-app-success-bg,var(--cm-success-light));color: var(--cm-app-success-text,var(--cm-success-text))}.cm-stat-icon--warning{background: var(--cm-app-warning-bg,var(--cm-warning-light));color: var(--cm-app-warning-text,var(--cm-warning))}.cm-stat-icon--danger{background: var(--cm-app-danger-bg,var(--cm-danger-light));color: var(--cm-app-danger-text,var(--cm-danger))}.cm-stat-content{flex: 1;min-width: 0}.cm-stat-label{font-size: 0.75rem;text-transform: uppercase;letter-spacing: 0.05em;color: var(--cm-app-muted,var(--cm-gray-500));margin-bottom: 0.25rem}.cm-stat-value{font-size: 1.75rem;font-weight: 700;color: var(--cm-app-heading,var(--cm-gray-800));line-height: 1.2}.cm-stat-card--metric{flex-direction: column;gap: 0.5rem;min-width: 0;container-type: inline-size}.cm-stat-card--metric>.cm-stat-value{display: block;max-width: 100%;font-variant-numeric: tabular-nums;overflow-wrap: anywhere;font-size: clamp(1rem,calc(150cqw / var(--cm-value-length,7)),1.75rem)}.cm-stat-card--metric>.cm-stat-label{margin: 0}.cm-stat-subtext{font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500));margin-top: 0.25rem}.cm-table-container{position: relative;width: 100%;max-width: 100%;overflow-x: auto;background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);box-shadow: var(--cm-shadow)}.cm-table{width: 100%;border-collapse: collapse;font-size: 0.875rem}.cm-table th{padding: 0.875rem 1rem;text-align: left;font-weight: 600;color: var(--cm-app-muted,var(--cm-gray-600));background: var(--cm-app-subtle,var(--cm-gray-50));border-bottom: 2px solid var(--cm-app-border,var(--cm-gray-200));white-space: nowrap}.cm-table td{padding: 0.875rem 1rem;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-100));color: var(--cm-app-text,var(--cm-gray-700))}.cm-table td a{color: var(--cm-app-muted,var(--cm-gray-600));text-decoration: none}.cm-table td a:hover{color: var(--cm-app-link-hover,var(--cm-primary));text-decoration: underline}.cm-table tbody tr{transition: background var(--cm-transition)}.cm-table tbody tr:hover{background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-table tbody tr:last-child td{border-bottom: none}.cm-sortable{cursor: pointer;user-select: none}.cm-sortable:hover{color: var(--cm-app-link-hover,var(--cm-primary))}.cm-sortable:focus-visible{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: -2px}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;padding: 0.625rem 1.25rem;font-size: 0.875rem;font-weight: 500;line-height: 1;text-decoration: none;border-radius: var(--cm-radius);border: 1px solid transparent;cursor: pointer;transition: background-color var(--cm-transition),border-color var(--cm-transition),color var(--cm-transition),box-shadow var(--cm-transition),transform var(--cm-transition);white-space: nowrap}.btn:disabled{opacity: 0.6;cursor: not-allowed}.btn--primary{background-color: var(--cm-primary);background-image: linear-gradient(135deg,var(--cm-primary) 0%,var(--cm-primary-light) 100%);color: #fff;border-color: var(--cm-primary)}.btn--primary:hover:not(:disabled){background-color: var(--cm-primary-dark);background-image: none;transform: translateY(-1px);box-shadow: var(--cm-shadow-md)}.btn--secondary{background: var(--cm-app-surface,#fff);color: var(--cm-app-text,var(--cm-gray-700));border-color: var(--cm-app-strong-border,var(--cm-gray-300))}.btn--secondary:hover:not(:disabled){background: var(--cm-app-subtle,var(--cm-gray-50));border-color: var(--cm-app-strong-border,var(--cm-gray-400))}.btn--outline{background: transparent;color: var(--cm-app-link,var(--cm-primary));border-color: var(--cm-app-focus,var(--cm-primary))}.btn--outline:hover:not(:disabled){background: var(--cm-primary);color: #fff}.btn--gold{background-color: var(--cm-secondary);background-image: linear-gradient(135deg,var(--cm-secondary) 0%,var(--cm-secondary-light) 100%);color: var(--cm-primary);border-color: var(--cm-secondary);font-weight: 600}.btn--gold:hover:not(:disabled){background-color: var(--cm-secondary-dark);background-image: none;transform: translateY(-1px);box-shadow: var(--cm-shadow-md)}.btn--danger{background: var(--cm-app-danger-bg,var(--cm-danger));color: var(--cm-app-danger-text,#fff);border-color: var(--cm-app-danger-border,var(--cm-danger))}.btn--danger:hover:not(:disabled){background: var(--cm-app-danger-bg,#b91c1c)}.btn--text{background: transparent;border: none;padding: 0.25rem 0.5rem;color: var(--cm-app-muted,var(--cm-gray-600))}.btn--text:hover:not(:disabled){color: var(--cm-app-link-hover,var(--cm-primary))}.btn--small{padding: 0.375rem 0.75rem;font-size: 0.8125rem}.btn--large{padding: 0.875rem 1.75rem;font-size: 1rem}.cm-icon{width: 1em;height: 1em;flex-shrink: 0}.cm-form-group{margin-bottom: 1rem}.cm-form-group label{display: block;margin-bottom: 0.375rem;font-weight: 500;font-size: 0.875rem;color: var(--cm-app-text,var(--cm-gray-700))}.cm-form-group label.required::after{content: ' *';color: var(--cm-app-danger-text,var(--cm-danger))}.cm-input,.cm-select,.cm-textarea{width: 100%;padding: 0.625rem 0.875rem;font-size: 0.875rem;color: var(--cm-app-text,var(--cm-gray-800));background: var(--cm-app-surface,#fff);border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));border-radius: var(--cm-radius);transition: border-color var(--cm-transition),box-shadow var(--cm-transition)}.cm-input:focus,.cm-select:focus,.cm-textarea:focus{outline: none;border-color: var(--cm-app-focus,var(--cm-primary));box-shadow: 0 0 0 3px var(--cm-app-focus,rgba(30,58,95,0.1))}.cm-input::placeholder{color: var(--cm-app-muted,var(--cm-gray-400))}.cm-select{appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 0.5rem center;background-size: 1.5rem;padding-right: 2.5rem}.cm-textarea{min-height: 100px;resize: vertical}.cm-form-help{margin-top: 0.25rem;font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-form-error{margin-top: 0.25rem;font-size: 0.75rem;color: var(--cm-app-danger-text,var(--cm-danger))}.cm-form-status{margin-top: 0.25rem;font-size: 0.75rem;color: var(--cm-app-success-text,var(--cm-success-text))}.cm-form-error:empty,.cm-form-status:empty{margin: 0}.cm-form-row{display: grid;grid-template-columns: repeat(2,1fr);gap: 1rem}.cm-members-toolbar{display: flex;gap: 1rem;align-items: center;margin-bottom: 1.5rem;flex-wrap: wrap}.cm-search-box{display: flex;align-items: center;gap: 0.5rem;background: var(--cm-app-surface,#fff);border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));border-radius: var(--cm-radius);padding: 0.5rem 0.75rem;flex: 1;min-width: 200px;max-width: 400px}.cm-search-box svg{color: var(--cm-app-muted,var(--cm-gray-400));flex-shrink: 0}.cm-search-input{border: none;outline: none;width: 100%;font-size: 0.875rem;background: transparent}.cm-search-input::placeholder{color: var(--cm-app-muted,var(--cm-gray-400))}.cm-search-box:focus-within{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}.cm-filter-group{display: flex;gap: 0.5rem;align-items: center}.cm-badge{display: inline-flex;align-items: center;gap: 0.25rem;padding: 0.25rem 0.5rem;font-size: 0.75rem;font-weight: 500;border-radius: var(--cm-radius)}.cm-badge--primary{background: var(--cm-primary);color: var(--cm-secondary)}.cm-badge--secondary{background: var(--cm-app-subtle,var(--cm-gray-100));color: var(--cm-app-text,var(--cm-gray-700))}.cm-badge--success{background: var(--cm-app-success-bg,var(--cm-success-light));color: var(--cm-app-success-text,var(--cm-success-text));padding: 0.125rem 0.5rem;border-radius: 9999px}.cm-badge--warning{background: var(--cm-app-warning-bg,var(--cm-warning-light));color: var(--cm-app-warning-text,var(--cm-warning-text))}.cm-badge--danger{background: var(--cm-app-danger-bg,var(--cm-danger-light));color: var(--cm-app-danger-text,var(--cm-danger-text))}.cm-badge--info{background: var(--cm-app-info-bg,var(--cm-info-light));color: var(--cm-app-info-text,var(--cm-info-text))}.cm-tier-badge{display: inline-flex;align-items: center;justify-content: center;min-width: 2rem;padding: 0.25rem 0.5rem;font-size: 0.75rem;font-weight: 600;border-radius: var(--cm-radius);background: var(--cm-app-raised,var(--cm-gray-200));color: var(--cm-app-text,var(--cm-gray-700))}.cm-tier-badge--1{background: var(--cm-app-info-bg,#dbeafe);color: var(--cm-app-info-text,#1e40af)}.cm-tier-badge--2{background: var(--cm-app-warning-bg,#fef3c7);color: var(--cm-app-warning-text,#92400e)}.cm-tier-badge--3{background: linear-gradient(135deg,var(--cm-primary) 0%,var(--cm-primary-light) 100%);color: var(--cm-secondary)}.cm-status-badge{display: inline-flex;align-items: center;padding: 0.25rem 0.625rem;font-size: 0.75rem;font-weight: 500;border-radius: 9999px;text-transform: capitalize}.cm-status-badge--active{background: var(--cm-app-success-bg,var(--cm-success-light));color: var(--cm-app-success-text,var(--cm-success-text))}.cm-status-badge--inactive{background: var(--cm-app-raised,var(--cm-gray-200));color: var(--cm-app-muted,var(--cm-gray-600))}.cm-status-badge--trial{background: var(--cm-app-warning-bg,var(--cm-warning-light,#fef3c7));color: var(--cm-app-warning-text,var(--cm-warning,#b45309))}.cm-status-badge--suspended{background: var(--cm-app-danger-bg,var(--cm-danger-light));color: var(--cm-app-danger-text,var(--cm-danger))}.cm-status-badge--pending{background: var(--cm-app-warning-bg,var(--cm-warning-light));color: var(--cm-app-warning-text,var(--cm-warning))}.cm-status-badge--deceased{background: var(--cm-app-raised,var(--cm-gray-800));color: var(--cm-app-text,#fff)}.cm-role-badges{display: flex;flex-wrap: wrap;gap: 0.25rem}.cm-role-badge{display: inline-flex;align-items: center;padding: 0.125rem 0.375rem;font-size: 0.625rem;font-weight: 500;text-transform: uppercase;letter-spacing: 0.025em;border-radius: var(--cm-radius-sm);background: var(--cm-app-info-bg,#dbeafe);color: var(--cm-app-info-text,#1e40af)}.cm-role-badge--admin{background: linear-gradient(135deg,var(--cm-secondary) 0%,var(--cm-secondary-light) 100%);color: var(--cm-primary)}.cm-role-badge--officer{background: var(--cm-app-info-bg,#dbeafe);color: var(--cm-app-info-text,#1e40af)}.cm-role-badge--ritual{background: var(--cm-app-warning-bg,#fef3c7);color: var(--cm-app-warning-text,#92400e)}.cm-role-badge--gl{background: var(--cm-app-info-bg,#ede9fe);color: var(--cm-app-info-text,#5b21b6)}.cm-modal-backdrop{position: fixed;inset: 0;background: rgba(0,0,0,0.5);display: flex;align-items: center;justify-content: center;z-index: 1000;padding: 1rem;backdrop-filter: blur(4px)}.cm-modal{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);max-width: 500px;width: 100%;max-height: 90vh;overflow-y: auto;box-shadow: var(--cm-shadow-xl)}.cm-modal--wide{max-width: 700px}.cm-modal--full{max-width: 900px}.cm-modal__header{display: flex;justify-content: space-between;align-items: center;padding: 1rem 1.5rem;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-200));background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-modal__header h3{margin: 0;font-size: 1.125rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-modal__close{background: transparent;border: none;font-size: 1.5rem;line-height: 1;cursor: pointer;color: var(--cm-app-muted,var(--cm-gray-400));transition: color var(--cm-transition)}.cm-modal__close:hover{color: var(--cm-app-text,var(--cm-gray-700))}.cm-modal__body{padding: 1.5rem}.cm-modal__footer{display: flex;justify-content: flex-end;gap: 0.75rem;padding: 1rem 1.5rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-200));background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-empty-state__title{margin: 0 0 0.5rem;font-size: 1.25rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-empty-state__text{margin: 0 0 1.5rem;color: var(--cm-app-muted,var(--cm-gray-500));max-width: 400px;margin-left: auto;margin-right: auto}.cm-empty-state__actions{display: flex;gap: 0.75rem;justify-content: center}.cm-tabs{display: flex;gap: 0;border-bottom: 2px solid var(--cm-app-border,var(--cm-gray-200));margin-bottom: 1.5rem}.cm-tab{padding: 0.875rem 1.25rem;font-size: 0.875rem;font-weight: 500;color: var(--cm-app-muted,var(--cm-gray-500));background: transparent;border: none;border-bottom: 2px solid transparent;margin-bottom: -2px;cursor: pointer;transition: all var(--cm-transition)}.cm-tab:hover{color: var(--cm-app-text,var(--cm-gray-700))}.cm-tab.active{color: var(--cm-app-link,var(--cm-primary));border-bottom-color: var(--cm-app-focus,var(--cm-secondary))}.cm-tab-content{display: none}.cm-tab-content.active{display: block}.cm-alert{padding: 1rem 1.25rem;border-radius: var(--cm-radius-md);margin-bottom: 1rem;display: flex;align-items: flex-start;gap: 0.75rem}.cm-alert--success{background: var(--cm-app-success-bg,var(--cm-success-light));color: var(--cm-app-success-text,var(--cm-success-text));border-left: 4px solid var(--cm-app-success-border,var(--cm-success))}.cm-alert--warning{background: var(--cm-app-warning-bg,var(--cm-warning-light));color: var(--cm-app-warning-text,var(--cm-warning));border-left: 4px solid var(--cm-app-warning-border,var(--cm-warning))}.cm-alert--danger{background: var(--cm-app-danger-bg,var(--cm-danger-light));color: var(--cm-app-danger-text,var(--cm-danger));border-left: 4px solid var(--cm-app-danger-border,var(--cm-danger))}.cm-alert--info{background: var(--cm-app-info-bg,var(--cm-info-light));color: var(--cm-app-info-text,var(--cm-info));border-left: 4px solid var(--cm-app-info-border,var(--cm-info))}.cm-progress{height: 0.5rem;background: var(--cm-app-raised,var(--cm-gray-200));border-radius: 9999px;overflow: hidden}.cm-progress-bar--success{background: var(--cm-app-success-border,var(--cm-success))}.cm-progress-bar--warning{background: var(--cm-app-warning-border,var(--cm-warning))}.cm-progress-bar--danger{background: var(--cm-app-danger-border,var(--cm-danger))}[x-cloak]{display: none !important}.cm-text-muted{color: var(--cm-app-muted,var(--cm-gray-500))}.cm-text-primary{color: var(--cm-app-link,var(--cm-primary))}.cm-text-success{color: var(--cm-app-success-text,var(--cm-success-text))}.cm-text-warning{color: var(--cm-app-warning-text,var(--cm-warning))}.cm-text-danger{color: var(--cm-app-danger-text,var(--cm-danger))}.cm-text-center{text-align: center}.cm-text-right{text-align: right}.cm-mb-0{margin-bottom: 0}.cm-mb-1{margin-bottom: 0.25rem}.cm-mb-2{margin-bottom: 0.5rem}.cm-mb-3{margin-bottom: 0.75rem}.cm-mb-4{margin-bottom: 1rem}.cm-mt-0{margin-top: 0}.cm-mt-1{margin-top: 0.25rem}.cm-mt-2{margin-top: 0.5rem}.cm-mt-3{margin-top: 0.75rem}.cm-mt-4{margin-top: 1rem}.cm-mobile-menu-toggle{display: none;position: relative;background: transparent;border: none;color: var(--cm-primary-contrast);padding: 0.5rem;margin-right: 0;margin-left: 0.75rem;cursor: pointer;border-radius: var(--cm-radius);transition: background-color var(--cm-transition)}.cm-mobile-menu-toggle:hover{background: var(--cm-primary-contrast);color: var(--cm-primary)}.cm-dashboard .cm-mobile-menu-toggle:focus-visible{outline: 2px solid var(--cm-primary-contrast);outline-offset: 2px}.cm-mobile-menu-badge{position: absolute;top: 0;right: 0;min-width: 18px;height: 18px;padding: 0 5px;background: var(--cm-app-danger-bg,var(--cm-danger));color: var(--cm-app-danger-text,#fff);font-size: 0.6875rem;font-weight: 600;line-height: 18px;text-align: center;border-radius: 9px;transform: translate(25%,-25%)}.cm-mobile-overlay{display: none;position: fixed;inset: 0;background: rgba(0,0,0,0.5);z-index: 998;backdrop-filter: blur(2px);-webkit-backdrop-filter: blur(2px)}.cm-mobile-drawer{display: none;position: fixed;top: 0;left: 0;bottom: 0;width: 100%;max-width: 320px;background: var(--cm-app-surface,#fff);z-index: 999;flex-direction: column;box-shadow: var(--cm-shadow-xl);overflow: hidden}.cm-mobile-drawer-header{display: flex;align-items: center;justify-content: space-between;padding: 1rem 1.25rem;background: var(--cm-primary);color: var(--cm-primary-contrast);min-height: 72px}.cm-mobile-drawer-branding{display: flex;align-items: center;gap: 0.75rem;min-width: 0;flex: 1}.cm-mobile-drawer-logo{width: 40px;height: 40px;object-fit: contain;border-radius: var(--cm-radius-sm);background: #fff;padding: 3px;flex-shrink: 0}.cm-mobile-drawer-logo--light{background: transparent;padding: 0}.cm-mobile-drawer-group-info{display: flex;flex-direction: column;min-width: 0}.cm-mobile-drawer-group-name{font-size: 0.9375rem;font-weight: 600;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color: var(--cm-primary-contrast)}.cm-mobile-drawer-user-name{font-size: 0.75rem;color: var(--cm-primary-contrast);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.cm-mobile-drawer-close{background: transparent;border: none;color: var(--cm-primary-contrast);padding: 0.5rem;margin: -0.5rem -0.5rem -0.5rem 0.5rem;cursor: pointer;border-radius: var(--cm-radius);transition: background-color var(--cm-transition);flex-shrink: 0}.cm-mobile-drawer-close:hover{background: var(--cm-primary-contrast);color: var(--cm-primary)}.cm-dashboard .cm-mobile-drawer-close:focus-visible{outline: 2px solid var(--cm-primary-contrast);outline-offset: 2px}.cm-mobile-drawer-nav{flex: 1;overflow-y: auto;overflow-x: hidden;-webkit-overflow-scrolling: touch;overscroll-behavior: contain}.cm-mobile-nav-list{list-style: none;margin: 0;padding: 0.5rem 0}.cm-mobile-nav-section-header{padding: 1rem 1.25rem 0.5rem;margin-top: 0.25rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-100))}.cm-mobile-nav-section-header:first-child{border-top: none;margin-top: 0;padding-top: 0.5rem}.cm-mobile-nav-section-label{display: block;font-size: 0.6875rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.075em;color: var(--cm-app-muted,var(--cm-gray-400))}.cm-mobile-nav-item{margin: 0}.cm-mobile-nav-link{display: flex;align-items: center;gap: 0.875rem;padding: 0.875rem 1.25rem;color: var(--cm-app-text,var(--cm-gray-700));text-decoration: none;font-size: 0.9375rem;font-weight: 500;transition: background-color var(--cm-transition),color var(--cm-transition)}.cm-mobile-nav-link:hover{background: var(--cm-app-subtle,var(--cm-gray-50));color: var(--cm-app-link-hover,var(--cm-primary-text))}.cm-mobile-nav-link:focus-visible{background: var(--cm-app-subtle,var(--cm-gray-50));outline: none;box-shadow: inset 0 0 0 2px var(--cm-app-focus,var(--cm-primary-text))}.cm-mobile-nav-item.active .cm-mobile-nav-link{background: var(--cm-app-subtle,linear-gradient(90deg,rgba(30,58,95,0.08) 0%,transparent 100%));color: var(--cm-app-link,var(--cm-primary-text));font-weight: 600;border-left: 3px solid var(--cm-app-focus,var(--cm-primary-text));padding-left: calc(1.25rem - 3px)}.cm-mobile-nav-icon{flex-shrink: 0;opacity: 0.7}.cm-mobile-nav-item.active .cm-mobile-nav-icon,.cm-mobile-nav-link:hover .cm-mobile-nav-icon{opacity: 1}.cm-mobile-nav-label{flex: 1;min-width: 0}.cm-mobile-nav-badge{min-width: 20px;height: 20px;padding: 0 6px;background: var(--cm-app-danger-bg,var(--cm-danger));color: var(--cm-app-danger-text,#fff);font-size: 0.6875rem;font-weight: 600;line-height: 20px;text-align: center;border-radius: 10px;flex-shrink: 0}.cm-mobile-drawer-footer{border-top: 1px solid var(--cm-app-border,var(--cm-gray-200));padding: 0.75rem 0;background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-mobile-group-switcher{margin-bottom: 0.25rem}.cm-mobile-group-switcher-btn{display: flex;align-items: center;gap: 0.75rem;width: 100%;padding: 0.75rem 1.25rem;background: transparent;border: none;color: var(--cm-app-muted,var(--cm-gray-600));font-size: 0.875rem;font-weight: 500;text-align: left;cursor: pointer;transition: background-color var(--cm-transition),color var(--cm-transition)}.cm-mobile-group-switcher-btn:hover{background: var(--cm-app-subtle,var(--cm-gray-100));color: var(--cm-app-link-hover,var(--cm-primary-text))}.cm-mobile-group-switcher-btn span{flex: 1}.cm-mobile-switcher-chevron{transition: transform 0.2s ease}.cm-mobile-switcher-chevron.is-open{transform: rotate(180deg)}.cm-mobile-group-list{list-style: none;margin: 0;padding: 0 0 0 2.5rem;background: var(--cm-app-surface,#fff)}.cm-mobile-group-link{display: block;padding: 0.625rem 1.25rem;color: var(--cm-app-muted,var(--cm-gray-600));font-size: 0.875rem;text-decoration: none;transition: background-color var(--cm-transition),color var(--cm-transition)}.cm-mobile-group-link:hover{background: var(--cm-app-subtle,var(--cm-gray-50));color: var(--cm-app-link-hover,var(--cm-primary-text))}.cm-mobile-logout-btn{display: flex;align-items: center;gap: 0.75rem;width: 100%;padding: 0.75rem 1.25rem;color: var(--cm-app-muted,var(--cm-gray-600));text-decoration: none;font-size: 0.875rem;font-weight: 500;transition: background-color var(--cm-transition),color var(--cm-transition)}.cm-mobile-logout-btn:hover{background: var(--cm-app-subtle,var(--cm-gray-100));color: var(--cm-app-danger-text,var(--cm-danger))}.cm-overlay-enter{transition: opacity 0.25s ease}.cm-overlay-enter-start{opacity: 0}.cm-overlay-enter-end{opacity: 1}.cm-overlay-leave{transition: opacity 0.2s ease}.cm-overlay-leave-start{opacity: 1}.cm-overlay-leave-end{opacity: 0}.cm-drawer-enter{transition: transform 0.3s cubic-bezier(0.4,0,0.2,1)}.cm-drawer-enter-start{transform: translateX(-100%)}.cm-drawer-enter-end{transform: translateX(0)}.cm-drawer-leave{transition: transform 0.25s cubic-bezier(0.4,0,0.2,1)}.cm-drawer-leave-start{transform: translateX(0)}.cm-drawer-leave-end{transform: translateX(-100%)}@media (prefers-reduced-motion: reduce){.cm-overlay-enter,.cm-overlay-leave,.cm-drawer-enter,.cm-drawer-leave{transition: none}}.cm-page-shell{width: 100%;max-width: 1280px;margin-inline: auto;min-width: 0}.cm-page-header{display: flex;align-items: flex-start;justify-content: space-between;gap: 1rem 2rem;margin: 0 0 1.5rem}.cm-page-header>:first-child{min-width: 0}.cm-page-header .cm-page-title{margin: 0}.cm-page-description,.cm-section-intro,.cm-family__intro{max-width: 72ch;margin: 0.5rem 0 0;color: var(--cm-app-muted,var(--cm-gray-600));font-size: 0.9375rem}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report)>.cm-card + .cm-card{margin-top: 1.5rem}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-card-body>:is(h3,h4){margin: 0 0 0.875rem;font-size: 1.125rem;line-height: 1.4}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-card-body>h4:not(:first-child){margin-top: 1.5rem}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-card-body>p{margin: 0 0 1rem}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-card-body>:last-child{margin-bottom: 0}:is(.cm-agm,.cm-subsidy-report) .cm-form-inline>.cm-form-group{flex: 1 1 14rem;min-width: 0;margin-bottom: 0}.cm-echeancier .cm-settings-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,14rem),1fr));gap: 1rem}.cm-echeancier .cm-settings-grid>.cm-form-group{min-width: 0;margin-bottom: 0}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-btn--primary{color: var(--cm-primary-contrast,#fff);background: var(--cm-primary);border-color: var(--cm-primary)}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-btn--primary:hover:not(:disabled){background: var(--cm-primary-dark);border-color: var(--cm-primary-dark)}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-btn--link{color: var(--cm-app-link,var(--cm-primary));background: transparent;border-color: transparent}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-btn--link.cm-btn--danger{color: var(--cm-app-danger-text,var(--cm-danger-text))}:is(.cm-agm,.cm-member-register,.cm-echeancier,.cm-subsidy-report) .cm-btn--link:hover:not(:disabled){background: var(--cm-app-subtle,var(--cm-gray-100))}.cm-feedback{padding: 0.875rem 1rem;margin-bottom: 1rem;border: 1px solid transparent;border-radius: var(--cm-radius-md);font-weight: 500}.cm-feedback--error{color: var(--cm-app-danger-text,var(--cm-danger-text));background: var(--cm-app-danger-bg,var(--cm-danger-light));border-color: var(--cm-app-danger-border,var(--cm-danger))}.cm-feedback--success{color: var(--cm-app-success-text,#065f46);background: var(--cm-app-success-bg,#ecfdf5);border-color: var(--cm-app-success-border,#10b981)}.cm-dashboard :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline: 3px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}@media (max-width: 640px){.cm-content{padding: 1rem}.cm-section{padding: 1rem}.cm-page-header{flex-direction: column}.cm-page-header>:is(.btn,.cm-btn,[class*="actions"]){width: 100%}.cm-history-filters .cm-filter-group{flex: 1 1 100%}.cm-history-filters .cm-input,.cm-history-filters .cm-select{width: 100%}.cm-activity-timeline .cm-activity-header{flex-direction: column;align-items: flex-start;gap: 0.125rem}.cm-activity-time{white-space: normal}}@media (prefers-reduced-motion: reduce){.cm-dashboard *,.cm-dashboard *::before,.cm-dashboard *::after{scroll-behavior: auto !important;animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important}}@media (max-width: 1024px){.cm-sidebar{width: 200px}.cm-header-inner{padding: 1rem}}@media (max-width: 768px){.cm-mobile-menu-toggle{display: flex;align-items: center;justify-content: center}.cm-mobile-overlay{display: block}.cm-mobile-drawer{display: flex}.cm-header-inner{padding: 0.75rem 1rem;gap: 0}.cm-header-left{flex: 1;min-width: 0}.cm-header-left .cm-group-info{min-width: 0}.cm-header .cm-header-right{display: none}.cm-group-switcher{display: none}.cm-group-name{font-size: 1rem;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;max-width: calc(100vw - 120px)}.cm-group-logo{width: 40px;height: 40px}.cm-sidebar{display: none}.cm-main-container{flex-direction: column;max-width: 100%}.cm-content{padding: 1rem;min-height: calc(100vh - 60px)}.cm-stats-grid{grid-template-columns: 1fr}.cm-form-row{grid-template-columns: 1fr}}@media (max-width: 480px){.cm-mobile-drawer{max-width: 100%}.cm-header-inner{padding: 0.625rem 0.75rem}.cm-group-name{font-size: 0.9375rem;max-width: calc(100vw - 100px)}.cm-group-logo{width: 36px;height: 36px}.cm-content{padding: 0.75rem}}.screen-reader-text,.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0}.skip-link{position: absolute;top: -40px;left: 0;background: var(--cm-primary);color: #fff;padding: 0.5rem 1rem;z-index: 10000;transition: top 0.2s ease}.skip-link:focus{top: 0}:focus-visible{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}.btn:focus-visible,.cm-nav-link:focus-visible,.cm-group-dropdown-item:focus-visible{outline: 2px solid var(--cm-app-focus,var(--cm-secondary));outline-offset: 2px}.cm-notification-bell-count{display: inline-flex;align-items: center;justify-content: center;min-width: 18px;height: 18px;padding: 0 5px;margin-left: auto;font-size: 0.6875rem;font-weight: 700;color: var(--cm-app-danger-text,#fff);background: var(--cm-app-danger-bg,#ef4444);border-radius: 9999px;line-height: 1}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important}.btn:hover:not(:disabled),.cm-btn:hover:not(:disabled),.cm-btn-primary:hover:not(:disabled){transform: none}}@media (forced-colors: active){.cm-input:focus,.cm-select:focus,.cm-textarea:focus,.cm-news-search-input:focus,.cm-news-select:focus,.cm-mobile-nav-link:focus-visible,.cm-search-box:focus-within{outline: 3px solid Highlight;outline-offset: 1px}:focus-visible{outline: 3px solid Highlight;outline-offset: 1px}.cm-card,.cm-stat-card,.cm-modal,.cm-modal__dialog,.cm-mobile-drawer,.cm-group-dropdown{border: 1px solid CanvasText}}.cm-rsvp-page{font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;max-width: 600px;margin: 0 auto;padding: 2rem 1rem;line-height: 1.6;color: var(--cm-gray-800)}.cm-rsvp-page *{box-sizing: border-box}.cm-rsvp-error{background: var(--cm-danger-light);border: 1px solid var(--cm-danger);border-radius: var(--cm-radius-lg);padding: 2rem;text-align: center;margin: 2rem auto;box-sizing: border-box;width: calc(100% - 32px);max-width: 500px}.cm-rsvp-error h2{margin: 0 0 0.5rem;color: var(--cm-danger);font-size: 1.25rem}.cm-rsvp-error p{margin: 0;color: var(--cm-gray-700)}.cm-rsvp-header{text-align: center;padding: 2rem;background: linear-gradient(135deg,var(--cm-primary,#1e3a5f) 0%,var(--cm-primary-light,#2d4a6f) 100%);color: #fff;border-radius: var(--cm-radius-lg) var(--cm-radius-lg) 0 0;margin-bottom: 0}.cm-rsvp-logo{width: 80px;height: 80px;object-fit: contain;background: #fff;padding: 0.5rem;border-radius: var(--cm-radius-md);margin-bottom: 1rem}.cm-rsvp-group-name{margin: 0;font-size: 1.5rem;font-weight: 700;color: #fff}.cm-rsvp-event-info{background: #fff;padding: 2rem;border-left: 1px solid var(--cm-gray-200);border-right: 1px solid var(--cm-gray-200)}.cm-rsvp-event-title{margin: 0 0 1.5rem;font-size: 1.75rem;font-weight: 700;color: var(--cm-primary,#1e3a5f);text-align: center}.cm-rsvp-event-details{display: grid;gap: 0.75rem}.cm-rsvp-detail{display: flex;flex-wrap: wrap;gap: 0.5rem}.cm-rsvp-detail strong{color: var(--cm-gray-600);min-width: 60px}.cm-rsvp-description{margin-top: 1.5rem;padding-top: 1.5rem;border-top: 1px solid var(--cm-gray-200);color: var(--cm-gray-600)}.cm-rsvp-form-container{background: #fff;padding: 2rem;border: 1px solid var(--cm-gray-200);border-top: none;border-radius: 0 0 var(--cm-radius-lg) var(--cm-radius-lg)}.cm-rsvp-form-title{margin: 0 0 1.5rem;font-size: 1.25rem;font-weight: 600;color: var(--cm-gray-800);display: flex;flex-wrap: wrap;align-items: center;gap: 0.5rem}.cm-rsvp-recipient{color: var(--cm-secondary,#c9a227);font-weight: 700}.cm-rsvp-form .cm-form-group{margin-bottom: 1.5rem}.cm-rsvp-form .cm-form-label{display: block;margin-bottom: 0.5rem;font-weight: 600;font-size: 0.875rem;color: var(--cm-gray-700)}.cm-radio-group{display: flex;flex-direction: column;gap: 0.75rem}.cm-radio{display: flex;align-items: center;gap: 0.75rem;padding: 1rem;background: var(--cm-gray-50);border: 2px solid var(--cm-gray-200);border-radius: var(--cm-radius-md);cursor: pointer;transition: all var(--cm-transition)}.cm-radio:hover{border-color: var(--cm-gray-300);background: #fff}.cm-radio:has(input:checked){border-color: var(--cm-primary,#1e3a5f);background: rgba(30,58,95,0.05)}.cm-radio input[type="radio"]{width: 1.25rem;height: 1.25rem;accent-color: var(--cm-primary,#1e3a5f);cursor: pointer}.cm-radio span{font-size: 0.9375rem;color: var(--cm-gray-700)}.cm-radio small{display: block;margin-top: 0.25rem;font-size: 0.75rem;color: var(--cm-warning);font-weight: 500}.cm-notice{padding: 1rem;border-radius: var(--cm-radius-md);margin-bottom: 1rem;font-size: 0.875rem}.cm-notice-warning{background: var(--cm-warning-light);color: var(--cm-warning);border: 1px solid var(--cm-warning)}.cm-form-actions{margin-top: 2rem;text-align: center}.cm-btn:disabled{opacity: 0.6;cursor: not-allowed}.cm-btn-lg{padding: 1rem 2rem;font-size: 1.125rem}.cm-message{margin-top: 1.5rem;padding: 1rem;border-radius: var(--cm-radius-md);text-align: center}.cm-message p{margin: 0}.cm-message-success{background: var(--cm-success-light);color: var(--cm-success-text);border: 1px solid var(--cm-success)}.cm-message-error{background: var(--cm-danger-light);color: var(--cm-danger);border: 1px solid var(--cm-danger)}.cm-rsvp-deadlines{margin-top: 2rem;padding-top: 1.5rem;border-top: 1px solid var(--cm-gray-200);font-size: 0.875rem;color: var(--cm-gray-600)}.cm-rsvp-deadlines p{margin: 0.5rem 0}.cm-rsvp-deadlines strong{color: var(--cm-gray-700)}@media (max-width: 640px){.cm-rsvp-page{padding: 1rem 0.5rem}.cm-rsvp-header,.cm-rsvp-event-info,.cm-rsvp-form-container{padding: 1.5rem}.cm-rsvp-event-title{font-size: 1.5rem}.cm-radio{padding: 0.75rem}}.cm-overview{max-width: 100%}.cm-page-title{margin: 0 0 1.5rem;font-size: 1.5rem;font-weight: 700;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-section-title{margin: 0 0 1rem;font-size: 1.125rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-section-footer{margin-top: 1.5rem;padding-top: 1rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-100))}.cm-events-list{display: flex;flex-direction: column;gap: 1rem}.cm-event-card{display: flex;align-items: flex-start;gap: 1rem;padding: 1rem;background: var(--cm-app-subtle,var(--cm-gray-50));border-radius: var(--cm-radius);transition: background-color 0.15s ease}.cm-event-card:hover{background: var(--cm-app-subtle,var(--cm-gray-100))}.cm-event-date{flex-shrink: 0;width: 60px;text-align: center;background: var(--cm-primary);color: white;border-radius: var(--cm-radius);padding: 0.5rem}.cm-event-day{display: block;font-size: 1.5rem;font-weight: 700;line-height: 1}.cm-event-month{display: block;font-size: 0.75rem;text-transform: uppercase;margin-top: 0.25rem}.cm-event-details{flex: 1;min-width: 0}.cm-event-title{margin: 0 0 0.25rem;font-size: 1rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-event-title a{color: inherit;text-decoration: none}.cm-event-title a:hover{color: var(--cm-app-heading,var(--cm-primary))}.cm-event-meta{margin: 0 0 0.5rem;font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-event-rsvp-summary{display: flex;flex-wrap: wrap;gap: 0.75rem;font-size: 0.8125rem}.cm-rsvp-attending{color: var(--cm-app-success-text,var(--cm-success-text));font-weight: 500}.cm-rsvp-dining{color: var(--cm-app-link,var(--cm-secondary-text));font-weight: 500}.cm-event-actions{flex-shrink: 0}.cm-btn{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;padding: 0.625rem 1rem;font-size: 0.875rem;font-weight: 500;line-height: 1.25;text-decoration: none;border-radius: var(--cm-radius);border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));background: var(--cm-app-surface,#fff);color: var(--cm-app-text,var(--cm-gray-700));cursor: pointer;transition: background-color var(--cm-transition),border-color var(--cm-transition),color var(--cm-transition),box-shadow var(--cm-transition),transform var(--cm-transition)}.cm-btn:hover{background: var(--cm-app-subtle,var(--cm-gray-50));border-color: var(--cm-app-strong-border,var(--cm-gray-400))}.cm-btn-sm{padding: 0.375rem 0.75rem;font-size: 0.8125rem}.cm-btn-primary{background-color: var(--cm-primary);background-image: linear-gradient(135deg,var(--cm-primary) 0%,var(--cm-primary-light) 100%);color: #fff;border-color: var(--cm-primary)}.cm-btn-primary:hover:not(:disabled){background-color: var(--cm-primary-dark);background-image: none;transform: translateY(-1px);box-shadow: var(--cm-shadow-md)}.cm-empty-message{color: var(--cm-app-muted,var(--cm-gray-500));font-style: italic;margin: 0}@media (max-width: 768px){.cm-event-card{flex-direction: column}.cm-event-date{width: auto;display: flex;gap: 0.5rem;align-items: baseline}.cm-event-day{font-size: 1.25rem}.cm-event-month{margin-top: 0}}.cm-news-hub{background: transparent;box-shadow: none;padding: 0;border-radius: 0;margin-bottom: 0;width: 100%}.cm-news-hub .cm-news-hub__grid{display: grid;grid-template-columns: 1fr;gap: 1.5rem;margin-top: 1.5rem}@media (min-width: 1024px){.cm-news-hub .cm-news-hub__grid{grid-template-columns: 1fr 320px}}.cm-news-hub .cm-news-feed{min-width: 0}.cm-news-hub .cm-news-widgets{min-width: 0}.cm-news-feed{display: flex;flex-direction: column;gap: 1rem}.cm-news-feed__posts{display: flex;flex-direction: column;gap: 1rem}.cm-news-card{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-md);box-shadow: var(--cm-shadow);padding: 1.25rem;transition: box-shadow 0.2s ease,transform 0.2s ease}.cm-news-card:hover{box-shadow: var(--cm-shadow-md);transform: translateY(-2px)}.cm-news-card__image{width: 100%;height: 200px;object-fit: cover;border-radius: var(--cm-radius);margin-bottom: 1rem}.cm-news-card__header{display: flex;justify-content: space-between;align-items: flex-start;gap: 0.75rem;margin-bottom: 0.75rem}.cm-news-card__title{font-size: 1.125rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800));margin: 0;line-height: 1.4}.cm-news-card__title a{color: inherit;text-decoration: none;transition: color 0.2s ease}.cm-news-card__title a:hover{color: var(--cm-app-heading,var(--cm-primary))}.cm-news-card__badge{display: inline-block;padding: 0.25rem 0.5rem;font-size: 0.75rem;font-weight: 500;background: var(--cm-secondary);color: #fff;border-radius: var(--cm-radius-sm);white-space: nowrap}.cm-news-card__excerpt{color: var(--cm-app-muted,var(--cm-gray-600));line-height: 1.6;margin: 0 0 1rem 0;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden}.cm-news-card__meta{display: flex;flex-wrap: wrap;gap: 1rem;margin-bottom: 1rem;font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-news-card__author,.cm-news-card__date{display: flex;align-items: center;gap: 0.375rem}.cm-news-card__link{display: inline-flex;align-items: center;gap: 0.375rem;font-size: 0.875rem;font-weight: 500;color: var(--cm-app-link,var(--cm-primary));text-decoration: none;transition: color 0.2s ease}.cm-news-card__link:hover{color: var(--cm-app-link-hover,var(--cm-primary-light))}.cm-news-widgets{display: flex;flex-direction: column;gap: 1rem}.cm-widget{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-md);box-shadow: var(--cm-shadow);overflow: hidden}.cm-widget__header{display: flex;justify-content: space-between;align-items: center;padding: 0.875rem 1rem;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-200));background: var(--cm-app-subtle,var(--cm-gray-50))}.cm-widget__title{font-size: 0.8125rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.05em;color: var(--cm-app-muted,var(--cm-gray-600));margin: 0}.cm-widget__badge{background: var(--cm-primary);color: #fff;font-size: 0.75rem;font-weight: 600;padding: 0.125rem 0.5rem;border-radius: 9999px;min-width: 1.25rem;text-align: center}.cm-widget__badge--danger{background: var(--cm-app-danger-bg,var(--cm-danger))}.cm-widget__body{padding: 1rem}.cm-widget__link{display: flex;align-items: center;justify-content: center;gap: 0.375rem;padding: 0.75rem 1rem;font-size: 0.875rem;font-weight: 500;color: var(--cm-app-link,var(--cm-primary));text-decoration: none;border-top: 1px solid var(--cm-app-border,var(--cm-gray-200));background: var(--cm-app-subtle,var(--cm-gray-50));transition: background 0.2s ease}.cm-widget__link:hover{background: var(--cm-app-subtle,var(--cm-gray-100))}.cm-event-preview{display: flex;gap: 1rem}.cm-event-preview__date{display: flex;flex-direction: column;align-items: center;justify-content: center;min-width: 3.5rem;padding: 0.5rem;background: var(--cm-primary);color: #fff;border-radius: var(--cm-radius);text-align: center}.cm-event-preview__day{font-size: 1.5rem;font-weight: 700;line-height: 1}.cm-event-preview__month{font-size: 0.75rem;text-transform: uppercase;letter-spacing: 0.05em;margin-top: 0.125rem}.cm-event-preview__info{flex: 1;min-width: 0}.cm-event-preview__title{font-size: 1rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800));margin: 0 0 0.375rem 0;line-height: 1.3}.cm-event-preview__meta{display: flex;flex-wrap: wrap;gap: 0.5rem;margin: 0;font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-event-preview__time,.cm-event-preview__type{display: inline-flex;align-items: center}.cm-event-preview__venue{margin: 0.375rem 0 0 0;font-size: 0.8125rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-event-list{list-style: none;margin: 0;padding: 0}.cm-event-list__item{display: flex;gap: 0.75rem;padding: 0.625rem 0;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-100))}.cm-event-list__item:last-child{border-bottom: none;padding-bottom: 0}.cm-event-list__item:first-child{padding-top: 0}.cm-event-list__date{display: flex;flex-direction: column;align-items: center;justify-content: center;min-width: 2.5rem;padding: 0.25rem;background: var(--cm-app-subtle,var(--cm-gray-100));color: var(--cm-app-text,var(--cm-gray-700));border-radius: var(--cm-radius-sm);text-align: center}.cm-event-list__day{font-size: 1rem;font-weight: 600;line-height: 1}.cm-event-list__month{font-size: 0.625rem;text-transform: uppercase;letter-spacing: 0.05em}.cm-event-list__info{flex: 1;min-width: 0;display: flex;flex-direction: column;gap: 0.125rem}.cm-event-list__group{font-size: 0.6875rem;font-weight: 500;text-transform: uppercase;letter-spacing: 0.03em;color: var(--cm-app-link,var(--cm-primary))}.cm-event-list__title{font-size: 0.875rem;font-weight: 500;color: var(--cm-app-heading,var(--cm-gray-800));white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.cm-event-list__time{font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-task-list{list-style: none;margin: 0;padding: 0}.cm-task-list__item{display: flex;align-items: center;gap: 0.625rem;padding: 0.5rem 0;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-100))}.cm-task-list__item:last-child{border-bottom: none;padding-bottom: 0}.cm-task-list__item:first-child{padding-top: 0}.cm-task-list__content{flex: 1;min-width: 0}.cm-task-list__title{display: block;font-size: 0.875rem;font-weight: 500;color: var(--cm-app-heading,var(--cm-gray-800));white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.cm-task-list__due{display: block;font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-task-list__due--overdue{color: var(--cm-app-danger-text,var(--cm-danger));font-weight: 500}.cm-task-list__priority{display: flex;align-items: center;justify-content: center;width: 1.5rem;height: 1.5rem;font-size: 0.6875rem;font-weight: 700;border-radius: var(--cm-radius-sm);background: var(--cm-app-raised,var(--cm-gray-200));color: var(--cm-app-muted,var(--cm-gray-600))}.cm-task--urgent .cm-task-list__priority{background: var(--cm-app-danger-bg,var(--cm-danger-light));color: var(--cm-app-danger-text,var(--cm-danger))}.cm-task--high .cm-task-list__priority{background: var(--cm-app-warning-bg,var(--cm-warning-light));color: var(--cm-app-warning-text,var(--cm-warning))}.cm-task--overdue .cm-task-list__title{color: var(--cm-app-danger-text,var(--cm-danger))}.cm-notification-list{list-style: none;margin: 0;padding: 0}.cm-notification-list__item{display: flex;align-items: flex-start;gap: 0.625rem;padding: 0.5rem 0;border-bottom: 1px solid var(--cm-app-border,var(--cm-gray-100));position: relative}.cm-notification-list__item:last-child{border-bottom: none;padding-bottom: 0}.cm-notification-list__item:first-child{padding-top: 0}.cm-notification--unread{background: var(--cm-app-info-bg,var(--cm-info-light));margin: 0 -1rem;padding-left: 1rem;padding-right: 1rem}.cm-notification-list__icon{display: flex;align-items: center;justify-content: center;width: 2rem;height: 2rem;background: var(--cm-app-subtle,var(--cm-gray-100));border-radius: 50%;flex-shrink: 0;color: var(--cm-app-muted,var(--cm-gray-600))}.cm-notification-list__content{flex: 1;min-width: 0}.cm-notification-list__title{display: block;font-size: 0.875rem;font-weight: 500;color: var(--cm-app-heading,var(--cm-gray-800));white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.cm-notification-list__time{display: block;font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-notification-list__dot{width: 0.5rem;height: 0.5rem;background: var(--cm-primary);border-radius: 50%;flex-shrink: 0;margin-top: 0.5rem}.cm-pagination{display: flex;justify-content: center;align-items: center;gap: 1rem;margin-top: 1.5rem;padding-top: 1.5rem;border-top: 1px solid var(--cm-app-border,var(--cm-gray-200))}.cm-pagination__btn{display: inline-flex;align-items: center;gap: 0.375rem;padding: 0.5rem 1rem;border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));background: var(--cm-app-surface,#fff);color: var(--cm-app-text,var(--cm-gray-700));border-radius: var(--cm-radius);font-size: 0.875rem;font-weight: 500;cursor: pointer;transition: all 0.2s ease}.cm-pagination__btn:hover:not(:disabled){background: var(--cm-primary);color: #fff;border-color: var(--cm-primary)}.cm-pagination__btn:disabled{opacity: 0.5;cursor: not-allowed}.cm-pagination__info{font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-loading{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 0.75rem;padding: 2rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-loading__spinner{width: 2rem;height: 2rem;border: 3px solid var(--cm-app-border,var(--cm-gray-200));border-top-color: var(--cm-app-focus,var(--cm-primary));border-radius: 50%;animation: cm-spin 0.8s linear infinite}@keyframes cm-spin{to{transform: rotate(360deg)}}.cm-empty-state{text-align: center;padding: 3rem 1.5rem;color: var(--cm-app-muted,var(--cm-gray-500));background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);box-shadow: var(--cm-shadow)}.cm-empty-state--small{padding: 1rem}.cm-empty-state__icon{display: block;margin: 0 auto 1rem;opacity: 0.4;color: var(--cm-app-muted,var(--cm-gray-400))}.cm-empty-state h3{font-size: 1.125rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-700));margin: 0 0 0.5rem 0}.cm-empty-state p{margin: 0;max-width: 24rem;margin-left: auto;margin-right: auto}.cm-empty-state--small p{font-size: 0.875rem}.cm-section-description{font-size: 0.9375rem;color: var(--cm-app-muted,var(--cm-gray-500));margin: 0.25rem 0 0 0}@media (prefers-reduced-motion: reduce){.cm-news-card,.cm-pagination__btn,.cm-widget__link,.cm-loading__spinner{transition: none;animation: none}}.cm-news-card:focus-within,.cm-pagination__btn:focus,.cm-widget__link:focus{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}.cm-news-featured{margin-bottom: 2rem}.cm-news-featured__grid{display: grid;grid-template-columns: 1fr;gap: 1.5rem}@media (min-width: 768px){.cm-news-featured__grid{grid-template-columns: repeat(2,1fr)}}.cm-news-card--featured{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-lg);box-shadow: var(--cm-shadow-md);overflow: hidden;transition: box-shadow 0.3s ease,transform 0.3s ease;display: flex;flex-direction: column}.cm-news-card--featured:hover{box-shadow: var(--cm-shadow-lg);transform: translateY(-4px)}.cm-news-card--featured .cm-news-card__image-wrapper{position: relative;aspect-ratio: 1 / 1;overflow: hidden}.cm-news-card--featured .cm-news-card__image{width: 100%;height: 100%;object-fit: cover;transition: transform 0.3s ease;margin: 0;border-radius: 0}.cm-news-card--featured:hover .cm-news-card__image{transform: scale(1.05)}.cm-news-card--featured .cm-news-card__badge--overlay{position: absolute;top: 1rem;left: 1rem;background: var(--cm-secondary);color: #fff;padding: 0.375rem 0.75rem;font-size: 0.75rem;font-weight: 600;border-radius: var(--cm-radius);text-transform: uppercase;letter-spacing: 0.05em;box-shadow: var(--cm-shadow-sm)}.cm-news-card--featured .cm-news-card__content{padding: 1.25rem;display: flex;flex-direction: column;flex: 1}.cm-news-card--featured .cm-news-card__title{font-size: 1.25rem;font-weight: 700;color: var(--cm-app-heading,var(--cm-gray-800));margin: 0 0 0.75rem 0;line-height: 1.3}.cm-news-card--featured .cm-news-card__title a{color: inherit;text-decoration: none;transition: color 0.2s ease}.cm-news-card--featured .cm-news-card__title a:hover{color: var(--cm-app-heading,var(--cm-primary))}.cm-news-card--featured .cm-news-card__excerpt{color: var(--cm-app-muted,var(--cm-gray-600));line-height: 1.6;margin: 0 0 1rem 0;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;flex: 1}.cm-news-card--featured .cm-news-card__meta{display: flex;flex-wrap: wrap;gap: 1rem;margin-bottom: 0.75rem;font-size: 0.8125rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-news-card--featured .cm-news-card__link{display: inline-flex;align-items: center;gap: 0.375rem;font-size: 0.875rem;font-weight: 600;color: var(--cm-app-link,var(--cm-primary));text-decoration: none;margin-top: auto}.cm-news-card--featured .cm-news-card__link:hover{color: var(--cm-app-link-hover,var(--cm-primary-light))}.cm-news-toolbar{display: flex;flex-wrap: wrap;gap: 1rem;margin-bottom: 1.5rem;align-items: center}.cm-news-search-box{position: relative;flex: 1;min-width: 250px}.cm-news-search-icon{position: absolute;left: 0.75rem;top: 50%;transform: translateY(-50%);color: var(--cm-app-muted,var(--cm-gray-400));pointer-events: none}.cm-news-search-input{width: 100%;padding: 0.625rem 0.75rem 0.625rem 2.5rem;border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));border-radius: var(--cm-radius);font-size: 0.875rem;background: var(--cm-app-surface,#fff);color: var(--cm-app-text,var(--cm-gray-800));transition: border-color 0.2s ease,box-shadow 0.2s ease}.cm-news-search-input:focus{outline: none;border-color: var(--cm-app-focus,var(--cm-primary));box-shadow: 0 0 0 3px var(--cm-app-focus,rgba(30,58,95,0.1))}.cm-news-search-input::placeholder{color: var(--cm-app-muted,var(--cm-gray-400))}.cm-news-filter-group{display: flex;gap: 0.5rem;align-items: center;flex-wrap: wrap}.cm-news-select{padding: 0.625rem 2rem 0.625rem 0.75rem;border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));border-radius: var(--cm-radius);background: var(--cm-app-surface,#fff) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 0.5rem center;background-size: 1.25rem;-webkit-appearance: none;appearance: none;font-size: 0.875rem;color: var(--cm-app-text,var(--cm-gray-700));cursor: pointer;transition: border-color 0.2s ease}.cm-news-select:hover{border-color: var(--cm-app-strong-border,var(--cm-gray-400))}.cm-news-select:focus{outline: none;border-color: var(--cm-app-focus,var(--cm-primary));box-shadow: 0 0 0 3px var(--cm-app-focus,rgba(30,58,95,0.1))}.cm-news-count{font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500));margin-bottom: 1rem}@media (max-width: 767px){.cm-news-toolbar{flex-direction: column}.cm-news-search-box{min-width: 100%}.cm-news-filter-group{width: 100%;flex-wrap: wrap}.cm-news-select{flex: 1;min-width: 45%}}.cm-empty-state--full{grid-column: 1 / -1;text-align: center;padding: 3rem 1.5rem}.cm-news-masonry{display: grid;grid-template-columns: 1fr;gap: 1.25rem}@media (min-width: 640px){.cm-news-masonry{grid-template-columns: repeat(2,1fr)}}@media (min-width: 1024px){.cm-news-masonry{grid-template-columns: repeat(3,1fr)}}.cm-news-card--masonry{background: var(--cm-app-surface,#fff);border-radius: var(--cm-radius-md);box-shadow: var(--cm-shadow);overflow: hidden;transition: box-shadow 0.2s ease,transform 0.2s ease;display: flex;flex-direction: column;break-inside: avoid}.cm-news-card--masonry:hover{box-shadow: var(--cm-shadow-md);transform: translateY(-2px)}.cm-news-card--masonry .cm-news-card__image-wrapper{position: relative;overflow: hidden}.cm-news-card--masonry .cm-news-card__image{width: 100%;height: 160px;object-fit: cover;transition: transform 0.3s ease;margin: 0;border-radius: 0}.cm-news-card--masonry:hover .cm-news-card__image{transform: scale(1.03)}.cm-news-card--masonry .cm-news-card__content{padding: 1rem;display: flex;flex-direction: column;flex: 1}.cm-news-card--masonry .cm-news-card__header{display: flex;justify-content: space-between;align-items: flex-start;gap: 0.5rem;margin-bottom: 0.5rem}.cm-news-card--masonry .cm-news-card__title{font-size: 1rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800));margin: 0;line-height: 1.4}.cm-news-card--masonry .cm-news-card__title a{color: inherit;text-decoration: none;transition: color 0.2s ease}.cm-news-card--masonry .cm-news-card__title a:hover{color: var(--cm-app-heading,var(--cm-primary))}.cm-news-card--masonry .cm-news-card__badge{display: inline-block;padding: 0.125rem 0.375rem;font-size: 0.625rem;font-weight: 600;background: var(--cm-secondary);color: #fff;border-radius: var(--cm-radius-sm);text-transform: uppercase;letter-spacing: 0.03em;white-space: nowrap;flex-shrink: 0}.cm-news-card--masonry .cm-news-card__excerpt{color: var(--cm-app-muted,var(--cm-gray-600));font-size: 0.875rem;line-height: 1.5;margin: 0 0 0.75rem 0;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden;flex: 1}.cm-news-card--masonry .cm-news-card__meta{display: flex;flex-wrap: wrap;gap: 0.75rem;margin-bottom: 0.75rem;font-size: 0.75rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-news-card--masonry .cm-news-card__author,.cm-news-card--masonry .cm-news-card__date{display: flex;align-items: center;gap: 0.25rem}.cm-news-card--masonry .cm-news-card__link{display: inline-flex;align-items: center;gap: 0.25rem;font-size: 0.8125rem;font-weight: 500;color: var(--cm-app-link,var(--cm-primary));text-decoration: none;margin-top: auto}.cm-news-card--masonry .cm-news-card__link:hover{color: var(--cm-app-link-hover,var(--cm-primary-light))}.cm-empty-state--filtered{grid-column: 1 / -1;padding: 3rem 1.5rem}@media (max-width: 767px){.cm-news-card__header{flex-direction: column;gap: 0.5rem}.cm-event-preview{flex-direction: column;gap: 0.75rem}.cm-event-preview__date{flex-direction: row;gap: 0.5rem;width: fit-content}.cm-event-preview__month{margin-top: 0}.cm-pagination{flex-direction: column;gap: 0.75rem}.cm-news-featured__grid{gap: 1rem}.cm-news-card--featured .cm-news-card__title{font-size: 1.125rem}}@media (max-width: 479px){.cm-news-toolbar .cm-filter-group{width: 100%}.cm-news-toolbar .cm-select{flex: 1;min-width: 0}}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0}.cm-news-card--featured:focus-within,.cm-news-card--masonry:focus-within{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}@media (prefers-reduced-motion: reduce){.cm-news-card--featured,.cm-news-card--masonry,.cm-news-card--featured .cm-news-card__image,.cm-news-card--masonry .cm-news-card__image{transition: none;transform: none}.cm-news-card--featured:hover,.cm-news-card--masonry:hover{transform: none}.cm-news-card--featured:hover .cm-news-card__image,.cm-news-card--masonry:hover .cm-news-card__image{transform: none}}.cm-pull-indicator{display: flex;align-items: center;justify-content: center;gap: 0.5rem;height: 0;overflow: hidden;opacity: 0;background: var(--cm-app-subtle,var(--cm-gray-50,#f9fafb));color: var(--cm-app-muted,var(--cm-gray-500,#6b7280));font-size: 0.8125rem;font-weight: 500}.cm-pull-indicator--ready{color: var(--cm-app-link,var(--cm-primary,#1e3a5f))}.cm-pull-indicator--refreshing{color: var(--cm-app-link,var(--cm-primary,#1e3a5f))}.cm-pull-indicator__spinner{display: inline-block;width: 16px;height: 16px;border: 2px solid var(--cm-app-strong-border,var(--cm-gray-300,#d1d5db));border-top-color: var(--cm-app-focus,var(--cm-primary,#1e3a5f));border-radius: 50%;opacity: 0}.cm-pull-indicator--ready .cm-pull-indicator__spinner,.cm-pull-indicator--refreshing .cm-pull-indicator__spinner{opacity: 1}.cm-pull-indicator--refreshing .cm-pull-indicator__spinner{animation: cm-spin 0.8s linear infinite}@keyframes cm-spin{to{transform: rotate(360deg)}}.cm-calendar-body--swiping{transition: transform 0.05s ease-out}.cm-calendar-body--transitioning{transition: transform 0.25s ease-out,opacity 0.25s ease-out}@media (pointer: coarse){.btn,.btn--small,.cm-nav a,.cm-sidebar-nav a,.cm-select,.cm-checkbox-label,.cm-radio,input[type="checkbox"],input[type="radio"]{min-height: 44px;min-width: 44px}.btn--small{padding: 0.625rem 1rem}.cm-nav a,.cm-sidebar-nav a{padding: 0.75rem 1rem}.cm-table .btn--small,.cm-table .btn--icon{min-height: 44px;min-width: 44px;display: inline-flex;align-items: center;justify-content: center}.cm-checkbox-label,.cm-radio{padding: 0.5rem 0;display: flex;align-items: center;gap: 0.5rem}.cm-calendar-day{min-height: 56px}.cm-select,select{padding: 0.625rem 2.5rem 0.625rem 0.875rem}.cm-quick-actions .btn + .btn,.cm-calendar-links .btn + .btn{margin-top: 0.5rem}.cm-task-complete-btn,.cm-activity-toggle,.cm-cmp-link,.cm-link{display: inline-flex;align-items: center;justify-content: center;min-height: 44px;min-width: 44px}}@media (prefers-reduced-motion: reduce){.cm-calendar-body--swiping,.cm-calendar-body--transitioning{transition: none !important;transform: none !important}.cm-pull-indicator{transition: none !important}.cm-pull-indicator__spinner{animation: none}.cm-offline-spinner{animation: none}}.cm-offline-banner{display: flex;align-items: center;justify-content: center;gap: 0.5rem;padding: 0.5rem 1rem;font-size: 0.8125rem;font-weight: 500;line-height: 1.4;text-align: center;z-index: 1000;position: sticky;top: 0}.cm-offline-banner--offline{background-color: var(--cm-app-warning-bg,#fef3cd);color: var(--cm-app-warning-text,#856404);border-bottom: 1px solid var(--cm-app-warning-border,#ffc107)}.cm-offline-banner--syncing{background-color: var(--cm-app-info-bg,#d1ecf1);color: var(--cm-app-info-text,#0c5460);border-bottom: 1px solid var(--cm-app-info-border,#bee5eb)}.cm-offline-banner-icon{display: flex;align-items: center;flex-shrink: 0}@keyframes cm-spin{from{transform: rotate(0deg)}to{transform: rotate(360deg)}}.cm-offline-spinner{animation: cm-spin 1s linear infinite}.cm-offline-enter{transition: all 0.3s ease-out}.cm-offline-enter-start{opacity: 0;transform: translateY(-100%)}.cm-offline-enter-end{opacity: 1;transform: translateY(0)}.cm-offline-leave{transition: all 0.3s ease-in}.cm-offline-leave-start{opacity: 1;transform: translateY(0)}.cm-offline-leave-end{opacity: 0;transform: translateY(-100%)}.cm-cached-indicator{display: inline-flex;align-items: center;gap: 0.25rem;font-size: 0.6875rem;color: var(--cm-app-muted,var(--cm-text-muted,#6c757d));font-style: italic;padding: 0.125rem 0.375rem;background: var(--cm-app-subtle,rgba(0,0,0,0.03));border-radius: 0.25rem}.cm-rsvp-pending-badge{display: inline-flex;align-items: center;gap: 0.25rem;font-size: 0.6875rem;font-weight: 600;color: var(--cm-app-warning-text,#856404);background-color: var(--cm-app-warning-bg,#fef3cd);padding: 0.125rem 0.5rem;border-radius: 1rem}.cm-pwa-install-banner{position: fixed;bottom: 0;left: 0;right: 0;display: flex;align-items: center;justify-content: center;gap: 1rem;padding: 1rem;background: var(--cm-primary,#1e3a5f);color: #fff;font-size: 0.875rem;z-index: 1001;box-shadow: 0 -2px 10px rgba(0,0,0,0.15)}.cm-pwa-install-banner__text{flex: 1;text-align: center}.cm-pwa-install-banner__btn{display: inline-flex;align-items: center;padding: 0.5rem 1rem;border: none;border-radius: 0.375rem;font-size: 0.8125rem;font-weight: 600;cursor: pointer;white-space: nowrap}.cm-pwa-install-banner__btn--install{background: var(--cm-secondary,#c9a227);color: #1e3a5f}.cm-pwa-install-banner__btn--dismiss{background: transparent;color: rgba(255,255,255,0.8);text-decoration: underline}.cm-pwa-install-banner__btn--dismiss:hover{color: #fff}@media (pointer: coarse){.cm-pwa-install-banner__btn{min-height: 44px;min-width: 44px}}.cm-import-steps{display: flex;align-items: center;justify-content: center;gap: 0;margin-bottom: 1.5rem;padding: 1rem 0}.cm-import-step{display: flex;flex-direction: column;align-items: center;gap: 0.25rem}.cm-import-step__number{display: flex;align-items: center;justify-content: center;width: 2rem;height: 2rem;border-radius: 50%;background: var(--cm-app-raised,#e5e7eb);color: var(--cm-app-muted,#6b7280);font-weight: 600;font-size: 0.875rem;transition: background-color 0.2s,color 0.2s}.cm-import-step--active .cm-import-step__number{background: var(--cm-primary,#1e3a5f);color: #fff}.cm-import-step--done .cm-import-step__number{background: var(--cm-app-success-bg,#059669);color: var(--cm-app-success-text,#fff)}.cm-import-step__label{font-size: 0.75rem;color: var(--cm-app-muted,#6b7280);font-weight: 500}.cm-import-step--active .cm-import-step__label{color: var(--cm-app-link,var(--cm-primary,#1e3a5f))}.cm-import-step__connector{width: 3rem;height: 2px;background: var(--cm-app-raised,#e5e7eb);margin: 0 0.25rem;margin-bottom: 1.25rem;transition: background-color 0.2s}.cm-import-step__connector--done{background: var(--cm-app-success-border,#059669)}.cm-import-summary{display: grid;grid-template-columns: repeat(4,1fr);gap: 0.75rem;margin-bottom: 1.5rem}.cm-import-summary__card{display: flex;flex-direction: column;align-items: center;padding: 0.75rem;border-radius: 0.5rem;border: 1px solid var(--cm-app-border,#e5e7eb);background: var(--cm-app-surface,#fff);text-align: center}.cm-import-summary__icon{font-size: 1.25rem;margin-bottom: 0.25rem}.cm-import-summary__card--new{border-color: var(--cm-app-success-border,#a7f3d0);background: var(--cm-app-success-bg,#ecfdf5)}.cm-import-summary__card--new .cm-import-summary__icon{color: var(--cm-app-success-text,#059669)}.cm-import-summary__card--update{border-color: var(--cm-app-info-border,#bfdbfe);background: var(--cm-app-info-bg,#eff6ff)}.cm-import-summary__card--update .cm-import-summary__icon{color: var(--cm-app-info-text,#2563eb)}.cm-import-summary__card--error{border-color: var(--cm-app-danger-border,#fecaca);background: var(--cm-app-danger-bg,#fef2f2)}.cm-import-summary__card--error .cm-import-summary__icon{color: var(--cm-app-danger-text,#dc2626)}.cm-import-summary__card--warning{border-color: var(--cm-app-warning-border,#fde68a);background: var(--cm-app-warning-bg,#fffbeb)}.cm-import-summary__card--warning .cm-import-summary__icon{color: var(--cm-app-warning-text,#d97706)}.cm-import-summary__count{font-size: 1.5rem;font-weight: 700;line-height: 1;color: var(--cm-app-text,#1f2937)}.cm-import-summary__label{font-size: 0.6875rem;text-transform: uppercase;letter-spacing: 0.05em;color: var(--cm-app-muted,#6b7280);margin-top: 0.25rem}.cm-import-row--new{background: var(--cm-app-success-bg,#f0fdf4)}.cm-import-row--update{background: var(--cm-app-info-bg,#eff6ff)}.cm-import-preview-table{font-size: 0.8125rem}.cm-import-preview-table th,.cm-import-preview-table td{padding: 0.5rem 0.75rem;white-space: nowrap;max-width: 200px;overflow: hidden;text-overflow: ellipsis}.cm-import-error-list,.cm-import-warning-list{margin-top: 1rem;padding: 0.75rem 1rem;border-radius: 0.5rem;font-size: 0.875rem}.cm-import-error-list{background: var(--cm-app-danger-bg,#fef2f2);border: 1px solid var(--cm-app-danger-border,#fecaca)}.cm-import-warning-list{background: var(--cm-app-warning-bg,#fffbeb);border: 1px solid var(--cm-app-warning-border,#fde68a)}.cm-import-error-list h4,.cm-import-warning-list h4{margin: 0 0 0.5rem;font-size: 0.875rem;display: flex;align-items: center}.cm-import-errors-list,.cm-import-warnings-list{list-style: none;padding: 0;margin: 0}.cm-import-errors-list li,.cm-import-warnings-list li{padding: 0.25rem 0;border-bottom: 1px solid var(--cm-app-border,rgba(0,0,0,0.05))}.cm-import-errors-list li:last-child,.cm-import-warnings-list li:last-child{border-bottom: none}.cm-import-errors-more{color: var(--cm-app-muted,#6b7280);font-style: italic}.cm-import-processing{text-align: center;padding: 2rem 0}.cm-import-processing__icon{color: var(--cm-app-link,var(--cm-primary,#1e3a5f));margin-bottom: 1rem}.cm-spinner-svg{color: var(--cm-app-link,var(--cm-primary,#1e3a5f))}.cm-progress-bar{width: 100%;height: 0.5rem;background: var(--cm-app-raised,#e5e7eb);border-radius: 9999px;overflow: hidden;margin: 1rem 0 0.5rem}.cm-progress-bar__fill{height: 100%;background: var(--cm-primary,#1e3a5f);border-radius: 9999px;transition: width 0.3s ease}.cm-progress-bar__text{font-size: 0.75rem;color: var(--cm-app-muted,#6b7280)}.cm-import-results-final{text-align: center;padding: 2rem 0}.cm-import-results-final__icon{margin-bottom: 1rem}.cm-import-results-final h4{margin: 0 0 0.5rem;color: var(--cm-app-success-text,#059669)}.cm-import-results-final__stats{display: flex;justify-content: center;gap: 2rem;margin-top: 1.5rem}.cm-stat-mini{text-align: center}.cm-stat-mini__value{display: block;font-size: 1.5rem;font-weight: 700;color: var(--cm-app-heading,#1f2937)}.cm-stat-mini__label{font-size: 0.75rem;color: var(--cm-app-muted,#6b7280);text-transform: uppercase;letter-spacing: 0.05em}.cm-modal__footer-inner{display: flex;justify-content: flex-end;gap: 0.75rem;width: 100%}.cm-dropzone{position: relative;border: 2px dashed var(--cm-app-strong-border,#d1d5db);border-radius: 0.5rem;padding: 2rem;text-align: center;transition: border-color 0.2s,background 0.2s;cursor: pointer}.cm-dropzone:hover,.cm-dropzone:focus-within{border-color: var(--cm-app-focus,var(--cm-primary,#1e3a5f));background: var(--cm-app-subtle,#f8fafc)}.cm-dropzone__input{position: absolute;inset: 0;width: 100%;height: 100%;opacity: 0;cursor: pointer}.cm-dropzone__content{pointer-events: none;color: var(--cm-app-muted,#6b7280)}.cm-dropzone__content svg{margin: 0 auto 0.5rem;color: var(--cm-app-muted,#9ca3af)}.cm-dropzone__content p{margin: 0;font-size: 0.875rem}.cm-export-dropdown{position: relative;display: inline-block}.cm-export-dropdown__menu{position: absolute;right: 0;top: 100%;z-index: 50;min-width: 180px;margin-top: 0.25rem;background: var(--cm-app-surface,#fff);border: 1px solid var(--cm-app-border,#e5e7eb);border-radius: 0.375rem;box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);padding: 0.25rem 0}.cm-export-dropdown__menu button{display: block;width: 100%;padding: 0.5rem 1rem;text-align: left;background: none;border: none;cursor: pointer;font-size: 0.875rem;color: var(--cm-app-text,#374151);transition: background 0.1s}.cm-export-dropdown__menu button:hover,.cm-export-dropdown__menu button:focus{background: var(--cm-app-subtle,#f3f4f6);outline: none}@media (max-width: 640px){.cm-import-summary{grid-template-columns: repeat(2,1fr)}.cm-import-step__connector{width: 1.5rem}.cm-import-step__label{display: none}}@media (max-width: 480px){.cm-import-results-final__stats{flex-direction: column;gap: 1rem}}.cm-family__header{margin-bottom: 1.5rem}.cm-family__header h2{margin: 0 0 0.25rem;font-size: 1.25rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-900))}.cm-family__intro{margin: 0;max-width: 60ch;font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-family__create,.cm-family__summary,.cm-family__members,.cm-family__invite,.cm-family__add-child{padding: 1.5rem;margin-bottom: 1.5rem}.cm-family__create h3,.cm-family__summary h3,.cm-family__members h3,.cm-family__invite h3,.cm-family__add-child h3{margin: 0 0 0.75rem;font-size: 1rem;font-weight: 600;color: var(--cm-app-heading,var(--cm-gray-800))}.cm-family__create p,.cm-family__invite p,.cm-family__add-child p{margin: 0 0 1rem;font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-gray-600))}.cm-family__kpis{display: grid;grid-template-columns: repeat(3,1fr);gap: 1rem}.cm-family__kpi{display: flex;flex-direction: column;gap: 0.25rem;padding: 1rem;text-align: center;background: var(--cm-app-subtle,var(--cm-gray-50));border: 1px solid var(--cm-app-border,var(--cm-gray-100));border-radius: var(--cm-radius-md)}.cm-family__kpi-value{font-size: 1.5rem;font-weight: 700;line-height: 1.1;color: var(--cm-app-heading,var(--cm-gray-900))}.cm-family__kpi-label{font-size: 0.75rem;letter-spacing: 0.03em;text-transform: uppercase;color: var(--cm-app-muted,var(--cm-gray-500))}.cm-family__form{display: flex;flex-direction: column;gap: 0.75rem;max-width: 28rem}.cm-family__form label{font-size: 0.875rem;font-weight: 600;color: var(--cm-app-text,var(--cm-gray-700))}.cm-family__form input,.cm-family__form select{width: 100%;padding: 0.5rem 0.75rem;font-size: 0.9375rem;border: 1px solid var(--cm-app-strong-border,var(--cm-gray-300));border-radius: var(--cm-radius)}.cm-family__form input:focus,.cm-family__form select:focus{border-color: var(--cm-app-focus,var(--cm-primary));outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 1px}.cm-family__form button{align-self: flex-start;margin-top: 0.25rem}.cm-family__msg{margin: 1rem 0 0;padding: 0.625rem 0.875rem;font-size: 0.875rem;color: var(--cm-app-text,var(--cm-gray-800));background: var(--cm-app-info-bg,var(--cm-info-light));border-radius: var(--cm-radius)}.cm-family__members .cm-table{margin-top: 0.25rem}.cm-family__table-wrap{background: transparent;border-radius: 0;box-shadow: none}.cm-family .cm-btn--link{padding: 0;font: inherit;color: var(--cm-app-link,var(--cm-primary));text-decoration: underline;background: none;border: none;cursor: pointer}.cm-family .cm-btn--link.cm-btn--danger{color: var(--cm-app-danger-text,var(--cm-danger))}.cm-family .cm-btn--link:hover{text-decoration: none}.cm-family .cm-btn--link:focus-visible{outline: 2px solid var(--cm-app-focus,var(--cm-primary));outline-offset: 2px}.cm-family .cm-btn--link:disabled{opacity: 0.5;cursor: not-allowed}@media (max-width: 600px){.cm-family__kpis{grid-template-columns: 1fr}.cm-family__form{max-width: none}}.cm-overview__kpis{display: grid;grid-template-columns: repeat(auto-fit,minmax(260px,1fr));gap: 1rem;margin-bottom: 1.5rem}.cm-overview__grid{display: grid;grid-template-columns: 2fr 1fr;gap: 1.5rem;align-items: start}.cm-overview__main,.cm-overview__side{display: flex;flex-direction: column;gap: 1rem;min-width: 0}.cm-overview__main{gap: 1.5rem}@media (max-width: 768px){.cm-overview__grid{grid-template-columns: 1fr}}.cm-page-eyebrow{margin: 0 0 0.25rem;font-size: 0.75rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.05em;color: var(--cm-app-heading,var(--cm-primary,#1e3a5f))}.cm-page-meta{display: flex;flex-wrap: wrap;gap: 0.5rem;margin: 0.5rem 0 1.25rem}.cm-card--overdue{border-left: 4px solid var(--cm-app-warning-border,#d97706);background: var(--cm-app-warning-bg,linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%))}.cm-your-rsvp__choices{display: flex;flex-wrap: wrap;gap: 0.5rem;margin-bottom: 0.75rem}.cm-your-rsvp__dining{display: flex;align-items: center;gap: 0.5rem;margin-bottom: 0.75rem;font-size: 0.875rem}.cm-your-rsvp__actions{display: flex;align-items: center;gap: 0.75rem;flex-wrap: wrap}.cm-your-rsvp__feedback.is-error{color: var(--cm-app-danger-text,#dc2626)}.cm-your-rsvp__feedback.is-success{color: var(--cm-app-success-text,#15803d)}.cm-stat-value--text{font-size: 1rem;font-weight: 600}.cm-rsvp-mine{font-size: 0.875rem;color: var(--cm-app-muted,var(--cm-text-muted,#6b7280))}@media (pointer: coarse){.cm-btn-sm,.btn--small,.btn--icon{min-height: 44px}}.cm-confirm-backdrop{position: fixed;inset: 0;background: rgba(0,0,0,0.5);display: flex;align-items: center;justify-content: center;z-index: 100000;padding: 1rem}.cm-confirm{background: var(--cm-app-surface,#fff);border-radius: 0.5rem;box-shadow: 0 10px 40px rgba(0,0,0,0.2);max-width: 420px;width: 100%;padding: 1.5rem}.cm-confirm__title{margin: 0 0 0.75rem;color: var(--cm-app-heading,var(--cm-text,#1f2937));font-size: 1.25rem;line-height: 1.3}.cm-confirm__message{margin: 0 0 1.25rem;color: var(--cm-app-text,var(--cm-text,#1f2937));font-size: 1rem;line-height: 1.5}.cm-confirm__actions{display: flex;justify-content: flex-end;gap: 0.5rem}.cm-news-workspace{display: grid;gap: 1.5rem;min-width: 0}.cm-news-workspace>.cm-card{min-width: 0;margin: 0}.cm-news-actions{display: flex;flex-wrap: wrap;gap: 0.75rem}.cm-family__pending li{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-block:.75rem}.cm-family__pending li>span{min-width:0;overflow-wrap:anywhere;flex:1 1 15rem}.cm-family__guardian-confirm{display:flex!important;align-items:flex-start;gap:.65rem;min-height:28px}.cm-family__guardian-confirm input{width:1.1rem!important;min-height:1.1rem;padding:0!important;margin-top:.2rem}