@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);:root{--btn-color:#1a8fa8;--btn-hover:#157a91;--btn-shadow:#1a8fa84d;--spring:#56e39f;--winter:#4facfe;--summer:#f857a6;--autumn:#f48c06;--bg:#f5f5f7;--card:#fff;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--input-bg:#f5f5f7;--border:#e0e0e5;--shadow:0 2px 8px #0000000a,0 8px 32px #0000000f,0 24px 64px #00000014;--transition:all 0.25s ease;--surface:#fff;--surface2:#f5f5f7;--separator:#0000000f;--text-muted:#aeaeb2;--hover-overlay:#0000000d}@media (prefers-color-scheme:dark){:root{--bg:#000;--card:#1c1c1e;--text-primary:#fff;--text-secondary:#aeaeb2;--input-bg:#2c2c2e;--border:#3a3a3c;--shadow:0 2px 8px #0000004d,0 8px 32px #0006;--surface:#1c1c1e;--surface2:#2c2c2e;--separator:#ffffff14;--text-muted:#636366;--hover-overlay:#ffffff0f}body{background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f0a,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe0a,#0000),#000;color:#1d1d1f;color:var(--text-primary)}::-webkit-scrollbar-track{background:#f5f5f7;background:var(--bg)}::-webkit-scrollbar-thumb{background:#e0e0e5;background:var(--border)}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f14,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe14,#0000),radial-gradient(ellipse 60% 40% at 80% 20%,#f857a60f,#0000),#f5f5f7;color:#1d1d1f;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh}a{color:#1a8fa8;color:var(--btn-color);text-decoration:none;transition:all .25s ease;transition:var(--transition)}a:hover{color:#157a91;color:var(--btn-hover);text-decoration:underline}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:#f5f5f7;background:var(--bg)}::-webkit-scrollbar-thumb{background:#e0e0e5;background:var(--border);border-radius:2px}.form-group{margin-bottom:16px}.form-group label{font-size:13px;font-weight:500;margin-bottom:8px}.form-group input,.form-group label{color:var(--text-primary);display:block}.form-group input{background:var(--input-bg);border:1.5px solid var(--border);border-radius:12px;font-family:inherit;font-size:15px;outline:none;padding:14px 16px;transition:var(--transition);width:100%}.form-group input::placeholder{color:#aeaeb2}.form-group input:focus{background:#fff;border-color:var(--btn-color);box-shadow:0 0 0 4px #1a8fa81a}@media (prefers-color-scheme:dark){.form-group input:focus{background:#3a3a3c}}.btn-primary{background:#0000;border:1px solid #e0e0e5;border-radius:8px;color:#6e6e73;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;letter-spacing:.2px;margin-top:8px;padding:14px;text-align:center;transition:all .2s ease;width:100%}.btn-primary:hover{background:#f5f5f7;border-color:#d0d0d5;box-shadow:0 4px 12px #1a8fa833;color:#1d1d1f;transform:translateY(-1px)}.btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.4;transform:none}.btn-danger{background:#0000!important;box-shadow:none!important;color:#aeaeb2!important}.btn-danger:hover{background:#f5f5f7!important;box-shadow:0 4px 12px #f857a640!important;color:#6e6e73!important;transform:translateY(-1px)!important}@media (prefers-color-scheme:dark){.btn-primary{border-color:#3a3a3c;color:#aeaeb2}.btn-primary:hover{background:#2c2c2e;border-color:#3a3a3c;color:#fff}.btn-danger:hover{background:#2c2c2e!important;color:#aeaeb2!important}}.auth-link{color:var(--text-secondary);font-size:13px;text-align:center}.auth-link a{color:var(--btn-color);font-weight:600}.auth-link a:hover{text-decoration:underline}.login-logo svg{color:#1d1d1f}.login-forgot{color:#1a8fa8;display:block;font-size:13px;margin-top:12px;text-align:center;text-decoration:none}.login-forgot:hover{text-decoration:underline}@media (prefers-color-scheme:dark){.login-page{background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f0f,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe0f,#0000),#000}.login-container{background:#1c1c1e;box-shadow:0 2px 8px #0000004d,0 8px 32px #0006}.login-container h2{color:#fff}.login-subtitle{color:#aeaeb2}.season-badge{background:#2c2c2e}.login-divider:after,.login-divider:before,.season-badge:hover{background:#3a3a3c}.login-logo svg{color:#fff}.login-logo .logo-string{stroke:#5a5a5e}}.login-page{align-items:center;background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f14,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe14,#0000),radial-gradient(ellipse 60% 40% at 80% 20%,#f857a60f,#0000),#f5f5f7;display:flex;justify-content:center;min-height:100vh}.login-container{background:#fff;border-radius:24px;box-shadow:0 2px 8px #0000000a,0 8px 32px #0000000f,0 24px 64px #00000014;max-width:460px;padding:60px 50px;width:100%}.login-logo{margin-bottom:36px;text-align:center}.login-logo p{color:#aeaeb2;font-size:11px;font-style:italic;letter-spacing:.3px;margin-top:8px}.seasons{gap:8px;margin-bottom:32px}.season-badge,.seasons{display:flex;justify-content:center}.season-badge{align-items:center;background:#f5f5f7;border-radius:10px;cursor:default;font-size:18px;height:36px;transition:all .2s ease;width:36px}.season-badge:hover{background:#ebebf0;transform:scale(1.15)}.login-container h2{color:#1d1d1f;font-size:24px;font-weight:700;letter-spacing:-.5px;margin-bottom:6px;text-align:center}.login-subtitle{color:#6e6e73;font-size:14px;margin-bottom:32px;text-align:center}.login-tag{color:var(--btn-color);font-size:12px;font-weight:500;margin-top:10px;text-align:center}.login-divider{align-items:center;display:flex;gap:12px;margin:20px 0}.login-divider:after,.login-divider:before{background:#e0e0e5;content:"";flex:1 1;height:1px}.login-divider span{color:#aeaeb2;font-size:11px;letter-spacing:1px}.register-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.register-family{margin:8px 0}.register-family-label{color:#6e6e73;display:block;font-size:12px;font-weight:500;margin-bottom:10px}.register-family-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.register-family-option{align-items:center;background:#0000;border:1.5px solid #e0e0e5;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:16px;transition:all .2s ease}.register-family-option span{font-size:24px}.register-family-option p{color:#6e6e73;font-size:12px;font-weight:600}.register-family-option:hover{background:#1a8fa80a;border-color:var(--btn-color)}.register-family-option.selected{background:#1a8fa814;border-color:var(--btn-color)}.register-family-option.selected p{color:var(--btn-color)}.register-family-input{background:#f5f5f7;border:1.5px solid #0000;border-radius:10px;box-sizing:border-box;color:#1d1d1f;font-family:inherit;font-size:14px;outline:none;padding:11px 14px;transition:all .2s ease;width:100%}.register-family-input:focus{background:#fff;border-color:var(--btn-color);box-shadow:0 0 0 4px #1a8fa81a}@media (prefers-color-scheme:dark){.login-page{background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f0f,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe0f,#0000),#000}.login-container{background:#1c1c1e;box-shadow:0 2px 8px #0000004d,0 8px 32px #0006}.login-container h2{color:#fff}.login-subtitle{color:#aeaeb2}.season-badge{background:#2c2c2e}.login-divider:after,.login-divider:before,.season-badge:hover{background:#3a3a3c}.register-family-option{border-color:#3a3a3c;color:#aeaeb2}.register-family-option p{color:#aeaeb2}.register-family-option:hover{background:#1a8fa814;border-color:var(--btn-color)}.register-family-option.selected{background:#1a8fa826}.register-family-input{background:#2c2c2e;color:#fff}.register-family-input:focus{background:#3a3a3c}}.time-roller{align-items:center;background:#0000000a;border-radius:5px;display:inline-flex;gap:0;padding:0 3px}.time-roller-drum{align-items:center;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.time-roller-arrow{background:none;border:none;color:#c7c7cc;cursor:pointer;font-size:5px;line-height:1;padding:2px 4px;transition:color .12s}.time-roller-arrow:hover{color:#1d1d1f}.time-roller-value{font-feature-settings:"tnum";font-size:11px;font-variant-numeric:tabular-nums;font-weight:600;min-width:16px;text-align:center}.time-roller-colon,.time-roller-value{color:#1d1d1f;font-family:-apple-system,SF Pro Text,system-ui,sans-serif;line-height:1}.time-roller-colon{font-size:11px;font-weight:600;padding:0 1px}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:520px;overflow-y:auto;width:100%}.modal-header{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:24px 28px 0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.modal-header h2{color:#1d1d1f;font-size:20px;font-weight:700;letter-spacing:-.3px}.modal-close{align-items:center;background:#f0f0f5;border:none;border-radius:50%;color:#6e6e73;cursor:pointer;display:flex;font-size:12px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.modal-close:hover{background:#e0e0e5;color:#1d1d1f}.modal-error{background:#ff3b300d;border:1px solid #ff3b3033;border-radius:8px;color:#ff3b30;font-size:13px;margin:12px 28px 0;padding:10px;text-align:center}.modal-form{gap:16px;padding:20px 28px 28px}.modal-field,.modal-form{display:flex;flex-direction:column}.modal-field{gap:6px}.modal-field label{color:#6e6e73;font-size:12px;font-weight:500;letter-spacing:.3px}.modal-field input,.modal-field select,.modal-field textarea{background:#f5f5f7;border:1.5px solid #0000;border-radius:10px;color:#1d1d1f;font-family:inherit;font-size:14px;outline:none;padding:11px 14px;transition:all .2s ease;width:100%}.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus{background:#fff;border-color:var(--btn-color);box-shadow:0 0 0 4px #1a8fa81a}.modal-field textarea{resize:none}.modal-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.modal-colors{display:flex;flex-wrap:wrap;gap:10px}.modal-color-dot{border:2px solid #0000;border-radius:50%;cursor:pointer;height:24px;transition:all .2s ease;width:24px}.modal-color-dot:hover{transform:scale(1.2)}.modal-color-dot.selected{border-color:#1d1d1f;transform:scale(1.2)}.modal-submit{background:#0000;border:1px solid #e0e0e5;border-radius:10px;color:#6e6e73;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;margin-top:8px;padding:14px;transition:all .2s ease;width:100%}.modal-submit:hover{background:#f5f5f7;border-color:#d0d0d5;box-shadow:0 4px 12px #1a8fa833;color:#1d1d1f;transform:translateY(-1px)}.modal-submit:disabled{box-shadow:none;cursor:not-allowed;opacity:.4;transform:none}.modal-attendees{display:flex;flex-wrap:wrap;gap:12px}.modal-attendee{align-items:center;border:2px solid #0000;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:8px;position:relative;transition:all .2s ease}.modal-attendee:hover{background:#f5f5f7}.modal-attendee.selected{background:rgba(var(--member-color),.05);border-color:var(--member-color)}.modal-attendee-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:44px;justify-content:center;width:44px}.modal-attendee-name{color:#6e6e73;font-size:11px;font-weight:500}.modal-attendee-check{align-items:center;background:var(--member-color);border-radius:50%;color:#fff;display:flex;font-size:10px;height:16px;justify-content:center;position:absolute;right:4px;top:4px;width:16px}.modal-task-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr auto auto auto;margin-bottom:8px}.modal-task-input{background:#f5f5f7;border:1.5px solid #0000;border-radius:8px;color:#1d1d1f;font-family:inherit;font-size:13px;outline:none;padding:8px 12px;transition:all .2s ease}.modal-task-input:focus{background:#fff;border-color:var(--btn-color)}.modal-task-select{background:#f5f5f7;border:1.5px solid #0000;border-radius:8px;color:#1d1d1f;cursor:pointer;font-family:inherit;font-size:12px;outline:none;padding:8px 10px}.modal-task-remove{background:none;border:none;color:#aeaeb2;cursor:pointer;font-size:14px;padding:4px}.modal-task-remove:hover{color:#ff3b30}.modal-task-add{background:none;border:1.5px dashed #d0d0d5;border-radius:8px;color:#6e6e73;cursor:pointer;font-family:inherit;font-size:12px;padding:8px 14px;transition:all .2s ease;width:100%}.modal-task-add:hover{border-color:var(--btn-color);color:var(--btn-color)}.modal-toggles-row{align-items:center;display:flex;gap:16px}.modal-toggle-item{align-items:center;background:#f5f5f7;border-radius:10px;cursor:pointer;display:flex;flex:1 1;gap:10px;padding:10px 14px;-webkit-user-select:none;user-select:none}.modal-toggle-label{color:#1d1d1f;flex:1 1;font-size:13px;font-weight:500}.modal-toggle-switch{flex-shrink:0;height:22px;position:relative;width:40px}.modal-toggle-switch input{height:0;opacity:0;position:absolute;width:0}.modal-toggle-slider{background:#d0d0d5;border-radius:22px;cursor:pointer;inset:0;position:absolute;transition:background .2s ease}.modal-toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:16px;left:3px;position:absolute;top:3px;transition:transform .2s ease;width:16px}.modal-toggle-switch input:checked+.modal-toggle-slider{background:var(--btn-color)}.modal-toggle-switch input:checked+.modal-toggle-slider:before{transform:translateX(18px)}@media (prefers-color-scheme:dark){.modal-container,.modal-header{background:#1c1c1e}.modal-header h2{color:#fff}.modal-close{background:#2c2c2e;color:#aeaeb2}.modal-close:hover{background:#3a3a3c;color:#fff}.modal-field label{color:#aeaeb2}.modal-field input,.modal-field select,.modal-field textarea{background:#2c2c2e;border-color:#0000;color:#fff}.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus{background:#3a3a3c}.modal-submit{background:#0000;border-color:#3a3a3c;color:#aeaeb2}.modal-submit:hover{background:#2c2c2e;border-color:#3a3a3c;color:#fff}.modal-attendee:hover{background:#ffffff0f}.modal-attendee-name{color:#aeaeb2}.modal-task-input{background:#2c2c2e;color:#fff}.modal-task-input:focus{background:#3a3a3c}.modal-task-select{background:#2c2c2e;color:#fff}.modal-task-add{border-color:#3a3a3c;color:#636366}.modal-toggle-item{background:#2c2c2e}.modal-toggle-label{color:#fff}.modal-toggle-slider{background:#3a3a3c}.modal-color-dot.selected{border-color:#fff}}.sidebar{background:#f5f5f7;border-right:1px solid #00000012;display:flex;flex-direction:column;height:100vh;overflow-x:hidden;overflow-y:auto;padding:20px 0 24px}.sidebar-section{padding:0 16px}.sidebar-label{color:#aeaeb2;font-size:10px;font-weight:700;letter-spacing:1.5px;margin:0 0 10px;text-transform:uppercase}.sidebar-divider{background:#0000000f;height:1px;margin:18px 16px}.sidebar-family{padding:0 16px 4px}.sidebar-family-name{color:#1d1d1f;font-size:17px;font-weight:700;letter-spacing:-.4px;margin-bottom:3px}.sidebar-invite{color:#6e6e73;font-size:12px}.sidebar-invite strong{color:#1a8fa8;color:var(--btn-color,#1a8fa8);font-weight:600}.sidebar-members-row{grid-gap:12px 0;display:grid;gap:12px 0;grid-template-columns:repeat(3,1fr);margin-top:8px}.sidebar-member-bubble{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:5px;justify-self:center;transition:transform .18s ease}.sidebar-member-bubble:hover{transform:translateY(-2px)}.sidebar-member-avatar{border-radius:50%;flex-shrink:0;height:40px;object-fit:cover;width:40px}.sidebar-member-bubble.active .sidebar-member-avatar{box-shadow:0 0 0 3px #f5f5f7,0 0 0 5px #1a8fa8;box-shadow:0 0 0 3px #f5f5f7,0 0 0 5px var(--btn-color,#1a8fa8)}.sidebar-member-bubble-footer{align-items:center;display:flex;gap:3px}.sidebar-member-bubble-name{color:#6e6e73;font-size:10px;font-weight:500}.sidebar-member-relationship{color:#aeaeb2;font-size:9px;font-weight:400;line-height:1}.sidebar-member-settings-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#aeaeb2;cursor:pointer;display:flex;height:16px;justify-content:center;line-height:1;opacity:0;padding:0;transition:color .15s;width:16px}.sidebar-member-bubble.active .sidebar-member-settings-btn,.sidebar-member-bubble.is-me .sidebar-member-settings-btn,.sidebar-member-bubble:hover .sidebar-member-settings-btn{opacity:1}.sidebar-member-settings-btn:hover{color:#1a8fa8;color:var(--btn-color,#1a8fa8)}.sidebar-member-panel{background:#fff;border-radius:8px;box-shadow:0 1px 4px #00000012;margin-top:12px;padding:12px}.sidebar-member-panel-name{color:#aeaeb2;font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;text-transform:uppercase}.sidebar-current-user{align-items:center;display:flex;gap:10px;margin-top:10px}.sidebar-current-user-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:38px;justify-content:center;width:38px}.sidebar-current-user-name{color:#1d1d1f;font-size:13px;font-weight:600}.sidebar-current-user-role{color:#aeaeb2;font-size:11px;margin-top:1px;text-transform:capitalize}.sidebar-tasks-empty{color:#aeaeb2;font-size:12px;padding:4px 0 8px}.sidebar-member-tasks,.sidebar-task-list{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}.sidebar-task-card{align-items:stretch;background:#0000;border-radius:8px;display:flex;margin:0 -4px;overflow:hidden;padding:0 4px;transition:background .15s}.sidebar-task-card:hover{background:#0000000d}.sidebar-task-accent{border-radius:0;flex-shrink:0;width:4px}.sidebar-task-body{flex:1 1;min-width:0;padding:10px 10px 10px 11px}.sidebar-task-title{color:#1d1d1f;font-size:13px;font-weight:600;margin:0 0 2px}.sidebar-task-sub,.sidebar-task-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-task-sub{color:#8e8e93;font-size:11px;margin:0 0 4px}.sidebar-task-date{color:#aeaeb2;font-size:11px;font-weight:500}.sidebar-task-badge-pending{background:#fff8e6;border-radius:5px;color:#f59e0b;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.4px;padding:1px 6px}.sidebar-task-complete{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;opacity:0;position:relative;transition:opacity .15s;width:44px}.sidebar-task-card:hover .sidebar-task-complete{opacity:1}.sidebar-task-complete:after{border:1.5px solid #34c759;border:1.5px solid var(--accent,#34c759);border-radius:50%;content:"";display:block;height:20px;transition:background .15s,border-color .15s;width:20px}.sidebar-task-complete:hover:after{background:#34c759;background:var(--accent,#34c759)}.sidebar-task-complete:hover:before{color:#fff;content:"✓";font-size:11px;font-weight:700;position:absolute;z-index:1}.sidebar-task-add{background:#0000000d;border:none;border-radius:8px;color:#aeaeb2;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;margin:0 -4px;padding:8px 0;text-align:center;transition:background .15s,color .15s;width:calc(100% + 8px)}.sidebar-task-add:hover{background:#00000017;color:#6e6e73}.sidebar-groups-empty{color:#aeaeb2;font-size:12px;margin-bottom:8px}.sidebar-group-row{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:10px;margin:0 -4px;padding:8px 10px;transition:background .15s}.sidebar-group-row:hover{background:#0000000d}.sidebar-group-icon{align-items:center;background:#1a8fa8;border-radius:7px;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:34px;justify-content:center;width:34px}.sidebar-group-info{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.sidebar-group-name{color:#1d1d1f;font-size:13px;font-weight:600}.sidebar-group-meta{color:#aeaeb2;font-size:10px;font-weight:500}.sidebar-group-admin-badge{background:#1a8fa81a;border-radius:20px;color:#1a8fa8;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.5px;padding:2px 7px;text-transform:uppercase}.sidebar-group-actions{display:flex;flex-direction:row;gap:6px;margin:0 -4px;transition:opacity .15s}.sidebar-section:has(.sidebar-group-row:hover) .sidebar-group-action-btn{background:#f5f5f7;color:#c7c7cc}.sidebar-section:has(.sidebar-task-card:hover) .sidebar-task-add{background:#f5f5f7;color:#c7c7cc}.sidebar-group-action-btn{background:#0000000d;border:none;border-radius:8px;color:#aeaeb2;cursor:pointer;flex:1 1;font-family:inherit;font-size:13px;font-weight:500;padding:8px 0;text-align:center;transition:background .15s,color .15s}.sidebar-group-action-btn:hover{background:#00000017;color:#6e6e73}.sidebar-group-form{margin-top:8px}.sidebar-group-input{background:#fff;border:1.5px solid #0000001a;border-radius:7px;box-sizing:border-box;color:#1d1d1f;font-family:inherit;font-size:13px;margin-bottom:7px;outline:none;padding:9px 12px;transition:border-color .15s,box-shadow .15s;width:100%}.sidebar-group-input:focus{border-color:#1a8fa8;box-shadow:0 0 0 3px #1a8fa81f}.sidebar-group-form-row{display:flex;gap:6px}.sidebar-group-btn-confirm{background:#1a8fa8;border:none;border-radius:7px;color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;padding:7px 0;transition:opacity .15s}.sidebar-group-btn-confirm:hover{opacity:.88}.sidebar-group-btn-cancel{background:#fff;border:1.5px solid #0000001a;border-radius:7px;color:#6e6e73;cursor:pointer;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;padding:7px 0}.sidebar-group-error{color:#ff3b30;font-size:11px;margin-bottom:4px}.sidebar-group-delete-btn{background:#0000;border:none;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:13px;opacity:0;padding:2px 4px;transition:opacity .15s}.sidebar-group-row:hover .sidebar-group-delete-btn{opacity:.5}.sidebar-group-delete-btn:hover{opacity:1!important}.sidebar-group-delete-confirm{padding:6px 4px 4px 48px}.sidebar-group-delete-text{color:#ff3b30;font-size:12px;font-weight:500;margin-bottom:6px}.sidebar-group-btn-danger{background:#ff3b30;border:none;border-radius:7px;color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;padding:7px 0}.sidebar-group-btn-danger:disabled{cursor:default;opacity:.5}.sidebar-group-invites{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.sidebar-group-invite{align-items:center;background:#fffbf0;border:1px solid #f48c064d;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px}.sidebar-group-invite-info{display:flex;flex-direction:column;gap:2px}.sidebar-group-invite-name{color:#1d1d1f;font-size:12px;font-weight:700}.sidebar-group-invite-from{color:#aeaeb2;font-size:10px}.sidebar-group-invite-actions{display:flex;gap:6px}.sidebar-group-invite-accept,.sidebar-group-invite-deny{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;font-family:inherit;font-size:12px;font-weight:700;height:28px;justify-content:center;transition:opacity .15s,transform .15s;width:28px}.sidebar-group-invite-accept{background:#e4f8ed;color:#34c759}.sidebar-group-invite-deny{background:#ffeeed;color:#ff3b30}.sidebar-group-invite-accept:hover,.sidebar-group-invite-deny:hover{transform:scale(1.1)}.sidebar-group-invite-accept:disabled,.sidebar-group-invite-deny:disabled{cursor:default;opacity:.4}.sidebar-pending-list{display:flex;flex-direction:column;gap:7px}.sidebar-pending-item{align-items:center;background:#fffbf0;border:1px solid #f48c064d;border-radius:8px;display:flex;gap:10px;padding:10px 12px;transition:box-shadow .15s}.sidebar-pending-item:hover{box-shadow:0 3px 10px #f48c061f}.sidebar-pending-color{align-self:stretch;border-radius:4px;flex-shrink:0;width:4px}.sidebar-pending-info{flex:1 1;min-width:0}.sidebar-pending-title{color:#1d1d1f;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-pending-meta{color:#6e6e73;font-size:10px;margin-top:2px}.sidebar-pending-from{color:#aeaeb2;font-size:10px;margin-top:1px}.sidebar-pending-actions{display:flex;flex-direction:column;flex-shrink:0;gap:4px}.sidebar-pending-accept,.sidebar-pending-deny{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;font-family:inherit;font-size:11px;font-weight:700;height:26px;justify-content:center;transition:transform .15s;width:26px}.sidebar-pending-accept{background:#e4f8ed;color:#34c759}.sidebar-pending-deny{background:#ffeeed;color:#ff3b30}.sidebar-pending-accept:hover,.sidebar-pending-deny:hover{transform:scale(1.1)}.sidebar-pending-accept:disabled,.sidebar-pending-deny:disabled{cursor:default;opacity:.4}.sidebar-pending-group{display:flex;flex-direction:column;margin-bottom:10px}.sidebar-pending-group>.sidebar-pending-item{box-shadow:0 6px 16px #00000021;position:relative;z-index:10}.sidebar-pending-task-cascade{margin-top:-10px;padding-left:12px;position:relative}.sidebar-pending-task-cascade .sidebar-pending-item{border-top-left-radius:0;border-top-right-radius:4px;box-shadow:0 4px 10px #00000014}.sidebar-pending-task-cascade:nth-child(2){z-index:9}.sidebar-pending-task-cascade:nth-child(3){z-index:8}.sidebar-pending-task-cascade:nth-child(4){z-index:7}.sidebar-pending-task-cascade:nth-child(5){z-index:6}.sidebar-pending-task{background:#f0f6ff;border-color:#007aff40}.sidebar-pending-subtasks{border-left:2px solid #93c5fd;display:flex;flex-direction:column;gap:3px;margin:6px 0 5px 4px;padding-left:10px}.sidebar-pending-subtask{align-items:center;display:flex;gap:5px}.sidebar-pending-subtask-line{color:#60a5fa;flex-shrink:0;font-family:monospace;font-size:11px;line-height:1}.sidebar-pending-subtask-title{background:#fff9;border-radius:4px;color:#1d1d1f;font-size:11px;overflow:hidden;padding:1px 6px;text-overflow:ellipsis;white-space:nowrap}.sidebar-pending-notif{background:#fff8ee;border-color:#ff9f0a4d}.sidebar-pending-accepted{background:#f0fff4;border-color:#34c7594d}.sidebar-pending-task-label.accepted{color:#34c759}.sidebar-pending-task-label{color:#007aff;font-size:8px;font-weight:700;letter-spacing:1.2px;margin:0 0 2px}.sidebar-pending-notif .sidebar-pending-task-label{color:#ff9f0a}.sidebar-pending-task-actions{flex-direction:column;gap:3px}.sidebar-pending-counter-btn{align-items:center;background:#e8e8ed;border:none;border-radius:50%;color:#3a3a3c;cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:700;height:26px;justify-content:center;transition:transform .15s;width:26px}.sidebar-pending-counter-btn:hover{transform:scale(1.1)}.sidebar-pending-counter-btn:disabled{cursor:default;opacity:.4}.sidebar-pending-counter{margin-top:8px}.sidebar-pending-counter input{background:#fff;border:1px solid #007aff4d;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:11px;outline:none;padding:5px 8px;width:100%}.sidebar-pending-counter input:focus{border-color:#007aff}.sidebar-pending-counter-actions{display:flex;gap:6px;margin-top:5px}.sidebar-pending-counter-cancel,.sidebar-pending-counter-send{border:none;border-radius:5px;cursor:pointer;font-family:inherit;font-size:10px;font-weight:600;padding:3px 8px}.sidebar-pending-counter-send{background:#007aff;color:#fff}.sidebar-pending-counter-send:disabled{cursor:default;opacity:.4}.sidebar-pending-counter-cancel{background:#e8e8ed;color:#3a3a3c}.sidebar-pending-counter-offer{color:#3a3a3c;font-size:11px;font-style:italic;margin-top:3px}.sidebar-task-timeslot{align-items:center;border-top:1px solid #0000000f;display:flex;flex-direction:row;justify-content:space-between;margin-top:8px;padding-top:7px}.sidebar-task-timeslot-label{color:#aeaeb2;font-size:10px;font-weight:500}.sidebar-bottom{align-items:center;display:flex;gap:8px;margin-top:12px;padding:0 16px}.sidebar-logout{background:#fff;border:none;border-radius:8px;box-shadow:0 1px 3px #0000000f;color:#8e8e93;cursor:pointer;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;padding:9px;transition:all .18s ease}.sidebar-logout:hover{box-shadow:0 2px 8px #ff3b3026;color:#ff3b30}.sidebar-gear{align-items:center;background:#fff;border:none;border-radius:7px;box-shadow:0 1px 3px #00000012;cursor:pointer;display:flex;flex-shrink:0;font-size:15px;height:34px;justify-content:center;transition:all .18s ease;width:34px}.sidebar-gear:hover{box-shadow:0 2px 8px #0000001f}.sidebar-profile{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:8px 16px;transition:background .15s}.sidebar-profile:hover{background:#0000000a}.sidebar-profile-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:42px;justify-content:center;width:42px}.sidebar-profile-name{color:#1d1d1f;font-size:14px;font-weight:600}.sidebar-profile-role{color:#aeaeb2;font-size:11px;text-transform:capitalize}.sidebar-notifications{padding:0 16px}.sidebar-notifications-toggle{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-family:inherit;justify-content:space-between;padding:0;width:100%}.sidebar-notifications-label{align-items:center;color:#aeaeb2;display:flex;font-size:10px;font-weight:700;gap:6px;letter-spacing:1.5px;text-transform:uppercase}.sidebar-notifications-badge{align-items:center;background:#ff3b30;border-radius:9px;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:18px;justify-content:center;letter-spacing:0;min-width:18px;padding:0 5px}.sidebar-notifications-chevron{color:#c7c7cc;font-size:9px}.sidebar-notifications-feed{display:flex;flex-direction:column;gap:2px;margin-top:10px}.sidebar-notifications-markall{background:#0000;border:none;color:#1a8fa8;cursor:pointer;font-family:inherit;font-size:11px;font-weight:600;padding:0 0 8px;text-align:left}.sidebar-notifications-markall:hover{opacity:.75}.sidebar-notifications-empty{color:#aeaeb2;font-size:12px;margin:0;padding:4px 0 8px}.sidebar-notif-item{align-items:flex-start;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:9px 8px;position:relative;transition:background .15s}.sidebar-notif-item.unread{background:#1a8fa80f}.sidebar-notif-item.unread:hover{background:#1a8fa81c}.sidebar-notif-item.read{background:#0000;cursor:default}.sidebar-notif-item.read:hover{background:#00000008}.sidebar-notif-icon{flex-shrink:0;font-size:16px;line-height:1.4}.sidebar-notif-body{flex:1 1;min-width:0}.sidebar-notif-title{color:#1d1d1f;font-size:12px;font-weight:600;margin:0 0 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-notif-item.read .sidebar-notif-title{color:#3a3a3c;font-weight:500}.sidebar-notif-text{color:#6e6e73;font-size:11px;margin:0 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-notif-time{color:#aeaeb2;font-size:10px;margin:0}.sidebar-notif-dot{background:#1a8fa8;border-radius:50%;flex-shrink:0;height:7px;margin-top:5px;width:7px}.sidebar-chat{padding:0 16px}.sidebar-chat-toggle{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;font-family:inherit;justify-content:space-between;padding:0;width:100%}.sidebar-chat-label{color:#aeaeb2;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.sidebar-chat-panel{display:flex;flex-direction:column;gap:8px;margin-top:10px}.sidebar-chat-feed{display:flex;flex-direction:column;gap:10px;max-height:260px;overflow-y:auto;padding:4px 0}.sidebar-chat-empty{color:#aeaeb2;font-size:12px;margin:0;padding:16px 0 8px;text-align:center}.sidebar-chat-msg{align-items:flex-end;display:flex;gap:7px}.sidebar-chat-msg-me{flex-direction:row-reverse}.sidebar-chat-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:9px;font-weight:700;height:26px;justify-content:center;width:26px}.sidebar-chat-bubble-wrap{display:flex;flex-direction:column;gap:2px;max-width:80%}.sidebar-chat-msg-me .sidebar-chat-bubble-wrap{align-items:flex-end}.sidebar-chat-sender{color:#aeaeb2;font-size:10px;font-weight:600;padding:0 4px}.sidebar-chat-bubble{background:#e9e9eb;border-radius:14px 14px 14px 4px;color:#1d1d1f;font-size:13px;line-height:1.4;padding:7px 10px;white-space:pre-wrap;word-break:break-word}.sidebar-chat-bubble-me{background:#1a8fa8;border-radius:14px 14px 4px 14px;color:#fff}.sidebar-chat-time{color:#c7c7cc;font-size:10px;padding:0 4px}.sidebar-chat-input-row{align-items:flex-end;display:flex;gap:6px}.sidebar-chat-input{background:#fff;border:1.5px solid #0000001a;border-radius:18px;color:#1d1d1f;flex:1 1;font-family:inherit;font-size:13px;line-height:1.4;max-height:80px;outline:none;overflow-y:auto;padding:8px 12px;resize:none;transition:border-color .15s,box-shadow .15s}.sidebar-chat-input:focus{border-color:#1a8fa8;box-shadow:0 0 0 3px #1a8fa81f}.sidebar-chat-send{align-items:center;background:#1a8fa8;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:32px;justify-content:center;transition:opacity .15s,transform .15s;width:32px}.sidebar-chat-send:hover{opacity:.88;transform:scale(1.05)}.sidebar-chat-send:disabled{cursor:default;opacity:.35;transform:none}.sidebar-chat-date-link{background:#0000;border:none;color:#007aff;cursor:pointer;font-family:inherit;font-size:inherit;font-weight:600;line-height:inherit;padding:0;text-decoration:underline}.sidebar-chat-date-link:hover{opacity:.75}.sidebar-chat-date-link-me{color:#a8dce8}.sidebar-chat-date-hint{color:#8e8e93;font-size:10px;margin-top:4px}.sidebar-chat-date-hint-me{color:#fff9}@media (prefers-color-scheme:dark){.sidebar{background:#1c1c1e;border-right-color:#3a3a3c}.sidebar-divider{background:#ffffff14}.sidebar-family-name{color:#fff}.sidebar-invite{color:#aeaeb2}.sidebar-label{color:#636366}.sidebar-member-bubble-name{color:#aeaeb2}.sidebar-member-relationship{color:#636366}.sidebar-member-bubble.active .sidebar-member-avatar{box-shadow:0 0 0 3px #1c1c1e,0 0 0 5px #1a8fa8}.sidebar-member-panel{background:#2c2c2e;box-shadow:none}.sidebar-member-panel-name{color:#636366}.sidebar-current-user-name{color:#fff}.sidebar-current-user-role{color:#636366}.sidebar-task-title{color:#fff}.sidebar-task-sub{color:#8e8e93}.sidebar-task-add{background:#ffffff0f;color:#636366}.sidebar-task-add:hover{background:#ffffff1a;color:#aeaeb2}.sidebar-task-card:hover{background:#ffffff0f}.sidebar-section:has(.sidebar-group-row:hover) .sidebar-group-action-btn,.sidebar-section:has(.sidebar-task-card:hover) .sidebar-task-add{background:#2c2c2e;color:#3a3a3c}.sidebar-group-row:hover{background:#ffffff0f}.sidebar-group-name{color:#fff}.sidebar-group-meta{color:#636366}.sidebar-group-action-btn{background:#ffffff0f;color:#636366}.sidebar-group-action-btn:hover{background:#ffffff1a;color:#aeaeb2}.sidebar-group-input{background:#2c2c2e;border-color:#ffffff1f;color:#fff}.sidebar-group-btn-cancel{background:#2c2c2e;border-color:#ffffff1f;color:#aeaeb2}.sidebar-group-invite{background:#f48c0614}.sidebar-group-invite-name{color:#fff}.sidebar-pending-item{background:#f48c0614}.sidebar-pending-title{color:#fff}.sidebar-pending-meta{color:#aeaeb2}.sidebar-pending-task{background:#007aff1a}.sidebar-pending-notif{background:#ff9f0a14}.sidebar-pending-accepted{background:#34c75914}.sidebar-pending-subtask-title{background:#0000004d;color:#fff}.sidebar-pending-counter input{background:#2c2c2e;border-color:#007aff66;color:#fff}.sidebar-pending-counter-cancel{background:#3a3a3c;color:#aeaeb2}.sidebar-pending-counter-btn{background:#3a3a3c;color:#fff}.sidebar-notif-item.read:hover{background:#ffffff0a}.sidebar-notif-title{color:#fff}.sidebar-notif-item.read .sidebar-notif-title{color:#aeaeb2}.sidebar-notif-text{color:#8e8e93}.sidebar-profile:hover{background:#ffffff0f}.sidebar-profile-name{color:#fff}.sidebar-profile-role{color:#636366}.sidebar-logout{background:#2c2c2e;box-shadow:none;color:#8e8e93}.sidebar-logout:hover{color:#ff453a}.sidebar-gear{background:#2c2c2e;box-shadow:none}.sidebar-gear:hover{box-shadow:0 2px 8px #0006}.sidebar-chat-bubble{background:#3a3a3c;color:#fff}.sidebar-chat-input{background:#2c2c2e;border-color:#ffffff1f;color:#fff}.sidebar-task-badge-pending{background:#f59e0b26}}.avatar-img{display:block;object-fit:cover}.avatar-initials{letter-spacing:-.5px;-webkit-user-select:none;user-select:none}.calendar-toolbar{background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:8px;padding:8px 10px 4px}.calendar-toolbar-search-wrap{align-items:center;display:flex;position:relative}.calendar-toolbar-search-icon{font-size:13px;left:10px;pointer-events:none;position:absolute}.calendar-toolbar-search{background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none;padding:7px 32px;transition:border-color .15s;width:100%}.calendar-toolbar-search:focus{background:#fff;border-color:#1a8fa8}.calendar-toolbar-clear{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;line-height:1;padding:0 2px;position:absolute;right:10px}.calendar-toolbar-clear:hover{color:#374151}.calendar-toolbar-chips{display:flex;flex-wrap:wrap;gap:6px}.calendar-toolbar-chip{background:#f3f4f6;border:1px solid #d1d5db;border-radius:20px;color:#374151;cursor:pointer;font-size:12px;padding:4px 10px;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.calendar-toolbar-chip:hover{background:#e5e7eb}.calendar-toolbar-chip-active{background:#1a8fa8;border-color:#1a8fa8;color:#fff}@media (prefers-color-scheme:dark){.calendar-toolbar{background:#1c1c1e;border-bottom-color:#3a3a3c}.calendar-toolbar-search{background:#2c2c2e;border-color:#3a3a3c;color:#fff}.calendar-toolbar-search::placeholder{color:#636366}.calendar-toolbar-search:focus{background:#2c2c2e}.calendar-toolbar-chip{background:#2c2c2e;border-color:#3a3a3c;color:#aeaeb2}.calendar-toolbar-chip:hover{background:#3a3a3c}.calendar-toolbar-clear{color:#636366}.calendar-toolbar-clear:hover{color:#aeaeb2}}.calendar-view{display:flex;flex-direction:column;height:100%;padding:0}.fc{flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:0;padding:10px}.fc-button-primary{background-color:#007bff!important;border-color:#007bff!important}.fc-button-primary:hover{background-color:#0056b3!important;border-color:#0056b3!important}.fc-today-button{background-color:#28a745!important;border-color:#28a745!important}.fc-event{border-radius:4px;cursor:pointer;padding:2px 4px}.fc-event-custom{cursor:pointer;overflow:hidden;padding:1px 3px;width:100%}.fc-event-main-row{align-items:center;display:flex;gap:3px;overflow:hidden}.fc-event-time-custom{flex-shrink:0;font-size:10px;font-weight:600;opacity:.9;white-space:nowrap}.fc-event-title-custom{font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-event-avatars{display:flex;gap:2px;margin-top:2px}.fc-event-avatar{align-items:center;border:1.5px solid #ffffffb3;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:7px;font-weight:700;height:15px;justify-content:center;letter-spacing:-.5px;width:15px}.fc-event-avatar-more{background:#00000040!important;font-size:8px;letter-spacing:0}.fc-event-busy{cursor:default!important;opacity:.75}@media (prefers-color-scheme:dark){.calendar-view{background:#1c1c1e}.fc{color:#fff}.fc-theme-standard .fc-scrollgrid,.fc-theme-standard td,.fc-theme-standard th{border-color:#3a3a3c}.fc .fc-daygrid-day{background:#1c1c1e}.fc .fc-daygrid-day.fc-day-today{background:#1a8fa81f}.fc .fc-col-header-cell{background:#1c1c1e;color:#aeaeb2}.fc .fc-daygrid-day-number{color:#aeaeb2}.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{color:#1a8fa8}.fc .fc-daygrid-day:hover{background:#ffffff08}.fc .fc-toolbar-title{color:#fff}.fc .fc-button{background:#2c2c2e;border-color:#3a3a3c;color:#fff}.fc .fc-button:hover{background:#3a3a3c}.fc .fc-button-primary:not(:disabled).fc-button-active{background:#1a8fa8;border-color:#1a8fa8}.fc .fc-more-link{color:#1a8fa8}.fc .fc-timegrid-slot{border-color:#3a3a3c}.fc .fc-timegrid-axis{color:#636366}.fc .fc-list-day-cushion{background:#2c2c2e}.fc .fc-list-event:hover td{background:#ffffff0a}}.event-details-panel{background:#f2f2f7;border-left:1px solid #e0e0e5;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;height:100vh;overflow-y:auto}.event-details-empty{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:12px;justify-content:center}.event-details-empty span{font-size:40px;opacity:.3}.event-details-empty p{color:#aeaeb2;font-size:13px;text-align:center}.event-details-header{align-items:flex-start;background:#f2f2f7;display:flex;gap:12px;padding:24px 20px 16px}.event-details-color{align-self:stretch;border-radius:2px;flex-shrink:0;margin-top:5px;min-height:28px;width:4px}.event-details-title{color:#1d1d1f;font-size:20px;font-weight:700;letter-spacing:-.4px;line-height:1.25}.event-details-card{background:#0000}.event-details-row{align-items:center;display:flex;gap:14px;padding:10px 20px}.event-details-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:20px}.event-details-icon svg{color:#aeaeb2;height:16px;width:16px}.event-details-value{color:#1d1d1f;font-size:14px;font-weight:500;line-height:1.4}.event-details-time{color:#6e6e73;font-size:13px;margin-top:2px}.event-details-link{color:var(--btn-color);font-size:14px;font-weight:500;text-decoration:none}.event-details-link:hover{text-decoration:underline}.event-details-attendees{display:flex;flex-wrap:wrap;gap:12px}.event-details-attendee{align-items:center;display:flex;flex-direction:column;gap:4px}.event-details-attendee-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:34px;justify-content:center;width:34px}.event-details-attendee-name{color:#6e6e73;font-size:10px;font-weight:500;text-align:center}.event-details-tasks{display:flex;flex:1 1;flex-direction:column;gap:0}.event-details-task{align-items:center;display:flex;gap:10px;padding:8px 20px}.event-details-task-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:10px;font-weight:700;height:30px;justify-content:center;width:30px}.event-details-task-info{flex:1 1;min-width:0}.event-details-task-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.event-details-task-title{color:#1d1d1f;font-size:13px;font-weight:600}.event-details-task-badge{border-radius:10px;font-size:9px;font-weight:700;letter-spacing:.6px;padding:2px 6px;text-transform:uppercase}.event-details-task-badge.pending{background:#fff3cd;color:#856404}.event-details-task-badge.declined{background:#ffeeed;color:#ff3b30}.event-details-task-badge.countered{background:#e8f4fd;color:#007aff}.event-details-task-counter{color:#007aff;font-size:11px;font-style:italic;margin-top:2px}.event-details-task-counter.declined{color:#ff3b30;font-size:11px;font-style:normal;margin-top:2px}.event-details-task-timeslot{display:flex;flex-direction:column;gap:5px;margin-top:8px}.event-details-task-timeslot-label{color:#aeaeb2;font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.event-details-task-attr{align-items:center;color:#aeaeb2;display:flex;gap:4px;margin-top:4px}.event-details-task-attr-label{color:#aeaeb2;font-size:11px}.event-details-task-attr-value{font-feature-settings:"tnum";color:#1d1d1f;font-size:11px;font-variant-numeric:tabular-nums;font-weight:600}.event-details-task-attr-unset{color:#c7c7cc;font-size:11px;font-style:italic;font-weight:400}.event-details-task-negotiation{margin-bottom:3px;margin-top:5px}.event-details-task-negotiation-bubble{background:#e8f4fd;border:1px solid #007aff33;border-radius:8px;display:inline-flex;flex-wrap:wrap;gap:4px;max-width:100%;padding:4px 8px}.event-details-task-negotiation-who{color:#007aff;flex-shrink:0;font-size:11px;font-weight:700}.event-details-task-negotiation-text{color:#1d1d1f;font-size:11px;font-style:italic}.event-details-task-negotiation-turn{color:#aeaeb2;font-size:10px;font-style:italic;margin-top:3px}.event-details-task-meta{color:#aeaeb2;font-size:11px;margin-top:1px;text-transform:capitalize}.event-details-task-delete{background:none;border:none;color:#c7c7cc;cursor:pointer;flex-shrink:0;font-size:12px;line-height:1;padding:4px;transition:color .15s ease}.event-details-task-delete:hover{color:#ff3b30}.event-details-subtasks{display:flex;flex-direction:column;gap:3px;margin-top:5px}.event-details-subtask{align-items:center;display:flex;gap:6px;justify-content:space-between}.event-details-subtask span{color:#aeaeb2;font-size:11px}.event-details-subtask-delete{background:none;border:none;color:#d0d0d5;cursor:pointer;font-size:10px;padding:2px;transition:color .15s ease}.event-details-subtask-delete:hover{color:#ff3b30}.event-details-subtask-add{margin-top:6px}.event-details-subtask-add input{background:none;border:none;border-bottom:1px dashed #d0d0d5;box-sizing:border-box;color:#6e6e73;font-family:inherit;font-size:11px;outline:none;padding:2px 0;transition:border-color .2s ease;width:100%}.event-details-subtask-add input:focus{border-bottom-color:var(--btn-color);color:#1d1d1f}.event-details-subtask-add input::placeholder{color:#c7c7cc}.event-details-actions{display:flex;gap:10px;margin-top:auto;padding:8px 16px 24px}.event-action-btn{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-family:inherit;font-size:14px;font-weight:600;padding:12px;transition:all .15s ease}.event-action-btn.edit{background:#fff;color:#1d1d1f}.event-action-btn.edit:hover{background:#e8e8ed}.event-action-btn.delete{background:#fff;color:#ff3b30}.event-action-btn.delete:hover{background:#ff3b3014}.event-details-divider{display:none}@media (prefers-color-scheme:dark){.event-details-panel{background:#1c1c1e;border-left-color:#3a3a3c}.event-details-header{background:#1c1c1e}.event-details-title{color:#fff}.event-details-icon svg{color:#636366}.event-details-value{color:#fff}.event-details-attendee-name,.event-details-time{color:#aeaeb2}.event-details-task-title{color:#fff}.event-details-task-badge.pending{background:#85640440;color:#ffd60a}.event-details-task-badge.declined{background:#ff3b3026}.event-details-task-badge.countered{background:#007aff26}.event-details-task-negotiation-bubble{background:#007aff1f;border-color:#007aff40}.event-details-task-attr-value,.event-details-task-negotiation-text{color:#fff}.event-details-subtask span{color:#8e8e93}.event-details-subtask-add input{border-bottom-color:#3a3a3c;color:#aeaeb2}.event-details-subtask-add input:focus{color:#fff}.event-details-subtask-add input::placeholder{color:#3a3a3c}.event-action-btn.edit{background:#2c2c2e;color:#fff}.event-action-btn.edit:hover{background:#3a3a3c}.event-action-btn.delete{background:#2c2c2e}.event-action-btn.delete:hover{background:#ff3b301f}}.dashboard{background:#f5f5f7;background:var(--bg,#f5f5f7);display:grid;grid-template-columns:240px 1fr 300px;height:100vh;overflow:hidden}.calendar-container{background:#fff;background:var(--card,#fff);border-left:1px solid #e0e0e5;border-left:1px solid var(--border,#e0e0e5);border-right:1px solid #e0e0e5;border-right:1px solid var(--border,#e0e0e5);overflow:hidden}.member-page{background:#f5f5f7;min-height:100vh}.member-header{background:#fff;border-bottom:1px solid #e0e0e5;padding:24px 32px 0}button.member-back{background:none;border:none;box-shadow:none;color:var(--btn-color);cursor:pointer;font-family:inherit;font-size:14px;margin-bottom:20px;padding:0}button.member-back:hover{background:none;box-shadow:none;text-decoration:underline}.member-hero{align-items:center;display:flex;gap:16px;margin-bottom:24px}.member-hero-avatar{border-radius:50%;flex-shrink:0;height:64px;object-fit:cover;width:64px}.member-hero-info h1{color:#1d1d1f;font-size:22px;font-weight:700;letter-spacing:-.5px}.member-hero-info p{color:#aeaeb2;font-size:13px;margin-top:2px;text-transform:capitalize}.member-tabs{display:flex;gap:0}.member-tab{background:none;border:none;border-bottom:2px solid #0000;color:#6e6e73;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease}.member-tab.active{border-bottom-color:var(--btn-color);color:var(--btn-color)}.member-content{margin:0 auto;max-width:800px;padding:24px 32px}.member-loading{color:#aeaeb2;font-size:14px}.member-personal,.member-settings{animation:member-fade-in .18s ease}@keyframes member-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.member-personal{display:flex;flex-direction:column;gap:20px}.member-card{background:#fff;border:1px solid #e0e0e5;border-radius:16px;padding:20px}.member-card-title{color:#1d1d1f;font-size:15px;font-weight:700;margin-bottom:16px}.member-empty{color:#aeaeb2;font-size:13px}.member-event{align-items:center;border-bottom:1px solid #f0f0f5;display:flex;gap:12px;padding:10px 0}.member-event:last-child{border-bottom:none}.member-event-color{border-radius:4px;flex-shrink:0;height:40px;width:4px}.member-event-info{flex:1 1}.member-event-title{color:#1d1d1f;font-size:14px;font-weight:600}.member-event-date{color:#6e6e73;font-size:12px;margin-top:2px}.member-event-location{color:#aeaeb2;font-size:12px;margin-top:2px}.member-event-priority{border-radius:20px;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.member-event-priority.high{background:#fff0f0;color:#ff3b30}.member-event-priority.medium{background:#fff8e6;color:#f48c06}.member-event-priority.low{background:#f0fff4;color:#34c759}.member-task{align-items:center;border-bottom:1px solid #f0f0f5;display:flex;gap:12px;padding:10px 0}.member-task:last-child{border-bottom:none}.member-task-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.member-task-info{flex:1 1}.member-task-title{color:#1d1d1f;font-size:14px;font-weight:600}.member-task-event{color:#6e6e73;font-size:12px;margin-top:2px}.member-task-date{color:#aeaeb2;font-size:12px;margin-top:2px}.member-task-position{background:#f0f0f5;border-radius:20px;color:#6e6e73;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.member-settings{display:flex;flex-direction:column;gap:20px}.member-settings-hint{color:#aeaeb2;font-size:12px;margin-bottom:16px}.member-colors{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.member-color-dot{border:3px solid #0000;border-radius:50%;cursor:pointer;height:32px;transition:all .2s ease;width:32px}.member-color-dot:hover{transform:scale(1.15)}.member-color-dot.selected{border-color:#1d1d1f;transform:scale(1.15)}.member-settings-field{margin-bottom:14px}.member-settings-field label{color:#6e6e73;display:block;font-size:11px;font-weight:600;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.member-settings-field input{background:#f5f5f7;border:1.5px solid #0000;border-radius:10px;box-sizing:border-box;color:#1d1d1f;font-family:inherit;font-size:14px;outline:none;padding:11px 14px;transition:all .2s ease;width:100%}.member-settings-field input:focus{background:#fff;border-color:var(--btn-color);box-shadow:0 0 0 4px #1a8fa81a}.member-error{color:#ff3b30;font-size:13px;margin-bottom:8px}.member-circle-picker{display:flex;gap:8px;margin-bottom:12px}.member-circle-option{background:#f2f2f7;border:1.5px solid #e0e0e5;border-radius:10px;color:#6e6e73;cursor:pointer;flex:1 1;font-family:inherit;font-size:12px;font-weight:600;padding:8px 4px;transition:all .15s}.member-circle-option.active,.member-circle-option:hover:not(:disabled){border-color:#1a8fa8;color:#1a8fa8}.member-circle-option.active{background:#e8f8f0}.member-circle-option:disabled{cursor:default;opacity:.7}.member-hero--skeleton{margin-bottom:32px}.member-skeleton{animation:member-shimmer 1.4s infinite;background:linear-gradient(90deg,#e8e8ed 25%,#f2f2f7 50%,#e8e8ed 75%);background-size:200% 100%;border-radius:8px}.member-skeleton--avatar{border-radius:50%;flex-shrink:0;height:64px;width:64px}.member-skeleton--name{height:22px;margin-bottom:8px;width:160px}.member-skeleton--role{height:14px;width:80px}@keyframes member-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.member-photo-row{align-items:center;display:flex;gap:16px;margin-bottom:16px}.member-photo-preview{border-radius:50%;flex-shrink:0;height:64px;object-fit:cover;width:64px}.member-photo-pick{background:#f5f5f7;border:1.5px solid #e0e0e5;border-radius:10px;color:#1d1d1f;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.member-photo-pick:hover{background:#fff;border-color:var(--btn-color);box-shadow:none;color:var(--btn-color)}.member-card--danger{background:snow;border-color:#ffcdd2}.member-delete-btn{background:#0000;border:1.5px solid #ff3b30;border-radius:10px;color:#ff3b30;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:9px 18px;transition:all .15s}.member-delete-btn:hover:not(:disabled){background:#ff3b30;color:#fff}.member-delete-btn:disabled{cursor:default;opacity:.5}.member-delete-confirm{display:flex;flex-direction:column;gap:10px}.member-delete-confirm-text{color:#ff3b30;font-size:13px;font-weight:600}.member-delete-confirm-row{align-items:center;display:flex;gap:10px}.member-delete-cancel{background:none;border:none;color:#6e6e73;cursor:pointer;font-family:inherit;font-size:13px;padding:0}.member-delete-cancel:hover{background:none;box-shadow:none;text-decoration:underline}@media (prefers-color-scheme:dark){.member-page{background:#000}.member-header{background:#1c1c1e;border-bottom-color:#3a3a3c}.member-hero-info h1{color:#fff}.member-hero-info p,.member-tab{color:#636366}.member-card{background:#1c1c1e;border-color:#3a3a3c}.member-card-title{color:#fff}.member-event{border-bottom-color:#2c2c2e}.member-event-title{color:#fff}.member-event-date{color:#aeaeb2}.member-task{border-bottom-color:#2c2c2e}.member-task-title{color:#fff}.member-task-event{color:#aeaeb2}.member-task-position{background:#2c2c2e;color:#aeaeb2}.member-settings-field label{color:#636366}.member-settings-field input{background:#2c2c2e;color:#fff}.member-settings-field input:focus{background:#3a3a3c}.member-circle-option{background:#2c2c2e;border-color:#3a3a3c;color:#aeaeb2}.member-circle-option.active{background:#1a8fa826}.member-photo-pick{background:#2c2c2e;border-color:#3a3a3c;color:#fff}.member-photo-pick:hover{background:#3a3a3c}.member-card--danger{background:#ff3b300a;border-color:#ff3b3033}.member-skeleton{background:linear-gradient(90deg,#2c2c2e 25%,#3a3a3c 50%,#2c2c2e 75%);background-size:200% 100%}.member-color-dot.selected{border-color:#fff}}.group-page{background:#f5f5f7;min-height:100vh}.group-header{background:#fff;border-bottom:1px solid #e0e0e5;padding:24px 32px}button.group-back{background:none;border:none;box-shadow:none;color:var(--btn-color);cursor:pointer;font-family:inherit;font-size:14px;margin-bottom:20px;padding:0}button.group-back:hover{background:none;box-shadow:none;text-decoration:underline}.group-hero{gap:16px}.group-hero,.group-hero-icon{align-items:center;display:flex}.group-hero-icon{background:#1a8fa8;border-radius:16px;color:#fff;flex-shrink:0;font-size:24px;font-weight:700;height:56px;justify-content:center;width:56px}.group-hero-info h1{color:#1d1d1f;font-size:22px;font-weight:700;letter-spacing:-.5px}.group-hero-info p{color:#aeaeb2;font-size:13px;margin-top:4px}.group-admin-badge{background:#e8f8f0;border-radius:6px;color:#1a8fa8;font-size:10px;font-weight:700;letter-spacing:.5px;margin-left:8px;padding:2px 7px;text-transform:uppercase;vertical-align:middle}.group-content{margin:0 auto;max-width:800px;padding:24px 32px}.group-error,.group-loading{color:#aeaeb2;font-size:14px}.group-error{color:#ff3b30}.group-empty{padding:48px 0;text-align:center}.group-empty p{color:#6e6e73;font-size:15px}.group-empty-hint{color:#aeaeb2;font-size:13px;margin-top:6px}.group-events{animation:group-fade-in .18s ease;background:#fff;border:1px solid #e0e0e5;border-radius:16px;overflow:hidden}@keyframes group-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.group-event{align-items:flex-start;border-bottom:1px solid #f0f0f5;display:flex;gap:12px;padding:14px 20px}.group-event:last-child{border-bottom:none}.group-event-color{border-radius:4px;flex-shrink:0;margin-top:2px;min-height:40px;width:4px}.group-event-info{flex:1 1}.group-event-title{color:#1d1d1f;font-size:14px;font-weight:600}.group-event-date{color:#6e6e73;font-size:12px;margin-top:2px}.group-event-location{color:#aeaeb2;font-size:12px;margin-top:2px}.group-event-desc{color:#aeaeb2;font-size:12px;margin-top:4px}.group-event-priority{border-radius:20px;flex-shrink:0;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.group-event-priority.high{background:#fff0f0;color:#ff3b30}.group-event-priority.medium{background:#fff8e6;color:#f48c06}.group-event-priority.low{background:#f0fff4;color:#34c759}.group-hero-icon--skeleton,.group-skeleton{animation:group-shimmer 1.4s infinite;background:linear-gradient(90deg,#e8e8ed 25%,#f2f2f7 50%,#e8e8ed 75%);background-size:200% 100%}.group-skeleton{border-radius:8px}.group-skeleton--name{height:22px;margin-bottom:8px;width:160px}.group-skeleton--meta{height:14px;width:200px}@keyframes group-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-color-scheme:dark){.group-page{background:#000}.group-header{background:#1c1c1e;border-bottom-color:#3a3a3c}.group-hero-info h1{color:#fff}.group-hero-info p{color:#636366}.group-events{background:#1c1c1e;border-color:#3a3a3c}.group-event{border-bottom-color:#2c2c2e}.group-event-title{color:#fff}.group-event-date{color:#aeaeb2}.group-hero-icon--skeleton,.group-skeleton{background:linear-gradient(90deg,#2c2c2e 25%,#3a3a3c 50%,#2c2c2e 75%);background-size:200% 100%}}.auth-page{align-items:center;background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f14,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe14,#0000),#f5f5f7;display:flex;justify-content:center;min-height:100vh}.auth-container{background:#fff;border-radius:24px;box-shadow:0 2px 8px #0000000a,0 8px 32px #0000000f,0 24px 64px #00000014;max-width:460px;padding:60px 50px;width:100%}.auth-container h2{color:#1d1d1f;font-size:24px;font-weight:700;letter-spacing:-.5px;margin-bottom:10px;text-align:center}.auth-subtitle{color:#6e6e73;font-size:14px;line-height:1.5;margin-bottom:28px;text-align:center}.auth-back-link{color:#1a8fa8;display:block;font-size:13px;margin-top:20px;text-align:center;text-decoration:none}.auth-back-link:hover{text-decoration:underline}.error-message{background:#e85d040d;border:1px solid #e85d0433;border-radius:10px;color:#e85d04;font-size:13px;margin-bottom:16px;padding:12px;text-align:center}@media (prefers-color-scheme:dark){.auth-page{background:radial-gradient(ellipse 60% 40% at 20% 20%,#56e39f0f,#0000),radial-gradient(ellipse 60% 40% at 80% 80%,#4facfe0f,#0000),#000}.auth-container{background:#1c1c1e;box-shadow:0 2px 8px #0000004d,0 8px 32px #0006}.auth-container h2{color:#fff}.auth-subtitle{color:#aeaeb2}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.48b99078.css.map*/