@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600&display=swap";.app-layout{display:flex;flex-direction:column;height:100vh;background:var(--color-bg)}.app-nav{display:flex;align-items:center;gap:1.5rem;padding:0 1.5rem;height:56px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.nav-brand{font-weight:600;font-size:1.125rem;background:linear-gradient(135deg,var(--color-text) 0%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none;cursor:pointer}.nav-links{display:flex;gap:.25rem}.nav-links a{position:relative;padding:.5rem 1rem;border-radius:6px;color:var(--color-text-muted);text-decoration:none;font-size:.9375rem;font-weight:500;transition:all .15s}.nav-badge{position:absolute;top:2px;right:2px;min-width:1.1rem;height:1.1rem;padding:0 .3rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;line-height:1.1rem;text-align:center;pointer-events:none}.nav-links a:hover{color:var(--color-text);background:var(--color-bg)}.nav-links a.active{color:var(--color-primary);background:#6366f11a}.nav-spacer{flex:1}.nav-status{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--color-text-muted)}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.offline{background:#f59e0b}.status-dot.online{background:#22c55e}.status-dot.syncing{background:var(--color-primary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.app-main{flex:1;overflow:hidden}.org-switcher{position:relative}.org-switcher-trigger{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .15s;font-size:.875rem;color:var(--color-text)}.org-switcher-trigger:hover{border-color:var(--color-primary)}.org-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.org-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-chevron{font-size:.625rem;color:var(--color-text-muted)}.sync-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sync-indicator.connecting{animation:pulse 1.5s ease-in-out infinite}.sync-indicator.syncing{box-shadow:0 0 6px currentColor}.org-switcher-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 10px 40px #0000004d;z-index:100;overflow:hidden}.org-list{max-height:200px;overflow-y:auto;padding:.25rem}.org-option{display:flex;align-items:center;gap:.625rem;width:100%;padding:.625rem .75rem;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--color-text);text-align:left;transition:background .1s}.org-option:hover{background:var(--color-bg)}.org-option.active{background:#6366f11a}.org-option-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-sync-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;background:#6366f133;color:var(--color-primary);border-radius:3px}.org-actions{border-top:1px solid var(--color-border);padding:.25rem}.org-action{display:block;width:100%;padding:.625rem .75rem;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--color-primary);text-align:left;font-size:.875rem;transition:background .1s}.org-action:hover{background:var(--color-bg)}.global-search{position:relative}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;min-width:200px}.search-input-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.search-icon{font-size:.875rem;opacity:.6}.search-input{flex:1;border:none;background:transparent;color:var(--color-text);font-size:.875rem;outline:none}.search-input::placeholder{color:var(--color-text-muted)}.search-shortcut{font-family:var(--font-mono);font-size:.6875rem;padding:.125rem .375rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-muted)}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;min-width:300px;max-height:400px;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 10px 40px #0000004d;z-index:100}.search-no-results{padding:1rem;text-align:center;color:var(--color-text-muted);font-size:.875rem}.search-result{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;text-align:left;cursor:pointer;transition:background .1s;color:var(--color-text)}.search-result:hover{background:var(--color-bg)}.search-result:first-child{border-radius:12px 12px 0 0}.search-result:last-child{border-radius:0 0 12px 12px}.search-result:only-child{border-radius:12px}.result-icon{font-size:1.25rem}.result-content{flex:1;min-width:0}.result-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-subtitle{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-type{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:.125rem .375rem;background:var(--color-bg);border-radius:4px}@media(max-width:768px){.app-nav{padding:0 1rem;gap:.75rem}.nav-brand{font-size:1rem}.nav-links{gap:0}.nav-links a{padding:.5rem .625rem;font-size:.8125rem}.global-search,.org-switcher-trigger .org-name{display:none}.org-switcher-trigger{padding:.375rem}.org-switcher-dropdown{right:0}}@media(max-width:480px){.nav-links a{padding:.375rem .5rem;font-size:.75rem}.app-nav{height:48px}}.offline-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:#f59e0b;color:#1a1a2e;font-size:.875rem;font-weight:500}.offline-icon{font-size:1rem}.reminder-toast-container{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.75rem;max-width:380px;pointer-events:none}.reminder-toast-container>*{pointer-events:auto}.reminder-toast-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 10px 40px #0003;padding:1rem 1.25rem;animation:reminder-toast-in .25s ease-out}@keyframes reminder-toast-in{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}.reminder-toast-content{display:flex;gap:.75rem;margin-bottom:.75rem}.reminder-toast-icon{font-size:1.5rem;flex-shrink:0}.reminder-toast-text{display:flex;flex-direction:column;gap:.25rem;min-width:0}.reminder-toast-title{font-size:1rem;color:var(--color-text)}.reminder-toast-body{font-size:.875rem;color:var(--color-text-muted)}.reminder-toast-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.reminder-toast-link{font-size:.875rem;color:var(--color-primary);text-decoration:none;font-weight:500}.reminder-toast-link:hover{text-decoration:underline}.reminder-toast-dropdown{position:relative}.reminder-toast-snooze-btn{padding:.375rem .75rem;font-size:.875rem;background:var(--color-secondary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer}.reminder-toast-snooze-btn:hover{background:var(--color-secondary-hover)}.reminder-toast-backdrop{position:fixed;inset:0;z-index:-1}.reminder-toast-snooze-menu{position:absolute;top:100%;right:0;margin-top:.25rem;padding:.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;list-style:none;min-width:140px;z-index:1}.reminder-toast-snooze-option{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;text-align:left;background:none;border:none;border-radius:4px;color:var(--color-text);cursor:pointer}.reminder-toast-snooze-option:hover{background:var(--color-secondary-hover)}.disclaimer-banner{margin-top:1.5rem;padding:.75rem 1rem;border-radius:8px;background:var(--color-bg-elevated, rgba(0, 0, 0, .06));border:1px solid var(--color-border)}.disclaimer-banner-text{margin:0;font-size:.8125rem;line-height:1.4;color:var(--color-text-muted)}@media(prefers-color-scheme:dark){.disclaimer-banner{background:#ffffff0f}}.toggle-switch{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-switch.toggle-disabled{opacity:.5;cursor:not-allowed}.toggle-track{position:relative;width:2.75rem;height:1.5rem;flex-shrink:0}.toggle-track input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background:var(--color-bg-tertiary, #555);border-radius:1rem;transition:background .2s}.toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:1.125rem;height:1.125rem;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0000004d}.toggle-track input:checked+.toggle-slider{background:var(--color-primary, #6366f1)}.toggle-track input:checked+.toggle-slider:before{transform:translate(1.25rem)}.toggle-track input:focus-visible+.toggle-slider{outline:2px solid var(--color-primary, #6366f1);outline-offset:2px}.toggle-label{font-size:.9375rem;color:var(--color-text, #e0e0e0)}.calendar-grid{height:100%;display:flex;flex-direction:column;padding:1rem;min-width:0;overflow:hidden}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.calendar-header h2{font-size:1.25rem;font-weight:600;margin:0}.calendar-nav{display:flex;gap:.5rem}.calendar-nav button{padding:.375rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer;font-size:.875rem}.calendar-nav button:hover{background:var(--color-secondary-hover)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin-bottom:.5rem}.weekday{text-align:center;font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:.5rem 0}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;flex:1;background:var(--color-border);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.calendar-day{background:var(--color-bg);padding:.5rem;min-height:100px;min-width:0;overflow:hidden;cursor:pointer;transition:background .15s}.calendar-day:hover{background:var(--color-surface)}.calendar-day.empty{background:var(--color-surface);cursor:default}.calendar-day.today .day-number{background:var(--color-primary);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.calendar-day.selected{background:#6366f11a}.day-number{font-size:.875rem;font-weight:500;margin-bottom:.25rem}.day-events{display:flex;flex-direction:column;gap:2px}.day-event{font-size:.6875rem;padding:2px 4px;background:var(--color-primary);color:#fff;border-radius:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;cursor:pointer}.day-event:hover{background:var(--color-primary-hover)}.day-event-more{font-size:.625rem;color:var(--color-text-muted);padding:2px 4px}.event-form{padding:1.5rem;max-width:500px}.event-form h2{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.event-form .form-group{margin-bottom:1rem}.event-form .form-group label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text)}.event-form .form-row,.event-form .form-row-times{display:flex;gap:1rem;margin-bottom:1rem}.event-form .form-row .form-group,.event-form .form-row-times .form-group{flex:1;margin-bottom:0}.event-form input[type=date],.event-form input[type=time],.event-form .event-form-select{width:100%;padding:.5rem .75rem;font-size:.875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text)}.event-form .event-form-select{cursor:pointer;appearance:auto}.event-form .form-group-end-time{margin-bottom:0;padding:.375rem 0;font-size:.875rem;color:var(--color-text-muted)}.event-form .end-time-label{margin-right:.5rem}.event-form .end-time-value{font-weight:500;color:var(--color-text)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9375rem}.checkbox-label.small{font-size:.8125rem}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.reminder-options{display:flex;flex-wrap:wrap;gap:.75rem}.form-group-reminder .dropdown-wrap,.contact-combobox{position:relative}.dropdown-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .75rem;font-size:.875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer;text-align:left}.dropdown-trigger:hover{border-color:var(--color-primary)}.dropdown-trigger-text{flex:1}.dropdown-trigger-icon{font-size:.625rem;opacity:.7;margin-left:.5rem}.dropdown-panel{position:absolute;z-index:50;top:100%;left:0;right:0;margin-top:2px;max-height:220px;overflow-y:auto;list-style:none;padding:.25rem 0;margin-bottom:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 12px #00000026}.dropdown-panel .dropdown-option{display:flex;align-items:center;width:100%;padding:.5rem .75rem;font-size:.875rem;background:none;border:none;color:var(--color-text);cursor:pointer;text-align:left}.dropdown-panel .dropdown-option:hover{background:var(--color-secondary-hover)}.dropdown-panel .dropdown-option.empty{color:var(--color-text-muted);cursor:default}.dropdown-option-check{display:inline-block;width:1.25rem;margin-right:.5rem;font-size:.875rem;color:var(--color-primary)}.reminder-chips{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.reminder-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.8125rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px}.reminder-chip-remove{padding:0 .125rem;font-size:1rem;line-height:1;background:none;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:2px}.reminder-chip-remove:hover{color:var(--color-text);background:#00000014}.contact-combobox .combobox-input{margin-bottom:0}.contact-dropdown{margin-top:2px}.dropdown-option-meta{color:var(--color-text-muted);font-size:.8125rem}.contact-chips .contact-chip{display:inline-flex;align-items:center;gap:.375rem;padding-right:.375rem;background:var(--color-primary);border-color:var(--color-primary);color:#fff}.contact-chip-remove{padding:0 .125rem;font-size:1.125rem;line-height:1;background:none;border:none;color:inherit;opacity:.8;cursor:pointer;border-radius:2px}.contact-chip-remove:hover{opacity:1;background:#fff3}.contact-picker.contact-chips{margin-top:.5rem}.contact-picker{display:flex;flex-wrap:wrap;gap:.5rem}.contact-option{display:flex;align-items:center;gap:.375rem;cursor:pointer}.contact-option input{display:none}.contact-chip{padding:.375rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;font-size:.8125rem;transition:all .15s}.contact-option input:checked+.contact-chip{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.event-form-attendees .attendees-label{display:inline-flex;align-items:center;gap:.375rem}.event-form-attendees .attendees-label-icon{font-size:1rem}.event-form-attendees .attendees-hint{margin-top:.25rem;margin-bottom:.5rem}.contact-picker-empty{padding:1rem;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:8px;text-align:center}.contact-picker-empty p{margin:0 0 .75rem;font-size:.875rem;color:var(--color-text-muted)}.contact-picker-empty-hint{margin-top:.5rem!important;font-size:.8125rem!important}.attendee-search{width:100%;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text)}.attendee-search::placeholder{color:var(--color-text-muted)}.day-event-item-attendees{display:flex;align-items:center;gap:.25rem;margin-top:.25rem;flex-wrap:wrap}.day-event-attendee-avatar{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,#818cf8 100%);display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:600;text-transform:uppercase;color:#fff;flex-shrink:0}.day-event-attendee-count{font-size:.625rem;font-weight:600;color:var(--color-text-muted);padding:0 .25rem}.event-detail{padding:1.5rem}.event-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.event-detail-header h2{font-size:1.5rem;font-weight:600;margin:0}.event-field{margin-bottom:1rem}.event-field-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem}.event-field-value{color:var(--color-text)}.event-when-time{color:var(--color-text-muted);font-size:.9375rem}.text-muted{color:var(--color-text-muted)}.event-detail-email{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.event-detail-email-error{font-size:.8125rem;color:var(--color-danger, #ef4444)}.attendee-list{display:flex;flex-wrap:wrap;gap:.5rem}.attendee-chip{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem .375rem .375rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;font-size:.875rem}.attendee-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,#818cf8 100%);display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600;text-transform:uppercase;color:#fff}.day-events-panel{padding:1rem;border-left:1px solid var(--color-border);background:var(--color-surface);min-width:280px;overflow-y:auto}.day-events-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.day-events-header h3{font-size:1rem;font-weight:600;margin:0}.day-events-list{display:flex;flex-direction:column;gap:.5rem}.day-event-item{padding:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s}.day-event-item:hover{border-color:var(--color-primary)}.day-event-title{font-weight:500;margin-bottom:.25rem}.day-event-time{font-size:.75rem;color:var(--color-text-muted)}.no-events{color:var(--color-text-muted);font-size:.875rem;text-align:center;padding:2rem 0}.calendar-view-toggle{display:flex;gap:.25rem}.calendar-view-toggle button{padding:.35rem .6rem;font-size:.8125rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);cursor:pointer}.calendar-view-toggle button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.calendar-week-view{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden;padding:1rem}.calendar-week-header,.calendar-week-body{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px}.calendar-week-day-header{padding:.5rem;text-align:center;border-radius:6px;cursor:pointer;background:var(--color-surface)}.calendar-week-day-header.today{background:var(--color-primary);color:#fff}.week-day-name{display:block;font-size:.7rem;color:var(--color-text-muted)}.calendar-week-day-header.today .week-day-name{color:#ffffffe6}.week-day-num{font-weight:600;font-size:1.125rem}.calendar-week-body{flex:1;min-height:120px}.calendar-week-day-cell{padding:.5rem;border:1px solid var(--color-border);border-radius:0 0 6px 6px;cursor:pointer;min-height:80px;min-width:0;overflow:hidden}.week-event-pill{font-size:.75rem;padding:.2rem .4rem;margin-bottom:.25rem;background:var(--color-primary);color:#fff;border-radius:4px;cursor:pointer;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-word}.week-event-more{font-size:.7rem;color:var(--color-text-muted)}.calendar-day-view{flex:1;padding:1rem;overflow-y:auto;min-width:0}.calendar-day-view-header{font-size:1.125rem;font-weight:600;margin-bottom:1rem}.calendar-day-view-body{max-width:480px}.day-view-event-list{display:flex;flex-direction:column;gap:.5rem}.day-view-event{padding:.75rem;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;background:var(--color-surface)}.day-view-event:hover{border-color:var(--color-primary)}.day-view-event-title{font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-view-event-time{font-size:.8125rem;color:var(--color-text-muted)}.day-view-empty{color:var(--color-text-muted);margin:0}@media(max-width:768px){.calendar-week-header,.calendar-week-body{grid-template-columns:1fr}.calendar-week-header{display:none}.calendar-week-body{gap:0}.calendar-week-day-cell{display:flex;flex-direction:column;gap:.25rem;padding:.625rem .75rem;min-height:auto;border-radius:0;border-left:none;border-right:none;border-top:none}.calendar-week-day-cell:before{content:attr(data-label);display:block;font-weight:600;font-size:.8125rem;margin-bottom:.125rem;color:var(--color-text)}.calendar-week-day-cell.today-cell:before{color:var(--color-primary)}.week-event-pill{display:block;-webkit-line-clamp:unset;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}}.page-layout{display:grid;grid-template-columns:320px 1fr;height:calc(100vh - 56px);background:var(--color-bg)}.mobile-back-btn{display:none}.page-layout.calendar-page{display:flex;grid-template-columns:unset}.calendar-main{flex:1 1 0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.calendar-resize-handle{flex:0 0 6px;cursor:col-resize;background:var(--color-border);transition:background .15s}.calendar-resize-handle:hover,.calendar-resize-handle.resizing{background:var(--color-primary)}.calendar-resize-handle:after{content:"";position:absolute;inset:0 -2px}.calendar-resize-handle{position:relative}.calendar-toolbar{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--color-border)}.calendar-toolbar h2{flex:1;font-size:1.25rem;font-weight:600;margin:0}.calendar-toolbar-actions{display:flex;align-items:center;gap:.5rem}.calendar-toolbar .calendar-view-toggle{margin-right:.5rem}.calendar-sidebar{flex:0 0 auto;background:var(--color-surface);border-left:1px solid var(--color-border);overflow-y:auto}.calendar-email-result{margin:0 1rem .75rem;padding:.5rem .75rem;border-radius:6px;font-size:.875rem}.calendar-email-result.success{background:#22c55e1f;color:#22c55e;border:1px solid rgba(34,197,94,.25)}.calendar-email-result.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.page-sidebar{background:var(--color-surface);overflow:hidden;display:flex;flex-direction:column}.page-content{overflow-y:auto;background:var(--color-bg)}.empty-content{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted)}.past-events-page{grid-template-columns:1fr}.past-events-main{padding:1.5rem;max-width:720px;margin:0 auto}.past-events-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.past-events-header h1{margin:0;font-size:1.5rem}.past-events-toolbar{margin:1rem 0}.past-events-toolbar label{display:block;font-size:.75rem;color:var(--color-text-muted);margin-bottom:.25rem}.past-events-select{padding:.35rem .6rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:inherit}.past-events-list{list-style:none;margin:0;padding:0}.past-events-item{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem 1rem;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border);font-size:.875rem}.past-events-date{color:var(--color-text-muted);white-space:nowrap}.past-events-title{font-weight:500}.past-events-title-wrap{min-width:0;display:flex;flex-direction:column;gap:.15rem}.past-events-contacts,.past-events-time{color:var(--color-text-muted);font-size:.8125rem}.past-events-empty{color:var(--color-text-muted);margin:1rem 0}.activity-log-scroll{max-height:260px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;scrollbar-width:none;-ms-overflow-style:none}.activity-log-scroll::-webkit-scrollbar{display:none}.activity-log-table{width:100%;border-collapse:collapse;font-size:.8125rem;table-layout:fixed}.activity-log-table thead{position:sticky;top:0;z-index:1}.activity-log-table th{text-align:left;padding:.5rem .75rem;background:var(--color-bg-secondary, #2a2a2a);color:var(--color-text-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border)}.activity-log-table td{padding:.375rem .75rem;border-bottom:1px solid var(--color-border);vertical-align:top}.activity-log-table tbody tr:last-child td{border-bottom:none}.activity-log-table tbody tr:hover{background:#ffffff08}.activity-log-table col.col-time,.activity-log-table col.col-event{width:30%}.activity-log-table col.col-detail{width:40%}.activity-log-table .activity-log-time{color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-log-table .activity-log-message{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-log-table .activity-log-detail{color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:var(--color-bg);color:var(--color-text)}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:var(--color-bg);color:var(--color-text);text-align:center;padding:2rem}.error-screen h1{color:#ef4444;margin-bottom:.5rem}.error-screen pre{background:var(--color-surface);padding:1rem;border-radius:8px;font-size:.875rem;color:var(--color-text-muted);margin-top:1rem}.settings-page{height:calc(100vh - 56px);overflow-y:auto;background:var(--color-bg)}.settings-container{max-width:600px;margin:0 auto;padding:2rem 1.5rem}.settings-container h1{font-size:1.75rem;font-weight:600;margin-bottom:.25rem}.settings-header{margin-bottom:2rem}.settings-title-links{margin:0;font-size:.8125rem;color:var(--color-text-muted)}.settings-title-links a{color:var(--color-primary);text-decoration:none}.settings-title-links a:hover{text-decoration:underline}.settings-title-sep{color:var(--color-text-muted);font-weight:400}.settings-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.settings-section h2{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.settings-section .form-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:.5rem}.settings-section .form-row .form-group{margin-bottom:0;flex:0 0 auto;min-width:0}.settings-section .form-row label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text)}.settings-section select,.settings-section input[type=date]{display:block;width:100%;min-width:8rem;padding:.5rem .75rem;font-size:.9375rem;font:inherit;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;appearance:auto;-webkit-appearance:menulist}.settings-section select:focus,.settings-section input[type=date]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #6366f133}.settings-section .form-row .btn{min-height:2.5rem;padding:.5rem 1rem;font-size:.9375rem}.section-description{color:var(--color-text-muted);font-size:.875rem;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stats-grid-wide{grid-template-columns:repeat(auto-fill,minmax(5rem,1fr))}.sync-notice{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;background:#6366f11a;border:1px solid rgba(99,102,241,.3);color:var(--color-primary);font-size:.8125rem;font-weight:500;margin:0 0 .75rem}.sync-notice:before{content:"🔄";font-size:1rem}.storage-warning-banner{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:#f59e0b26;border:1px solid rgba(245,158,11,.4);color:var(--color-text)}.storage-estimate{margin-top:.5rem;font-size:.875rem;color:var(--color-text-muted)}.settings-h3{margin-top:1.25rem;margin-bottom:.25rem;font-size:1rem;font-weight:600}.stat-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:1rem;text-align:center}.stat-value{font-size:2rem;font-weight:600;color:var(--color-primary)}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-top:.25rem}.button-row{display:flex;gap:.75rem;flex-wrap:wrap}.import-result{margin-top:1rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem}.import-result.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.import-result.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.danger-zone{border-color:#ef44444d}.danger-zone h2{color:#ef4444}.danger-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--color-border)}.danger-item:last-child{border-bottom:none;padding-bottom:0}.danger-item:first-of-type{padding-top:0}.danger-item strong{display:block;margin-bottom:.25rem}.danger-item .section-description{margin:0;font-size:.8125rem}.danger-item .btn{flex-shrink:0}.about-info{font-size:.875rem;color:var(--color-text-muted);display:flex;flex-direction:column;gap:.375rem}.about-info strong{color:var(--color-text)}.emailjs-test{margin-top:1rem;display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.emailjs-test .form-group{margin-bottom:0;flex:1;min-width:200px}.emailjs-status{font-weight:600;font-size:.875rem;margin:0 0 .75rem}.emailjs-status.configured{color:var(--color-success, #22c55e)}.emailjs-status.not-configured{color:var(--color-text-muted)}.emailjs-config-details{margin-bottom:1rem}.emailjs-config-details summary{cursor:pointer;font-weight:500;font-size:.875rem;color:var(--color-primary);padding:.5rem 0}.emailjs-config-fields{margin-top:.75rem}.emailjs-templates-details{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border)}.emailjs-templates-details summary{cursor:pointer;font-weight:500;color:var(--color-text)}.template-block{margin-top:1rem;padding:1rem;background:var(--color-surface);border-radius:8px;border:1px solid var(--color-border)}.template-block h4{margin:0 0 .5rem;font-size:.9375rem}.template-vars{display:block;margin-bottom:.5rem;font-size:.8125rem;word-break:break-all}.template-example{margin:.5rem 0 .75rem;padding:.75rem;background:var(--color-bg);border-radius:6px;font-size:.8125rem;white-space:pre-wrap;overflow-x:auto}.contact-page .contact-form{max-width:480px}.contact-form .form-group{margin-bottom:1rem}.contact-form .form-group label{display:block;margin-bottom:.375rem;font-weight:500;color:var(--color-text)}.contact-form input,.contact-form textarea{width:100%;padding:.5rem .75rem;font-size:.875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text)}.contact-form textarea{resize:vertical;min-height:120px}.p2p-setup,.p2p-enabled{display:flex;flex-direction:column;gap:1rem}.p2p-setup .form-group,.p2p-enabled .form-group{display:flex;flex-direction:column;gap:.375rem}.p2p-setup label,.p2p-enabled label{font-size:.875rem;font-weight:500;color:var(--color-text)}.p2p-setup input,.p2p-enabled input{padding:.625rem .875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.9375rem}.p2p-setup input:focus,.p2p-enabled input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.password-strength{display:flex;align-items:center;gap:.75rem;margin-top:.25rem}.strength-bar{display:flex;gap:4px;flex:1}.strength-segment{height:4px;flex:1;border-radius:2px;transition:background-color .2s}.password-strength span{font-size:.75rem;font-weight:500;min-width:70px;text-align:right}.sync-status{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--color-bg);border-radius:8px;border:1px solid var(--color-border)}.status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-dot[style*=eab308]{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.status-label{font-weight:500}.sync-password-prompt{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--color-bg);border-radius:8px;border:1px solid var(--color-border)}.divider{border:none;border-top:1px solid var(--color-border);margin:.5rem 0}.settings-section h3{font-size:1rem;font-weight:600;margin-bottom:.25rem}.share-code-display{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--color-bg);border-radius:8px;border:1px solid var(--color-border)}.share-code-content{display:flex;align-items:center;gap:.75rem}.share-code{font-family:IBM Plex Mono,monospace;font-size:1.5rem;font-weight:600;letter-spacing:.1em;color:var(--color-primary);flex:1}.share-code-qr{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--color-surface);border-radius:8px}.qr-hint{font-size:.75rem;color:var(--color-text-muted);margin:0}.btn-small{padding:.375rem .75rem;font-size:.8125rem}.debug-details{font-size:.875rem}.debug-details summary{cursor:pointer;color:var(--color-text-muted);margin-bottom:.5rem}.debug-details summary:hover{color:var(--color-text)}.debug-info{padding:.75rem;background:var(--color-bg);border-radius:8px;display:flex;flex-direction:column;gap:.375rem;font-size:.8125rem}.debug-info code{font-family:IBM Plex Mono,monospace;font-size:.75rem;color:var(--color-text-muted);word-break:break-all}.notification-status{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-radius:8px;font-size:.9375rem}.notification-status.enabled{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.notification-status.disabled{background:#6b72801a;color:var(--color-text-muted);border:1px solid var(--color-border)}.notification-icon{font-size:1.25rem}.notification-prompt{display:flex;flex-direction:column;gap:.75rem}.notification-prompt p{margin:0;color:var(--color-text-muted);font-size:.9375rem}.theme-toggle{display:flex;gap:.5rem}.theme-option{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:.875rem 1.25rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s;flex:1;text-align:center}.theme-option:hover{border-color:var(--color-primary)}.theme-option:has(input:checked){border-color:var(--color-primary);background:#6366f10d}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-icon{font-size:1.5rem}.theme-option span:last-child{font-size:.8125rem;font-weight:500}@media(max-width:768px){.page-layout{grid-template-columns:1fr}.page-sidebar{grid-column:1}.page-sidebar.mobile-hidden,.page-content.mobile-hidden{display:none}.mobile-back-btn{display:inline-flex;margin:.75rem 1rem 0;align-self:flex-start;font-size:.8125rem}.calendar-resize-handle{display:none}.calendar-sidebar{width:100%!important;min-width:100%!important;border-left:none}.calendar-main.mobile-hidden,.calendar-sidebar.mobile-hidden{display:none}.calendar-toolbar{flex-wrap:wrap;gap:.5rem;padding:.75rem}.calendar-toolbar h2{font-size:1rem;order:-1;flex-basis:100%;text-align:center}.calendar-toolbar .calendar-nav{order:0}.calendar-toolbar .calendar-view-toggle{order:1;margin-right:0}.calendar-toolbar-actions{order:2;margin-left:auto}.calendar-toolbar-actions .btn-sm{padding:.375rem .5rem;font-size:.75rem}.settings-container{padding:1.5rem 1rem}.settings-section{padding:1rem}.stats-grid{grid-template-columns:1fr 1fr}.theme-toggle{flex-direction:column}.theme-option{flex-direction:row;justify-content:flex-start;gap:.75rem;padding:.75rem 1rem}.onboarding-container{padding:1.5rem;margin:1rem}.share-code-display{flex-direction:column}.share-code{font-size:1.25rem}.button-row{flex-direction:column}.button-row .btn{width:100%}.form-actions{flex-direction:column}}@media(max-width:480px){.page-layout,.page-layout.calendar-page,.settings-page{height:calc(100vh - 48px)}}.org-info{display:flex;align-items:center;gap:.75rem}.org-dot.large{width:16px;height:16px;border-radius:50%}.org-info-name{font-size:1.125rem;font-weight:600}.onboarding-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,#1a1a2e 50%,var(--color-bg) 100%);padding:2rem}.onboarding-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2.5rem;max-width:480px;width:100%;box-shadow:0 25px 50px -12px #00000080}.onboarding-header{text-align:center;margin-bottom:2rem}.onboarding-header h1{font-size:1.75rem;font-weight:700;margin-bottom:.75rem;background:linear-gradient(135deg,var(--color-primary),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.onboarding-header p{color:var(--color-text-muted);font-size:.9375rem;line-height:1.5}.onboarding-choices{display:flex;flex-direction:column;gap:1rem}.onboarding-choice{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center}.onboarding-choice:hover{border-color:var(--color-primary);background:#6366f10d}.choice-icon{font-size:2rem}.choice-title{font-size:1.125rem;font-weight:600;color:var(--color-text)}.choice-description{font-size:.875rem;color:var(--color-text-muted)}.landing-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,#1a1a2e 50%,var(--color-bg) 100%);padding:2rem}.landing-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2.5rem;max-width:520px;width:100%;box-shadow:0 25px 50px -12px #00000080}.landing-header{text-align:center;margin-bottom:1.5rem}.landing-header h1{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,var(--color-primary),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-tagline{color:var(--color-text-muted);font-size:.9375rem;line-height:1.5}.landing-value{color:var(--color-text);font-size:.9375rem;line-height:1.6;margin-bottom:1.5rem}.landing-cta{text-align:center;margin-bottom:1.5rem}.landing-cta .btn-lg{padding:.75rem 1.5rem;font-size:1rem}.landing-cta-hint{margin-top:.75rem;font-size:.8125rem;color:var(--color-text-muted)}.landing-links{display:flex;justify-content:center;gap:1.25rem;margin-bottom:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.landing-link{font-size:.9375rem;color:var(--color-primary);text-decoration:none}.landing-link:hover{text-decoration:underline}.landing-privacy{text-align:center;font-size:.8125rem;color:var(--color-text-muted);margin:0}.landing-page.faq-page{align-items:flex-start;overflow-y:auto;min-height:100vh;padding-bottom:2rem}.app-main .landing-page.faq-page{min-height:0;height:100%}.faq-page .landing-container,.faq-container{max-width:640px}.faq-list{margin-bottom:2rem}.faq-item{margin-bottom:1.5rem}.faq-question{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.faq-answer{font-size:.9375rem;color:var(--color-text-muted);line-height:1.6;margin:0}.faq-footer{padding-top:1.5rem;border-top:1px solid var(--color-border);font-size:.9375rem;color:var(--color-text-muted)}.faq-footer a{color:var(--color-primary);text-decoration:none}.faq-footer a:hover{text-decoration:underline}.faq-back{margin-top:1rem;margin-bottom:0}.onboarding-form{display:flex;flex-direction:column;gap:1.25rem}.onboarding-form .form-group{display:flex;flex-direction:column;gap:.5rem}.onboarding-form label{font-size:.875rem;font-weight:500;color:var(--color-text)}.onboarding-form input[type=text],.onboarding-form input[type=password]{padding:.75rem 1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:1rem}.onboarding-form input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.checkbox-group label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--color-primary)}.form-hint{font-size:.8125rem;color:var(--color-text-muted);margin:0}.form-error{padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#ef4444;font-size:.875rem}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}.form-actions .btn{flex:1}.onboarding-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border);text-align:center}.onboarding-footer p{font-size:.8125rem;color:var(--color-text-muted);margin:0}.org-dot.clickable{cursor:pointer;transition:transform .15s,box-shadow .15s;border:none;padding:0}.org-dot.clickable:hover{transform:scale(1.2);box-shadow:0 0 0 3px #ffffff4d}.color-picker-section{margin-top:.75rem}.color-palette{display:flex;flex-wrap:wrap;gap:.375rem}.color-swatch{width:1.75rem;height:1.75rem;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s;padding:0;outline:none}.color-swatch:hover{transform:scale(1.2)}.color-swatch.selected{border-color:#fff;box-shadow:0 0 0 2px var(--color-primary, #6366f1);transform:scale(1.15)}.color-swatch:focus-visible{outline:2px solid var(--color-primary, #6366f1);outline-offset:2px}.contact-list{display:flex;flex-direction:column;height:100%;border-right:1px solid var(--color-border)}.contact-list-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--color-border)}.contact-list-header h2{font-size:1.125rem;font-weight:600;margin:0}.contact-list-search-wrap{flex:0 0 auto;padding:.5rem .75rem;min-width:0}.contact-list-tags{padding:0 .75rem .5rem}.contact-list-tags label{display:block;font-size:.75rem;color:var(--color-text-muted);margin-bottom:.25rem}.contact-tag-select{width:100%;padding:.35rem .5rem;font-size:.8125rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text)}.contact-tags{display:flex;flex-wrap:wrap;gap:.35rem}.contact-tag{display:inline-block;padding:.2rem .5rem;font-size:.75rem;border-radius:4px;background:var(--color-bg-elevated, rgba(255, 255, 255, .08));color:var(--color-text-muted)}.form-group-birthday .birthday-fields{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.form-group-birthday select{padding:.35rem .5rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:inherit;min-width:6rem}.form-group-birthday .birthday-year-input{width:4.5rem;min-width:4.5rem;flex:0 0 auto;padding:.35rem .5rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:inherit;overflow:hidden;text-overflow:ellipsis;-moz-appearance:textfield;appearance:textfield}.form-group-birthday .birthday-year-input::-webkit-outer-spin-button,.form-group-birthday .birthday-year-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-group-birthday .birthday-year-input::placeholder{color:var(--color-text-muted)}.contact-list .search-input{width:100%;margin:0;padding:.35rem .6rem;height:2rem;min-height:2rem;box-sizing:border-box;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.8125rem;line-height:1.25}.contact-list .search-input:focus{outline:none;border-color:var(--color-primary)}.contact-items{flex:1;overflow-y:auto;padding:.5rem}.contact-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:8px;cursor:pointer;transition:background .15s}.contact-item:hover{background:var(--color-surface)}.contact-item.selected{background:var(--color-primary)}.contact-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,#818cf8 100%);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#fff}.contact-info{flex:1;min-width:0}.contact-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-company{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{padding:2rem;text-align:center;color:var(--color-text-muted)}.contact-form{padding:1.5rem;max-width:500px}.contact-form h2{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem;color:var(--color-text-muted)}.form-group input,.form-group textarea{width:100%;padding:.5rem .75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.9375rem;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.form-actions .btn-primary{margin-left:auto}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-danger{background:#dc2626;color:#fff;border:none}.btn-danger:hover{background:#ef4444}.contact-detail{padding:1.5rem}.contact-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.contact-detail-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,#818cf8 100%);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;text-transform:uppercase;color:#fff}.contact-detail-name{font-size:1.5rem;font-weight:600}.contact-detail-company{color:var(--color-text-muted)}.contact-field{margin-bottom:1rem}.contact-field-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem}.contact-field-value{color:var(--color-text)}.contact-field-value a{color:var(--color-primary);text-decoration:none}.contact-field-value a:hover{text-decoration:underline}.contact-email-hint{color:var(--color-text-muted);font-size:.875rem;margin-left:.25rem}.modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.send-email-modal{background:var(--color-bg);border-radius:var(--radius-md);padding:1.5rem;max-width:420px;width:100%;box-shadow:0 10px 40px #0000004d}.send-email-modal .modal-title{margin:0 0 1rem;font-size:1.125rem}.send-email-modal .form-group{margin-bottom:1rem}.send-email-modal .form-group label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem}.send-email-modal input,.send-email-modal textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit}.send-email-modal textarea{resize:vertical;min-height:100px}.send-email-to{padding:.5rem .75rem;background:var(--color-bg-elevated);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.875rem}.send-email-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.send-email-error{color:var(--color-error, #ef4444);font-size:.875rem;margin:0 0 .75rem}.contact-notes-header{display:flex;align-items:center;justify-content:space-between}.contact-notes-body{white-space:pre-wrap;word-break:break-word;background:var(--color-bg-secondary, rgba(255, 255, 255, .03));border:1px solid var(--color-border);border-radius:6px;padding:.625rem .75rem;font-size:.875rem;max-height:200px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.contact-notes-body::-webkit-scrollbar{display:none}.contact-notes-empty{color:var(--color-text-muted);font-size:.875rem;font-style:italic}.send-email-warning{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.8125rem;padding:.625rem .75rem;margin-bottom:.75rem;line-height:1.4}.contact-email-history{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.contact-email-history-desc{font-size:.8125rem;color:var(--color-text-muted);margin:.25rem 0 .75rem}.email-log-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.email-log-filter-btn{padding:.35rem .6rem;font-size:.8125rem;border:1px solid var(--color-border);border-radius:var(--radius-sm, 4px);background:var(--color-bg);color:var(--color-text);cursor:pointer}.email-log-filter-btn:hover{background:var(--color-bg-elevated, rgba(255, 255, 255, .05))}.email-log-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.email-log-scroll{max-height:280px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;scrollbar-width:none;-ms-overflow-style:none}.email-log-scroll::-webkit-scrollbar{display:none}.email-log-table{width:100%;border-collapse:collapse;font-size:.8125rem}.email-log-table thead{position:sticky;top:0;z-index:1}.email-log-table th{text-align:left;padding:.5rem .75rem;background:var(--color-bg-secondary, #2a2a2a);color:var(--color-text-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border)}.email-log-table td{padding:.375rem .75rem;border-bottom:1px solid var(--color-border);vertical-align:top}.email-log-table tbody tr:last-child td{border-bottom:none}.email-log-table tbody tr:hover{background:#ffffff08}.email-log-date{color:var(--color-text-muted);white-space:nowrap}.email-log-type-badge{font-size:.7rem;padding:.15rem .4rem;border-radius:3px;background:var(--color-bg-elevated, rgba(255, 255, 255, .08));color:var(--color-text-muted);white-space:nowrap}.email-log-preview{color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.email-log-status{font-weight:600;white-space:nowrap}.email-log-table tr[data-status=sent] .email-log-status{color:var(--color-success, #22c55e)}.email-log-table tr[data-status=failed] .email-log-status{color:var(--color-error, #ef4444)}.email-log-empty{font-size:.875rem;color:var(--color-text-muted);padding:.75rem;text-align:center}.email-log-empty-block{font-size:.875rem;color:var(--color-text-muted);padding:.75rem 0;margin:0}.email-log-truncated{font-size:.75rem;color:var(--color-text-muted);margin:.5rem 0 0}@media(max-width:400px){.contact-detail-avatar{display:none}}:root,[data-theme=dark]{--color-bg: #0a0a0f;--color-surface: #12121a;--color-border: #1e1e2e;--color-text: #e4e4ed;--color-text-muted: #8888a0;--color-primary: #6366f1;--color-primary-hover: #818cf8;--color-secondary: #1e1e2e;--color-secondary-hover: #2a2a3e;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "IBM Plex Mono", "Fira Code", monospace}[data-theme=light]{--color-bg: #f5f5f7;--color-surface: #ffffff;--color-border: #e0e0e5;--color-text: #1a1a2e;--color-text-muted: #6b6b80;--color-primary: #4f46e5;--color-primary-hover: #6366f1;--color-secondary: #f0f0f5;--color-secondary-hover: #e5e5ea}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 20% 20%,rgba(99,102,241,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(99,102,241,.05) 0%,transparent 50%);pointer-events:none;z-index:-1}[data-theme=light] body:before{background:radial-gradient(ellipse at 20% 20%,rgba(79,70,229,.05) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(79,70,229,.03) 0%,transparent 50%)}.container{max-width:640px;margin:0 auto;padding:4rem 1.5rem;min-height:100vh;display:flex;flex-direction:column;gap:2rem}h1{font-size:2.5rem;font-weight:600;letter-spacing:-.02em;background:linear-gradient(135deg,var(--color-text) 0%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:1.25rem;font-weight:500;margin-bottom:.75rem}p{color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem}.button-group{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.btn{font-family:var(--font-sans);font-size:.9375rem;font-weight:500;padding:.625rem 1.25rem;border-radius:8px;border:none;cursor:pointer;transition:all .15s ease}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.btn-secondary{background:var(--color-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-secondary-hover);border-color:var(--color-text-muted)}footer{margin-top:auto;padding-top:2rem;border-top:1px solid var(--color-border)}footer p{font-size:.875rem;font-family:var(--font-mono)}
