.login-form{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);max-width:28rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);z-index:2;border-radius:.75rem;margin-left:auto;margin-right:auto;padding:2rem;animation:.3s ease-out slideUp;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text);letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:block}.form-input{border-width:1px;border-color:var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:.5rem;padding:.75rem 1rem;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.login-button{--tw-text-opacity:1;width:100%;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;margin-top:.5rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.login-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.login-button{cursor:pointer;background:var(--primary);border:none}.login-button:hover{background:var(--primary-hover)}
.two-factor-form{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);max-width:28rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);z-index:2;border-radius:.75rem;margin-left:auto;margin-right:auto;padding:2rem;animation:.3s ease-out slideUp;position:relative}.two-factor-form h2{color:var(--text);letter-spacing:-.025em;margin-bottom:.5rem;font-size:1.5rem;font-weight:700;line-height:2rem}.two-factor-form-hint{color:var(--text-muted);margin-bottom:1.5rem;font-size:.875rem;line-height:1.25rem}.two-factor-submit-button{--tw-text-opacity:1;width:100%;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;margin-top:.5rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.two-factor-submit-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.two-factor-submit-button{cursor:pointer;background:var(--primary);border:none}.two-factor-submit-button:hover{background:var(--primary-hover)}.two-factor-cancel-button{width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-top:.75rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.two-factor-cancel-button:hover{color:var(--text);text-decoration-line:underline}.two-factor-form .status-message{border-radius:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.two-factor-form .status-error{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line)}
.contacts-table-container{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--surface);border:1px solid var(--border);overflow:hidden}.crm-header{background:var(--surface);border-bottom:1px solid var(--border);padding:1.25rem 1.5rem 0}.crm-header-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.crm-title{color:var(--text);letter-spacing:-.02em;font-size:1.25rem;font-weight:700;line-height:1.75rem}.crm-subtitle{color:var(--text-subtle);margin-top:.125rem;font-size:.875rem;line-height:1.25rem}.crm-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.pipeline-bar{scrollbar-width:none;border-bottom:none;gap:0;display:flex;overflow-x:auto}.pipeline-bar::-webkit-scrollbar{display:none}.pipeline-tab{white-space:nowrap;color:var(--text-muted);cursor:pointer;background:0 0;border-width:medium medium 2px;border-color:currentColor currentColor #0000;border-top-style:none;border-left-style:none;border-right-style:none;align-items:center;gap:.375rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:flex}.pipeline-tab:hover{color:var(--text-strong)}.pipeline-tab.active{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.pipeline-tab-all.active{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1));color:var(--text-strong)}.pipeline-tab-new.active{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.pipeline-tab-contacted.active{--tw-border-opacity:1;border-color:rgb(245 158 11/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.pipeline-tab-scheduled.active{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.pipeline-tab-no-show.active{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.pipeline-tab-qualified.active{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.pipeline-tab-closed.active{--tw-border-opacity:1;border-color:rgb(20 184 166/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(13 148 136/var(--tw-text-opacity,1))}.pipeline-tab-closed-with-payment.active{--tw-border-opacity:1;border-color:rgb(16 185 129/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.pipeline-tab-lost.active{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1));--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.pipeline-count{background:var(--surface-2);min-width:1.25rem;height:1.25rem;color:var(--text-muted);border-radius:9999px;justify-content:center;align-items:center;padding:0 .3rem;font-size:.75rem;font-weight:600;line-height:1rem;display:inline-flex}.pipeline-tab.active .pipeline-count{background:color-mix(in srgb, currentColor 12%, transparent);color:currentColor;opacity:1}.search-row{padding-top:.75rem;padding-bottom:.75rem}.search-input-wrapper{position:relative}.search-icon{pointer-events:none;color:var(--text-subtle);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-input{width:100%;color:var(--text);border:1px solid var(--border);background:var(--surface-2);border-radius:.5rem;padding:.5rem 2.5rem .5rem 2.25rem;font-size:.875rem;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.search-input:focus{background:var(--surface)}.search-clear-button{position:absolute;top:50%;right:.75rem}.search-clear-button:focus{outline-offset:2px;outline:2px solid #0000}.search-clear-button{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:1.5rem;line-height:1;transition:all .15s;display:flex;transform:translateY(-50%)}.search-clear-button:hover{color:var(--danger);background:var(--lightningcss-light,#fef2f2)var(--lightningcss-dark,#450a0a)}.filter-panel{flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding-top:.25rem;padding-bottom:1rem;display:flex}.filter-field{flex-direction:column;gap:.25rem;display:flex}.filter-field-label{color:var(--text-subtle);font-size:.75rem;font-weight:600;line-height:1rem}.date-filter-input{color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.filter-select{color:var(--text);border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.clear-dates-button{border-radius:var(--radius-sm);color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;align-self:flex-end;padding:.5rem .75rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.clear-dates-button:hover{color:var(--danger);background:var(--lightningcss-light,#fef2f2)var(--lightningcss-dark,#450a0a)}.icon-button{border-radius:var(--radius-sm);color:var(--text-muted);background:var(--surface);border:1px solid var(--border);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:flex;position:relative}.icon-button:hover,.icon-button.active{color:var(--primary);border-color:var(--primary);background:var(--lightningcss-light,#eff6ff)var(--lightningcss-dark,#172554)}.filter-badge{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:15px;height:15px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.create-lead-toggle-button{white-space:nowrap;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.create-lead-toggle-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.create-lead-toggle-button{background:var(--success);cursor:pointer;border:none;align-items:center;display:flex}.create-lead-toggle-button:hover{background:var(--success-hover)}.download-button{white-space:nowrap;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.download-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.download-button{background:var(--primary);cursor:pointer;border:none;align-items:center;display:flex}.download-button:hover{background:var(--primary-hover)}.import-facebook-button{white-space:nowrap;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.import-facebook-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.import-facebook-button{background:var(--brand-facebook);cursor:pointer;border:none;align-items:center;display:flex}.import-facebook-button:hover:not(:disabled){background:var(--brand-facebook-hover)}.import-facebook-button:disabled{opacity:.65;cursor:not-allowed}.import-result-banner{border-radius:.5rem;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.5rem;padding:.5rem .875rem;font-size:.825rem;font-weight:500;display:flex}.import-result-success{background:var(--success-surface);color:var(--success-ink);border:1px solid var(--success-line)}.import-result-error{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line)}.import-result-dismiss{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;flex-shrink:0;padding:0 .25rem;font-size:1.1rem;line-height:1}.import-result-dismiss:hover{opacity:1}.table-view{-webkit-overflow-scrolling:touch;background:var(--surface);min-height:200px;max-height:calc(100vh - 310px);display:block;overflow:auto}.contacts-table{border-collapse:collapse;table-layout:auto;min-width:100%}.contacts-table thead{background:var(--surface-2);border-bottom:1px solid var(--border);z-index:2;position:sticky;top:0}.contacts-table th{white-space:nowrap;text-align:left;color:var(--text-muted);padding:.75rem 1rem;font-size:.75rem;font-weight:600;line-height:1rem}.contacts-table tbody{background:var(--surface)}.contacts-table tbody tr{border-bottom:1px solid var(--border);transition:background .1s}.contacts-table tbody tr:last-child{border-bottom:none}.contacts-table tbody tr:hover,.contacts-table tbody tr.clickable-row:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.clickable-row{cursor:pointer}.contacts-table tbody tr.row--new-lead{border-left:3px solid var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.contacts-table tbody tr.row--new-lead:hover{background:color-mix(in srgb, var(--primary) 16%, transparent)}.contacts-table td{color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem}.message-cell-td{white-space:normal;min-width:280px;max-width:520px}.notes-hover{position:relative}.notes-preview{-webkit-line-clamp:2;white-space:normal;word-break:break-word;cursor:default;-webkit-box-orient:vertical;max-height:2.7em;line-height:1.35;display:-webkit-box;position:relative;overflow:hidden}.notes-preview:after{content:"";background:linear-gradient(to right, transparent, var(--surface) 75%);pointer-events:none;width:55%;height:1.35em;position:absolute;bottom:0;right:0}.notes-popover{border:1px solid var(--border);background:var(--surface);width:420px;max-width:60vw;box-shadow:var(--shadow-lg);color:var(--text);white-space:normal;word-break:break-word;z-index:20;opacity:0;pointer-events:none;border-radius:.75rem;padding:.75rem .9rem;line-height:1.35;transition:opacity .16s,transform .18s;position:absolute;top:-.5rem;left:calc(100% + .75rem);transform:translate(-10px)}.notes-hover:hover .notes-popover{opacity:1;pointer-events:auto;transform:translate(0)}.actions-th{text-align:right}.actions-cell{white-space:nowrap;text-align:right}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-th:hover{background:var(--surface-3)}.sortable-th[title] .th-label{border-bottom:1px dotted var(--text-subtle)}.sort-indicator{color:var(--primary);margin-left:.25rem;font-size:.75em}.empty-state{text-align:center;color:var(--text-subtle);flex-direction:column;justify-content:center;align-items:center;padding:4rem 1rem;display:flex}.empty-state-icon{color:var(--text-faint);margin-bottom:.75rem;font-size:2rem;line-height:1}.empty-state-title{color:var(--text-muted);font-size:.875rem;font-weight:600;line-height:1.25rem}.empty-state-hint{color:var(--text-subtle);max-width:32ch;margin-top:.25rem;font-size:.875rem;line-height:1.25rem}.skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 37%, var(--surface-2) 63%);background-size:400% 100%;border-radius:999px;width:100%;height:.75rem;animation:1.4s ease-in-out infinite skeleton-sweep;display:block}.skeleton-line-lg{width:60%;height:1rem;margin-bottom:.5rem}.skeleton-line-sm{width:40%;margin-top:.5rem}@keyframes skeleton-sweep{0%{background-position:100%}to{background-position:0}}.cell-empty{color:var(--text-subtle)}.message-preview{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;cursor:default;max-width:220px;color:var(--text-muted);font-style:italic;display:inline-block;overflow:hidden}.badge{border-radius:9999px;align-items:center;padding:.125rem .625rem;font-size:.75rem;font-weight:600;line-height:1.25rem;display:inline-flex}.badge-green{color:var(--lightningcss-light,#14532d)var(--lightningcss-dark,#86efac);background:var(--lightningcss-light,#dcfce7)var(--lightningcss-dark,#052e16);border:1px solid var(--lightningcss-light,#bbf7d0)var(--lightningcss-dark,#166534)}.badge-red{color:var(--lightningcss-light,#7f1d1d)var(--lightningcss-dark,#fca5a5);background:var(--lightningcss-light,#fee2e2)var(--lightningcss-dark,#450a0a);border:1px solid var(--lightningcss-light,#fecaca)var(--lightningcss-dark,#991b1b)}.badge-status-new{color:var(--lightningcss-light,#1e40af)var(--lightningcss-dark,#93c5fd);background:var(--lightningcss-light,#eff6ff)var(--lightningcss-dark,#172554);border:1px solid var(--lightningcss-light,#bfdbfe)var(--lightningcss-dark,#1e40af)}.badge-status-contacted{color:var(--lightningcss-light,#78350f)var(--lightningcss-dark,#fcd34d);background:var(--lightningcss-light,#fffbeb)var(--lightningcss-dark,#451a03);border:1px solid var(--lightningcss-light,#fde68a)var(--lightningcss-dark,#92400e)}.badge-status-scheduled{color:var(--lightningcss-light,#6b21a8)var(--lightningcss-dark,#d8b4fe);background:var(--lightningcss-light,#faf5ff)var(--lightningcss-dark,#3b0764);border:1px solid var(--lightningcss-light,#e9d5ff)var(--lightningcss-dark,#6b21a8)}.badge-status-no-show{color:var(--lightningcss-light,#1e293b)var(--lightningcss-dark,#cbd5e1);background:var(--lightningcss-light,#f8fafc)var(--lightningcss-dark,#334155);border:1px solid var(--lightningcss-light,#e2e8f0)var(--lightningcss-dark,#475569)}.badge-status-qualified{color:var(--lightningcss-light,#14532d)var(--lightningcss-dark,#86efac);background:var(--lightningcss-light,#f0fdf4)var(--lightningcss-dark,#052e16);border:1px solid var(--lightningcss-light,#bbf7d0)var(--lightningcss-dark,#166534)}.badge-status-closed{color:var(--lightningcss-light,#115e59)var(--lightningcss-dark,#5eead4);background:var(--lightningcss-light,#f0fdfa)var(--lightningcss-dark,#042f2e);border:1px solid var(--lightningcss-light,#99f6e4)var(--lightningcss-dark,#115e59)}.badge-status-closed-with-payment{color:var(--lightningcss-light,#064e3b)var(--lightningcss-dark,#6ee7b7);background:var(--lightningcss-light,#ecfdf5)var(--lightningcss-dark,#022c22);border:1px solid var(--lightningcss-light,#a7f3d0)var(--lightningcss-dark,#065f46)}.badge-status-lost,.badge-priority-high{color:var(--lightningcss-light,#991b1b)var(--lightningcss-dark,#fca5a5);background:var(--lightningcss-light,#fef2f2)var(--lightningcss-dark,#450a0a);border:1px solid var(--lightningcss-light,#fecaca)var(--lightningcss-dark,#991b1b)}.badge-priority-medium{color:var(--lightningcss-light,#78350f)var(--lightningcss-dark,#fcd34d);background:var(--lightningcss-light,#fffbeb)var(--lightningcss-dark,#451a03);border:1px solid var(--lightningcss-light,#fde68a)var(--lightningcss-dark,#92400e)}.badge-priority-low{color:var(--lightningcss-light,#14532d)var(--lightningcss-dark,#86efac);background:var(--lightningcss-light,#f0fdf4)var(--lightningcss-dark,#052e16);border:1px solid var(--lightningcss-light,#bbf7d0)var(--lightningcss-dark,#166534)}.badge-priority-none{color:var(--lightningcss-light,#4b5563)var(--lightningcss-dark,#d1d5db);background:var(--lightningcss-light,#f9fafb)var(--lightningcss-dark,#374151);border:1px solid var(--lightningcss-light,#e5e7eb)var(--lightningcss-dark,#4b5563)}.badge-intent-booking{color:var(--lightningcss-light,#3730a3)var(--lightningcss-dark,#a5b4fc);background:var(--lightningcss-light,#eef2ff)var(--lightningcss-dark,#1e1b4b);border:1px solid var(--lightningcss-light,#c7d2fe)var(--lightningcss-dark,#3730a3)}.badge-intent-consultation{color:var(--lightningcss-light,#44403c)var(--lightningcss-dark,#d6d3d1);background:var(--lightningcss-light,#fafaf9)var(--lightningcss-dark,#292524);border:1px solid var(--lightningcss-light,#e7e5e4)var(--lightningcss-dark,#44403c)}.badge-source-website{color:var(--lightningcss-light,#3f3f46)var(--lightningcss-dark,#d4d4d8);background:var(--lightningcss-light,#fafafa)var(--lightningcss-dark,#27272a);border:1px solid var(--lightningcss-light,#e4e4e7)var(--lightningcss-dark,#3f3f46)}.badge-source-google{color:var(--lightningcss-light,#075985)var(--lightningcss-dark,#7dd3fc);background:var(--lightningcss-light,#f0f9ff)var(--lightningcss-dark,#082f49);border:1px solid var(--lightningcss-light,#bae6fd)var(--lightningcss-dark,#075985)}.badge-source-facebook{color:var(--lightningcss-light,#5b21b6)var(--lightningcss-dark,#c4b5fd);background:var(--lightningcss-light,#f5f3ff)var(--lightningcss-dark,#2e1065);border:1px solid var(--lightningcss-light,#ddd6fe)var(--lightningcss-dark,#5b21b6)}.badge-patienttype-new,.badge-patienttype-existing{color:var(--lightningcss-light,#374151)var(--lightningcss-dark,#e5e7eb);background:var(--lightningcss-light,#f9fafb)var(--lightningcss-dark,#374151);border:1px solid var(--lightningcss-light,#e5e7eb)var(--lightningcss-dark,#4b5563)}.badge-patienttype-none{color:var(--lightningcss-light,#4b5563)var(--lightningcss-dark,#d1d5db);background:var(--lightningcss-light,#f9fafb)var(--lightningcss-dark,#374151);border:1px solid var(--lightningcss-light,#e5e7eb)var(--lightningcss-dark,#4b5563)}.date-created{line-height:1.3;display:inline-block}.date-created-time{color:var(--text-subtle);font-size:.72rem;display:block}.attempt-stepper{align-items:center;gap:.25rem;display:inline-flex}.attempt-value{text-align:center;font-variant-numeric:tabular-nums;min-width:1.1rem;color:var(--text)}.attempt-btn{opacity:0;border:1px solid var(--border);background:var(--surface);width:1.3rem;height:1.3rem;color:var(--text-muted);cursor:pointer;border-radius:.35rem;justify-content:center;align-items:center;padding:0;font-size:.95rem;line-height:1;transition:opacity .12s,background .12s,color .12s,border-color .12s;display:inline-flex}.contacts-table tbody tr:hover .attempt-btn:not(:disabled),.contact-card .attempt-btn:not(:disabled){opacity:1}.attempt-btn:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.attempt-btn:disabled{cursor:default}.status-inline-select{cursor:pointer;appearance:auto;background-clip:padding-box;border-style:solid;border-width:1px;border-radius:9999px;padding:.15rem .6rem;font-size:.75rem;font-weight:600;line-height:1.4}.edit-button,.delete-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.375rem;padding-left:.75rem;padding-right:.75rem;font-size:.75rem;font-weight:600;line-height:1rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.edit-button:hover,.delete-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.edit-button,.delete-button{cursor:pointer;border:none;align-items:center;height:1.75rem;display:inline-flex}.edit-button{background:var(--primary);margin-right:.25rem}.edit-button:hover{background:var(--primary-hover)}.delete-button{background:var(--danger)}.delete-button:hover{background:var(--danger-hover)}.create-lead-section{padding-bottom:1rem}.card-view{display:none}@media (max-width:768px){.table-view{display:none}.card-view{grid-template-columns:1fr;gap:.75rem;padding:1rem;display:grid}.contact-card{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1rem;transition:all .15s}.contact-card:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);transform:translateY(-1px)}.card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.contact-name{color:var(--text);font-size:1rem;font-weight:700;line-height:1.5rem}.contact-info{margin-bottom:.75rem}.contact-info>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.contact-field{color:var(--text-muted);font-size:.875rem;line-height:1.25rem}.contact-field-label{color:var(--text-subtle);font-weight:500}.contact-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}}.edit-modal{z-index:50;background-color:rgb(0 0 0/var(--tw-bg-opacity,1));--tw-bg-opacity:.4;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.edit-modal-content{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);width:100%;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:1rem;max-width:44rem;max-height:90vh;animation:.18s ease-out modalSlideIn;overflow-y:auto}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.edit-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem 1rem;display:flex}.edit-modal-header h2{color:var(--text);letter-spacing:-.02em;font-size:1.125rem;font-weight:700;line-height:1.75rem}.edit-modal-subtitle{color:var(--text-subtle);margin-top:.125rem;font-size:.875rem;line-height:1.25rem}.modal-close-btn{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;margin-top:-.25rem;font-size:1.5rem;line-height:1;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:flex}.modal-close-btn:hover{color:var(--text-strong);background:var(--surface-2)}.edit-modal-grid{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;padding:1.25rem 1.5rem;display:grid}@media (max-width:640px){.edit-modal-grid{grid-template-columns:1fr}}.edit-field{flex-direction:column;gap:.25rem;display:flex}.edit-field-full{grid-column:1/-1}.edit-label{color:var(--text-muted);font-size:.75rem;font-weight:600;line-height:1rem}.edit-label-checkbox{cursor:pointer;color:var(--text);align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;line-height:1.25rem;display:flex}.edit-label-checkbox input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer;border-radius:.25rem}.edit-input{width:100%;color:var(--text);border:1px solid var(--border);background:var(--surface-2);border-radius:.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.edit-input:focus{background:var(--surface)}.edit-static{align-items:center;min-height:2.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;display:flex}.edit-select{appearance:auto;cursor:pointer}.edit-textarea{resize:vertical;min-height:80px;font-family:inherit}.invalid-input{border-color:var(--danger)!important;background-color:var(--danger-surface)!important}.error-message{color:var(--danger-ink);font-size:.75rem;font-weight:500}.edit-modal-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.save-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.save-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.save-button{background:var(--success);cursor:pointer;border:none}.save-button:hover{background:var(--success-hover)}.cancel-button{color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.cancel-button:hover{color:var(--text-strong);background:var(--surface-2)}.edit-modal-actions-right{align-items:center;gap:.5rem;display:flex}.save-error{text-align:right;max-width:22rem;line-height:1.3}.modal-delete-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.modal-delete-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.modal-delete-button{background:var(--danger);cursor:pointer;border:none}.modal-delete-button:hover{background:var(--danger-hover)}.confirm-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:1rem;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.confirm-dialog{text-align:center;--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--danger-line);border-radius:1rem;width:90%;max-width:22rem;padding:2rem 2rem 1.75rem;animation:.15s ease-out modalSlideIn}.confirm-icon{background:var(--danger-surface);width:3.5rem;height:3.5rem;color:var(--danger-ink);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:1rem;margin-left:auto;margin-right:auto;display:flex}.confirm-title{color:var(--text);margin-bottom:.5rem;font-size:1.125rem;font-weight:700;line-height:1.75rem}.confirm-body{color:var(--text-muted);margin-bottom:1.5rem;font-size:.875rem;line-height:1.625}.confirm-actions{justify-content:center;gap:.5rem;display:flex}.confirm-delete-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.confirm-delete-button:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.confirm-delete-button{background:var(--danger);cursor:pointer;border:none}.confirm-delete-button:hover{background:var(--danger-hover)}.contact-cell-td{min-width:180px;max-width:260px}.contact-cell{line-height:1.3}.contact-cell-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.contact-cell-meta{color:var(--text-subtle);flex-direction:column;gap:1px;min-width:0;margin-top:2px;font-size:.72rem;display:flex}.contact-cell-meta-line{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.contact-cell-meta a{color:var(--text-muted);text-decoration:none}.contact-cell-meta a:hover{color:var(--primary);text-decoration:underline}.inline-date-picker{border:1px solid var(--border);color:var(--text);background:var(--surface);cursor:pointer;border-radius:.375rem;outline:none;padding:.2rem .35rem;font-size:.78rem}.inline-date-picker:hover{border-color:color-mix(in srgb, var(--primary) 50%, var(--border))}.inline-date-picker:focus{border-color:var(--primary)}.column-picker-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:.75rem;margin-bottom:.25rem;padding:.875rem 1rem 1rem}.column-picker-header{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.7rem;font-weight:700;display:flex}.column-picker-reset{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.2rem .5rem;font-size:.75rem;font-weight:500;transition:all .15s}.column-picker-reset:hover{color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent)}.column-picker-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));align-items:start;gap:.25rem;display:grid}.column-picker-item{color:var(--text);cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .5rem;font-size:.825rem;transition:background .1s,border-color .1s,opacity .1s;display:flex}.column-picker-item:hover:not(.locked){background:var(--surface-2)}.column-picker-item.dragging{opacity:.4;border-color:var(--border)}.column-picker-handle{color:var(--text-subtle);cursor:grab;flex-shrink:0;font-size:.9rem;line-height:1}.column-picker-item input[type=checkbox]{cursor:pointer;flex-shrink:0;width:.875rem;height:.875rem}.column-picker-item.locked{opacity:.45;cursor:default}.column-picker-item.locked .column-picker-handle{cursor:default}.column-picker-lock{color:var(--text-subtle);margin-left:auto;font-size:.65rem;font-style:italic}
@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;max-width:100%;display:inline-block;position:relative}.ReactCrop *,.ReactCrop :before,.ReactCrop :after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{max-width:100%;max-height:inherit;display:block}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px);position:absolute;inset:0}.ReactCrop__crop-selection{cursor:move;position:absolute;top:0;left:0;transform:translate(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";border:1px solid var(--rc-border-color);opacity:.3;position:absolute;inset:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){color:#fff;background-image:linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;animation:1s linear infinite marching-ants}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";background-color:#fff6;display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);position:absolute}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;top:0;left:0;transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;top:0;left:50%;transform:translate(-50%,-50%)}.ReactCrop .ord-ne{cursor:ne-resize;top:0;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-se{cursor:se-resize;bottom:0;right:0;transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;bottom:0;left:50%;transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;bottom:0;left:0;transform:translate(-50%,50%)}.ReactCrop .ord-w{cursor:w-resize;top:50%;left:0;transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{width:100%;height:var(--rc-drag-bar-size);top:0;left:0;transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{width:var(--rc-drag-bar-size);height:100%;top:0;right:0;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{width:100%;height:var(--rc-drag-bar-size);bottom:0;left:0;transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{width:var(--rc-drag-bar-size);height:100%;top:0;left:0;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}
.newsletter-container{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;overflow:hidden}.newsletter-header{background:var(--surface);border-bottom-width:1px;border-color:var(--border);padding:1.25rem 1.5rem 1rem}.newsletter-header-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.newsletter-title{color:var(--text);letter-spacing:-.02em;font-size:1.25rem;font-weight:700;line-height:1.75rem}.newsletter-subtitle{color:var(--text-subtle);margin-top:.125rem;font-size:.875rem;line-height:1.25rem}.newsletter-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.nl-btn{white-space:nowrap;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nl-btn:hover{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.nl-btn{cursor:pointer;border:none;align-items:center;display:inline-flex}.nl-btn-save{background:var(--success)}.nl-btn-save:hover{background:var(--success-hover)}.nl-btn-delete{background:var(--danger)}.nl-btn-delete:hover{background:var(--danger-hover)}.nl-btn-send{background:var(--primary)}.nl-btn-send:hover{background:var(--primary-hover)}.nl-status{border:1px solid #0000;border-radius:.5rem;margin-top:.75rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.nl-status-success{background:var(--success-surface);color:var(--success-ink);border-color:var(--success-line)}.nl-status-error{background:var(--danger-surface);color:var(--danger-ink);border-color:var(--danger-line)}.nl-status-info{background:var(--info-surface);color:var(--info-ink);border-color:var(--info-line)}.newsletter-body{grid-template-columns:1fr 1fr;gap:1.25rem;padding:1.5rem;display:grid}@media (max-width:1024px){.newsletter-body{grid-template-columns:1fr}}.newsletter-compose{min-width:0}.nl-label{color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600;line-height:1rem;display:block}.newsletter-textarea{border-width:1px;border-color:var(--border);white-space:pre-wrap;resize:vertical;width:100%;min-height:18rem;box-shadow:var(--shadow);background:var(--surface);border-radius:.5rem;padding:1rem;font-family:inherit;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.nl-panel{border:1px solid var(--border);background:var(--surface-2);border-radius:.75rem;margin-top:1rem;padding:.875rem 1rem 1rem}.nl-panel-title{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.75rem;font-size:.7rem;font-weight:700}.nl-upload-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.nl-upload-left{flex-direction:column;gap:.5rem;min-width:0;display:flex}.nl-upload-label{color:var(--text);font-size:.875rem;font-weight:600}.nl-logo-preview{border:1px dashed var(--input-border);background:var(--surface);border-radius:.75rem;place-items:center;max-width:180px;padding:8px;display:grid}.nl-logo-img{max-width:100%;height:auto;display:block}.nl-logo-placeholder{color:var(--text-subtle);text-align:center;padding:0 .5rem;font-size:.7rem}.nl-upload-actions{flex-direction:column;gap:.5rem;display:flex}.nl-file{color:var(--text);font-size:.875rem}.nl-remove-logo-btn{color:var(--danger-ink);border:1px solid var(--danger-line);cursor:pointer;background:0 0;border-radius:.375rem;padding:.25rem .625rem;font-size:.8rem;transition:background .15s,color .15s}.nl-remove-logo-btn:hover{background:var(--danger-surface)}.newsletter-preview-card{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;min-width:0;overflow:hidden}.newsletter-preview-title{text-align:left;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.75rem;font-weight:600;line-height:1rem}.newsletter-preview{white-space:pre-wrap;background:var(--surface-2);padding:1.25rem;font-family:Libre Caslon Text,serif;font-size:18px;font-style:italic}.crop-modal-overlay{background:var(--overlay);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.crop-modal{background:var(--surface);width:min(600px,90vw);max-height:90vh;box-shadow:var(--shadow-lg);border-radius:12px;flex-direction:column;gap:16px;padding:24px;display:flex;overflow-y:auto}.crop-modal-title{color:var(--text);margin:0;font-size:1.25rem;font-weight:700}.crop-modal-hint{color:var(--text-muted);margin:0;font-size:.875rem}.crop-modal-image-wrap{background:var(--surface-3);border-radius:8px;justify-content:center;padding:12px;display:flex;overflow:hidden}.crop-modal-actions{justify-content:flex-end;gap:12px;display:flex}.crop-apply-button,.crop-cancel-button{cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-size:.875rem;font-weight:600;transition:background .15s}.crop-apply-button{background:var(--success);color:#fff}.crop-apply-button:hover{background:var(--success-hover)}.crop-cancel-button{background:var(--border);color:var(--text-muted)}.crop-cancel-button:hover{background:var(--border-strong)}
.ar-container{background:var(--surface);border-radius:.75rem;padding:1.5rem}.ar-loading{text-align:center;color:var(--text-subtle);padding:2rem;font-size:.9rem}.ar-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.ar-title{color:var(--text);letter-spacing:-.02em;font-size:1.25rem;font-weight:700;line-height:1.75rem}.ar-subtitle{color:var(--text-subtle);margin-top:2px;font-size:.875rem}.ar-save-btn{background:var(--success);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;transition:opacity .15s}.ar-save-btn:hover{opacity:.88}.ar-status{border:1px solid #0000;border-radius:.5rem;margin-bottom:1rem;padding:.625rem .875rem;font-size:.875rem;font-weight:500}.ar-status-success{background:var(--success-surface);color:var(--success-ink);border-color:var(--success-line)}.ar-status-error{background:var(--danger-surface);color:var(--danger-ink);border-color:var(--danger-line)}.ar-section{border:1px solid var(--border);background:var(--surface-2);border-radius:.75rem;margin-bottom:1.75rem;padding:1rem 1.125rem}.ar-section-title{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.875rem;font-size:.7rem;font-weight:700}.ar-section-hint{color:var(--text-muted);margin-top:-.375rem;margin-bottom:.875rem;font-size:.8rem}.ar-toggle-row{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.ar-toggle-label{color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.ar-checkbox{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}.ar-badge{letter-spacing:.08em;border-radius:999px;padding:2px 8px;font-size:.65rem;font-weight:700}.ar-badge-on{color:var(--lightningcss-light,#15803d)var(--lightningcss-dark,#86efac);background:var(--lightningcss-light,#dcfce7)var(--lightningcss-dark,#052e16)}.ar-badge-off{background:var(--surface-3);color:var(--text-muted)}.ar-field{margin-bottom:.875rem}.ar-label{color:var(--text-muted);margin-bottom:.3rem;font-size:.8rem;font-weight:600;display:block}.ar-hint{color:var(--text-subtle);font-size:.75rem;font-weight:400}.ar-input{border:1px solid var(--input-border);background:var(--surface);width:100%;color:var(--text);box-sizing:border-box;border-radius:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.ar-input:focus{border-color:var(--primary);outline:none}.ar-textarea{border:1px solid var(--input-border);background:var(--surface);width:100%;color:var(--text);box-sizing:border-box;resize:vertical;border-radius:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.ar-textarea:focus{border-color:var(--primary);outline:none}.ar-select{border:1px solid var(--input-border);background:var(--surface);width:100%;color:var(--text);box-sizing:border-box;cursor:pointer;border-radius:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.9rem}.ar-select:focus{border-color:var(--primary);outline:none}.ar-hours-table{border-collapse:collapse;width:100%}.ar-hours-row{border-top:1px solid var(--border)}.ar-hours-row:first-child{border-top:none}.ar-hours-day{width:160px;padding:.5rem 0}.ar-hours-times{align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.ar-hours-sep{color:var(--text-subtle);flex-shrink:0;font-size:.9rem}.ar-time-input{border:1px solid var(--input-border);background:var(--surface);color:var(--text);border-radius:.375rem;width:110px;padding:.3rem .5rem;font-family:inherit;font-size:.875rem;transition:border-color .15s}.ar-time-input:disabled{background:var(--surface-2);color:var(--text-subtle);border-color:var(--border);cursor:not-allowed}.ar-time-input:focus{border-color:var(--primary);outline:none}.ar-ranges-table{border-collapse:collapse;width:100%;margin-bottom:1rem;font-size:.875rem}.ar-ranges-table th{text-align:left;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);padding:.4rem .5rem;font-size:.7rem;font-weight:700}.ar-ranges-table td{border-bottom:1px solid var(--border);color:var(--text);padding:.5rem}.ar-remove-btn{color:var(--danger-ink);border:1px solid var(--danger-line);cursor:pointer;white-space:nowrap;background:0 0;border-radius:.375rem;padding:.2rem .5rem;font-size:.75rem;transition:background .15s}.ar-remove-btn:hover{background:var(--danger-surface)}.ar-add-range{flex-direction:column;gap:.5rem;display:flex}.ar-add-range-top{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ar-range-label{flex:180px;min-width:0}.ar-range-date{flex:0 150px;min-width:0}.ar-range-message{box-sizing:border-box;width:100%;font-size:.875rem}.ar-range-msg-cell{color:var(--text);max-width:220px;font-size:.8rem}.ar-range-msg-fallback{color:var(--text-subtle);font-size:.8rem;font-style:italic}.ar-add-btn{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:background .15s}.ar-add-btn:hover:not(:disabled){background:var(--primary-hover)}.ar-add-btn:disabled{background:color-mix(in srgb, var(--primary) 45%, var(--surface));cursor:not-allowed}
.viz-root{--viz-node:var(--lightningcss-light,#cbd5e1)var(--lightningcss-dark,#475569);--viz-ink:var(--text);--viz-muted:var(--text-muted);--viz-surface:var(--surface);--viz-border:var(--border);padding:1.5rem}.viz-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.viz-title{color:var(--viz-ink);font-size:1.25rem;font-weight:700;line-height:1.75rem}.viz-subtitle{color:var(--viz-muted);margin-top:.125rem;font-size:.875rem;line-height:1.25rem}.viz-controls{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.viz-control-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.viz-control-label{white-space:nowrap;color:var(--viz-muted);font-size:.75rem;font-weight:600;line-height:1rem}.viz-ranges{flex-wrap:wrap;gap:.25rem;display:flex}.viz-range-btn{cursor:pointer;color:var(--viz-muted);border:1px solid var(--viz-border);background:0 0;border-radius:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;line-height:1rem;transition:all .15s}.viz-range-btn:hover{color:var(--viz-ink);border-color:var(--primary)}.viz-range-btn.active{color:#fff;background:var(--primary);border-color:var(--primary)}.viz-legend{color:var(--viz-ink);flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;font-size:.875rem;font-weight:500;line-height:1.25rem;display:flex}.viz-legend-item{align-items:center;gap:.375rem;display:flex}.viz-legend-btn{cursor:pointer;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:999px;padding:2px 8px 2px 6px}.viz-legend-btn:hover{background:var(--viz-node)}.viz-legend-btn.active{border-color:var(--primary);background:var(--viz-node)}.viz-swatch{border-radius:.25rem;width:14px;height:14px;display:inline-block}.viz-swatch-neutral{background:var(--viz-node)}.viz-legend-key{color:var(--viz-muted)}.viz-chart{width:100%;min-height:460px;position:relative}.viz-state{text-align:center;height:460px;color:var(--viz-muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.25rem;display:flex}.viz-state-icon{color:var(--text-faint);font-size:2rem;line-height:1}.viz-error{color:var(--danger)}.viz-link{stroke-opacity:.42;transition:stroke-opacity .15s}.viz-link:hover{stroke-opacity:.75;cursor:pointer}.viz-node{stroke:var(--viz-surface);stroke-width:1px;cursor:pointer}.viz-link.viz-faded{stroke-opacity:.06}g.viz-faded{opacity:.25;transition:opacity .15s}.viz-node-label{fill:var(--viz-ink);pointer-events:none;font-size:12px;font-weight:600}.viz-tooltip{pointer-events:none;z-index:100;background:var(--viz-ink);color:var(--viz-surface);box-shadow:var(--shadow-md);border-radius:.375rem;max-width:260px;padding:6px 9px;font-size:.75rem;font-weight:500;line-height:1rem;position:fixed}.viz-table-wrap{margin-top:1.25rem}.viz-table-wrap>summary{cursor:pointer;color:var(--primary);font-size:.875rem;font-weight:600;line-height:1.25rem}.viz-table-scroll{margin-top:.75rem;overflow-x:auto}.viz-table{border-collapse:collapse;width:100%;color:var(--viz-ink);font-size:.875rem;line-height:1.25rem}.viz-table th,.viz-table td{text-align:left;border-bottom:1px solid var(--viz-border);padding:.5rem .75rem}.viz-table th{color:var(--viz-muted);font-weight:600}.viz-table .viz-num{text-align:right;font-variant-numeric:tabular-nums}
.dashboard-container{z-index:50;width:100%;margin-top:-1.5rem;padding:.5rem 1.5rem 1.5rem;position:relative}.tab-container{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:var(--surface);border:1px solid var(--border);overflow:hidden}.tab-buttons{background:linear-gradient(to right, var(--surface-header-from), var(--surface-header-to));border-bottom:2px solid var(--border);display:flex}.tab-button{padding:1rem 1.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;position:relative}.tab-button:focus{outline-offset:2px;outline:2px solid #0000}.tab-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;transition:all .2s;position:relative}.tab-button:hover{color:var(--text-strong);background:var(--surface);background:color-mix(in srgb, var(--surface) 50%, transparent)}.tab-button.active{color:var(--primary);background:var(--surface);border-bottom-color:var(--primary);font-weight:600}.tab-content{background:var(--surface);padding:0}@media (min-width:1280px){.dashboard-container{padding-left:.5rem;padding-right:.5rem}}
.change-password{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem}.change-password h2{color:var(--text);letter-spacing:-.025em;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700;line-height:2rem}.change-password form>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.change-password .form-group{margin-bottom:1.25rem}.change-password .form-group label{color:var(--text);letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:block}.change-password .form-group input[type=password],.change-password .form-group input[type=text]{border-width:1px;border-color:var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:.5rem;padding:.75rem 1rem;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.change-password .password-requirements{background:var(--surface-2);border-width:1px;border-color:var(--border);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.change-password .password-requirements p{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;display:flex}.change-password .password-requirements p:last-child{margin-bottom:0}.change-password .password-requirements p{color:var(--text-muted);font-weight:500}.change-password .form-group.checkbox{align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.change-password .form-group.checkbox input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);border-color:var(--border);cursor:pointer;border-radius:.25rem;flex-shrink:0;margin-top:.125rem}.change-password .form-group.checkbox label{cursor:pointer;color:var(--text);margin:0;font-size:.875rem;line-height:1.5}.change-password-button{--tw-text-opacity:1;width:100%;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;margin-top:.5rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.change-password-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.change-password-button{cursor:pointer;background:var(--primary);border:none}.change-password-button:hover{background:var(--primary-hover)}.change-password .status-message{border-radius:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.change-password .status-success{background:var(--success-surface);color:var(--success-ink);border:1px solid var(--success-line)}.change-password .status-error{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line)}
.two-factor-settings{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem}.two-factor-settings h2{color:var(--text);letter-spacing:-.025em;margin-bottom:1rem;font-size:1.5rem;font-weight:700;line-height:2rem}.two-factor-settings .form-group{margin-bottom:1.25rem}.two-factor-settings .form-group label{color:var(--text);letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:block}.two-factor-settings .form-group input{border-width:1px;border-color:var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:.5rem;padding:.75rem 1rem;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.two-factor-status-line{color:var(--text);margin-bottom:1rem;font-size:.875rem;line-height:1.25rem}.two-factor-on{color:var(--success-ink)}.two-factor-off{color:var(--text-muted)}.two-factor-action-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.two-factor-action-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.two-factor-action-button{cursor:pointer;background:var(--primary);border:none}.two-factor-action-button:hover{background:var(--primary-hover)}.two-factor-action-button.two-factor-danger{background:var(--danger)}.two-factor-action-button.two-factor-danger:hover{background:var(--danger-hover)}.two-factor-cancel-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-left:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.two-factor-cancel-link:hover{color:var(--text);text-decoration-line:underline}.two-factor-qr{border-width:1px;border-color:var(--border);border-radius:.5rem;width:200px;height:200px;margin-top:1rem;margin-bottom:1rem}.two-factor-manual-key{word-break:break-all;color:var(--text-muted);margin-bottom:1rem;font-size:.875rem;line-height:1.25rem}.two-factor-manual-key code{background:var(--surface-2);border-radius:.25rem;padding:.25rem .5rem}.two-factor-backup-warning{--tw-border-opacity:1;border-width:1px;border-color:rgb(254 240 138/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1));color:var(--text);border-radius:.5rem;margin-bottom:1rem;padding:.75rem;font-size:.875rem;line-height:1.25rem}.two-factor-backup-list{background:var(--surface-2);border-width:1px;border-color:var(--border);border-radius:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:1rem;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem;display:grid}.two-factor-settings .status-message{border-radius:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.two-factor-settings .status-success{background:var(--success-surface);color:var(--success-ink);border:1px solid var(--success-line)}.two-factor-settings .status-error{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line)}
.user-registration{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem}.user-registration h2{color:var(--text);letter-spacing:-.025em;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700;line-height:2rem}.user-registration form>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text);letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:block}.form-group input[type=text],.form-group input[type=password]{border-width:1px;border-color:var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:.5rem;padding:.75rem 1rem;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.form-group.checkbox{align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.form-group.checkbox input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);border-color:var(--border);cursor:pointer;border-radius:.25rem;flex-shrink:0;margin-top:.125rem}.form-group.checkbox label{cursor:pointer;color:var(--text);margin:0;font-size:.875rem;line-height:1.5}.password-requirements{background:var(--surface-2);border-width:1px;border-color:var(--border);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.password-requirements p{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem}.password-requirements p:last-child{margin-bottom:0}.password-requirements p{color:var(--text-muted);align-items:center;gap:.5rem;font-weight:500;display:flex}.register-button{--tw-text-opacity:1;width:100%;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;margin-top:1rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.register-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.register-button{cursor:pointer;background:var(--success);border:none}.register-button:hover{background:var(--success-hover)}.status-message{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line);border-radius:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.status-message:empty{display:none}
.reset-user-password{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem}.reset-user-password h2{color:var(--text);letter-spacing:-.025em;margin-bottom:1rem;font-size:1.5rem;font-weight:700;line-height:2rem}.admin-notice{background:var(--warning-surface);color:var(--warning-ink);border:1px solid var(--warning-line);border-radius:.5rem;margin-bottom:1.5rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.reset-user-password form>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.reset-user-password .form-group{margin-bottom:1.25rem}.reset-user-password .form-group label{color:var(--text);letter-spacing:.025em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:block}.reset-user-password .form-group input[type=password],.reset-user-password .form-group input[type=text]{border-width:1px;border-color:var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);border-radius:.5rem;padding:.75rem 1rem;font-size:.95rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.reset-user-password .password-requirements{background:var(--surface-2);border-width:1px;border-color:var(--border);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.reset-user-password .password-requirements p{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;display:flex}.reset-user-password .password-requirements p:last-child{margin-bottom:0}.reset-user-password .password-requirements p{color:var(--text-muted);font-weight:500}.reset-user-password .form-group.checkbox{align-items:flex-start;gap:.5rem;margin-bottom:1rem;display:flex}.reset-user-password .form-group.checkbox input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);border-color:var(--border);cursor:pointer;border-radius:.25rem;flex-shrink:0;margin-top:.125rem}.reset-user-password .form-group.checkbox label{cursor:pointer;color:var(--text);margin:0;font-size:.875rem;line-height:1.5}.reset-password-button{--tw-text-opacity:1;width:100%;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;margin-top:.5rem;padding:.75rem 1.25rem;font-weight:600;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.reset-password-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.reset-password-button{cursor:pointer;background:var(--warning);border:none}.reset-password-button:hover{background:var(--warning-hover)}.reset-password-button:disabled{opacity:.6;cursor:not-allowed}.reset-user-password .status-message{background:var(--danger-surface);color:var(--danger-ink);border:1px solid var(--danger-line);border-radius:.5rem;margin-top:1rem;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.reset-user-password .status-message:empty{display:none}
.notif-bell-wrapper{align-items:center;display:inline-flex;position:relative}.notif-bell-button{cursor:pointer;width:2.5rem;height:2.5rem;color:var(--text-muted);background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex;position:relative}.notif-bell-button:hover{background:var(--surface-2);color:var(--text)}.bell-icon{width:1.375rem;height:1.375rem}.notif-badge{background:var(--danger);color:#fff;pointer-events:none;border:2px solid var(--surface);border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.625rem;font-weight:700;line-height:1;display:flex;position:absolute;top:.25rem;right:.25rem}.notif-dropdown{background:var(--surface);border:1px solid var(--border);width:17rem;box-shadow:var(--shadow-lg);z-index:200;border-radius:.75rem;animation:.15s ease-out notifSlideIn;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden}@keyframes notifSlideIn{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.notif-dropdown-header{border-bottom:1px solid var(--border);background:linear-gradient(to right, var(--surface-header-from), var(--surface-header-to));justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.notif-dropdown-title{color:var(--text);letter-spacing:-.01em;font-size:.8125rem;font-weight:700}.notif-clear-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:500;transition:color .15s}.notif-clear-btn:hover{color:var(--primary-hover);text-decoration:underline}.notif-empty{text-align:center;color:var(--text-subtle);padding:1.25rem 1rem;font-size:.8125rem}.notif-list{max-height:16rem;margin:0;padding:0;list-style:none;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.625rem 1rem;transition:background .1s;display:flex}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--surface-2)}.notif-item-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin-right:.5rem;font-size:.8125rem;font-weight:600;overflow:hidden}.notif-item-time{color:var(--text-subtle);white-space:nowrap;flex-shrink:0;font-size:.6875rem}.notif-item--hot{background:color-mix(in srgb, var(--danger) 10%, transparent);border-left:3px solid var(--danger);padding-left:calc(1rem - 3px)}.notif-hot-badge{color:#fff;background:var(--danger);letter-spacing:.05em;vertical-align:middle;border-radius:999px;flex-shrink:0;align-items:center;margin-left:.375rem;padding:1px 5px;font-size:.6rem;font-weight:800;animation:1.5s ease-in-out infinite hotPulse;display:inline-flex}@keyframes hotPulse{0%,to{opacity:1}50%{opacity:.55}}
.theme-toggle{cursor:pointer;width:2.5rem;height:2.5rem;color:var(--text);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:.5rem;justify-content:center;align-items:center;font-size:1.15rem;line-height:1;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}.theme-toggle:hover{background:var(--surface-2);border-color:var(--border-strong)}
.client-page-container{background:linear-gradient(to bottom, var(--bg-page-top), var(--bg-page-bottom));width:100%;min-height:100vh;padding-left:1.5rem;padding-right:1.5rem}.theme-toggle-floating{z-index:20;position:fixed;top:1rem;right:1rem}.login-logo{-o-object-fit:contain;object-fit:contain;z-index:3;width:auto;max-width:260px;height:auto;max-height:120px;margin:8vh auto 1.5rem;display:block;position:relative}.login-logo-fallback{text-align:center;color:var(--text-strong);margin:1.25rem auto .35rem;font-size:1.5rem;font-weight:700;line-height:2rem}@media (max-width:640px){.login-logo{max-width:180px;max-height:85px;margin:1rem auto -1.75rem}.login-logo-fallback{margin:.9rem auto .35rem;font-size:1.25rem;line-height:1.75rem}}.dashboard-header{justify-content:space-between;align-items:center;margin-top:1rem;margin-bottom:1rem;padding-top:0;padding-left:1rem;padding-right:1rem;display:flex}.no-logo .dashboard-header{margin-top:1.5rem}.no-logo .dashboard-container{margin-top:0}.brand{align-items:center;gap:.75rem;min-width:0;display:flex}.brand-logo{-o-object-fit:contain;object-fit:contain;flex-shrink:0;width:auto;max-width:200px;height:auto;max-height:80px}.brand-logo-fallback{color:var(--text-strong);font-size:1.5rem;font-weight:700;line-height:2rem}@media (max-width:640px){.brand-logo{max-width:140px;max-height:56px}}.logout-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.625rem 1.25rem;font-weight:500;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.logout-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.logout-button{cursor:pointer;background:var(--danger);border:none}.logout-button:hover{background:var(--danger-hover)}.loading{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;font-size:1.25rem;font-weight:500;line-height:1.75rem;display:flex}.header-actions{align-items:center;gap:.75rem;display:flex}.settings-button{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);border-radius:.5rem;padding:.625rem 1.25rem;font-weight:500;transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.settings-button:hover{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.settings-button{cursor:pointer;background:var(--primary);border:none}.settings-button:hover{background:var(--primary-hover)}.settings-modal{background:var(--overlay);z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal-content{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);width:100%;max-width:32rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow);background:var(--surface);border:1px solid var(--border);border-radius:.75rem;animation:.2s ease-out modalSlideIn;overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.settings-modal-header{border-bottom:1px solid var(--border);background:linear-gradient(to right, var(--surface-header-from), var(--surface-header-to));justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.settings-modal-header h2{color:var(--text-strong);letter-spacing:-.025em;font-size:1.25rem;font-weight:700;line-height:1.75rem}.settings-close-button{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.75rem;line-height:1;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.settings-close-button:hover{color:var(--text-muted)}.tfa-prompt-body{color:var(--text);padding:1.25rem 1.5rem}.tfa-prompt-body p{margin-bottom:.75rem}.tfa-prompt-hint{color:var(--text-muted);font-size:.875rem;line-height:1.25rem}.tfa-prompt-actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.tfa-prompt-button-primary{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));background:var(--primary-hover);cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.tfa-prompt-button-primary:hover{opacity:.9}.tfa-prompt-button-secondary{color:var(--text-muted);background:var(--surface-2);cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.tfa-prompt-button-secondary:hover{color:var(--text-strong);background:var(--surface-3)}.settings-tabs{border-bottom:1px solid var(--border);background:var(--surface-2);display:flex}.settings-tab-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.25rem;transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.settings-tab-button:hover{color:var(--text-strong)}.settings-tab-button.active{color:var(--primary);border-bottom-color:var(--primary);background:var(--surface)}.settings-tab-content{padding:1.5rem}.notif-settings{flex-direction:column;gap:.5rem;display:flex}.notif-settings-label{color:var(--text);font-size:.875rem;font-weight:600}.notif-settings-hint{color:var(--text-muted);margin:0;font-size:.8125rem}.notif-settings-select{border:1px solid var(--input-border);color:var(--text);background:var(--input-bg);cursor:pointer;border-radius:.5rem;width:fit-content;min-width:220px;margin-top:.25rem;padding:.5rem .75rem;font-size:.875rem}.notif-settings-select:focus{border-color:var(--primary);outline:none}
