.auth-layout .card{display:flex;width:100%;max-width:340px;flex-direction:column;align-items:center;gap:0px;border-radius:20px;--tw-bg-opacity: 1;background-color:rgb(238 243 250 / var(--tw-bg-opacity, 1));padding:40px 36px;--tw-shadow: inset 0 2px 18px #0000001f;--tw-shadow-colored: inset 0 2px 18px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.auth-layout .btn-primary{width:100%;border-radius:.5rem;border-style:none;--tw-bg-opacity: 1;background-color:rgb(36 54 71 / var(--tw-bg-opacity, 1));padding:.75rem 1.5rem;font-weight:700;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));--tw-shadow: 2px 2px 12px #0000004d;--tw-shadow-colored: 2px 2px 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);transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}.auth-layout .btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(58 88 120 / var(--tw-bg-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.auth-layout .btn-outline{width:100%;border-radius:.5rem;border-width:1.5px;--tw-border-opacity: 1;border-color:rgb(36 54 71 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.75rem 1.5rem;font-weight:700;--tw-text-opacity: 1;color:rgb(36 54 71 / var(--tw-text-opacity, 1));transition-property:background-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}.auth-layout .btn-outline:hover{background-color:#2436470d;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.auth-layout .form-input{box-sizing:border-box;width:100%;border-radius:10px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(189 195 200 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:8px 14px;font-size:15px;--tw-text-opacity: 1;color:rgb(36 54 71 / var(--tw-text-opacity, 1));outline:2px solid transparent;outline-offset:2px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.auth-layout .form-input:focus{--tw-border-opacity: 1;border-color:rgb(36 54 71 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.auth-layout .form-checkbox{height:15px;width:15px;flex-shrink:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:4px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(36 54 71 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.auth-layout .form-checkbox:focus{--tw-border-opacity: 1;border-color:rgb(36 54 71 / var(--tw-border-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 0px}.auth-layout .form-checkbox:checked{--tw-bg-opacity: 1;background-color:rgb(36 54 71 / var(--tw-bg-opacity, 1))}.auth-layout .form-label{width:100%;font-size:15px;font-weight:500;--tw-text-opacity: 1;color:rgb(36 54 71 / var(--tw-text-opacity, 1))}.auth-layout .form-remember{margin-top:6px;display:flex;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:14px;--tw-text-opacity: 1;color:rgb(36 54 71 / var(--tw-text-opacity, 1))}.auth-layout .input-error{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.auth-layout .form-input.error{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.auth-layout .form-input.error:focus{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1));--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(254 202 202 / var(--tw-ring-opacity, 1))}.auth-layout .app-header{position:sticky;top:0;z-index:20;display:flex;height:52px;align-items:center;justify-content:space-between;gap:10px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;--tw-shadow: 0 4px 12px #00000026;--tw-shadow-colored: 0 4px 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);transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(.16,1,.3,1)}.auth-layout .quick-add-wrap{position:fixed;top:52px;left:0;z-index:19;width:100%;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 -4px 12px #00000026;--tw-shadow-colored: 0 -4px 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);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(.16,1,.3,1);padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));transform:translateY(calc(100dvh - 52px - 100%));will-change:transform}.auth-layout .quick-add-bar{display:flex;flex-direction:column;overflow:hidden;border-radius:.5rem;border-width:0px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: inset 0 0 8px #00000040;--tw-shadow-colored: inset 0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.auth-layout .quick-add-input{max-height:160px;min-height:72px;width:100%;resize:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow-y:auto;border-width:0px;background-color:transparent;padding:.75rem .75rem .5rem;font-size:14.5px;line-height:1.55;--tw-text-opacity: 1;color:rgb(17 17 17 / var(--tw-text-opacity, 1));outline:2px solid transparent;outline-offset:2px}.auth-layout .quick-add-input:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.auth-layout .quick-add-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:6px 8px 8px}.auth-layout .quick-add-mic-btn{display:flex;height:38px;width:38px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;border-radius:6px;border-width:1.5px;--tw-border-opacity: 1;border-color:rgb(36 54 71 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(36 54 71 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.auth-layout .quick-add-send{display:flex;height:38px;width:38px;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;border-radius:6px;border-width:0px;--tw-bg-opacity: 1;background-color:rgb(36 54 71 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}.auth-layout .quick-add-send:disabled{pointer-events:none;cursor:default;opacity:.35}.auth-layout .ui-input{height:58px;width:100%;border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1));padding:.75rem 1.25rem;font-size:20px;--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1));--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}.auth-layout .ui-input:focus{--tw-border-opacity: 1;border-color:rgb(148 163 184 / var(--tw-border-opacity, 1));--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.auth-layout{--color-bg: #f5f5f7;--color-surface: #ffffff;--color-border: #e4e4e7;--color-text-primary: #111111;--color-text-secondary: #6b7280;--color-accent: #243647;--color-accent-hover: #3a5878;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--header-height: 52px;--nav-height: 40px;--radius: 12px}.auth-layout .app-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%;background:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-sans)}.auth-layout .app-shell--docked,.auth-layout .app-shell--detail{height:100dvh;overflow:hidden}.auth-layout .app-header{position:sticky;top:0;z-index:20;height:var(--header-height);background:var(--color-surface);box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:10px}.auth-layout .app-header--docked,.auth-layout .app-header--no-shadow,.auth-layout .app-header--detail{box-shadow:none}.auth-layout .app-header--detail{display:grid;grid-template-columns:1fr auto 1fr}.auth-layout .header-actions{display:flex;align-items:center;gap:8px}.auth-layout .btn--logout{background:#fff;color:#243647;border:1.5px solid #243647}.auth-layout .btn--logout:hover{background:#f4f6f8}.auth-layout .btn--header-primary,.auth-layout .btn--primary{background:#243647;color:#fff}.auth-layout .btn--header-primary:hover,.auth-layout .btn--primary:hover{background:#3a5878}.auth-layout .btn--danger{background:#dc2626;color:#fff}.auth-layout .quick-add-wrap{position:fixed;top:var(--header-height);left:0;width:100%;background:#fff;box-shadow:0 -4px 12px #00000026;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));z-index:19;transform:translateY(calc(100dvh - var(--header-height) - 100%))}.auth-layout .quick-add-wrap--docked{position:relative;top:auto;left:auto;transform:none;box-shadow:0 8px 10px #00000026;z-index:auto;flex-shrink:0}.auth-layout .quick-add-input{width:100%;min-height:72px;max-height:160px;padding:12px 12px 8px;background:transparent;border:none;font-size:14.5px;font-family:inherit;line-height:1.55;color:var(--color-text-primary);outline:none;resize:none;overflow-y:auto}.auth-layout .quick-add-mic-btn{flex-shrink:0;width:38px;height:38px;border-radius:6px;border:1.5px solid #243647;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#243647;transition:background .12s,color .12s;-webkit-tap-highlight-color:transparent}.auth-layout .quick-add-send{flex-shrink:0;width:38px;height:38px;background:#243647;color:#fff;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.auth-layout .quick-add-footer{position:fixed;bottom:0;left:0;width:100%;display:flex;justify-content:flex-end;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -4px 12px #00000026;z-index:19;opacity:0;pointer-events:none}.auth-layout .quick-add-footer--visible{position:relative;bottom:auto;left:auto;opacity:1;pointer-events:auto;flex-shrink:0}.auth-layout .quick-add-footer-cancel,.auth-layout .quick-add-footer-confirm{padding:10px 20px;font-size:15px;font-family:inherit;font-weight:500;border-radius:8px;cursor:pointer}.auth-layout .tab-bar{display:flex;border-bottom:1px solid var(--color-border);background:#fff;padding:0 12px;gap:4px;flex-shrink:0;position:sticky;top:var(--header-height);z-index:15}.auth-layout .tab-btn{background:none;border:none;border-bottom:2px solid transparent;padding:10px 14px 9px;font-size:13.5px;font-weight:500;color:#111;cursor:pointer}.auth-layout .tab-btn--active{color:#111;border-bottom-color:#111}.auth-layout .search-bar{position:sticky;top:calc(var(--header-height) + var(--nav-height));z-index:10;background:var(--color-surface);padding:6px 16px 10px;border-bottom:1px solid var(--color-border);box-shadow:0 8px 10px #00000026}.auth-layout .search-input{width:100%;height:38px;padding:6px 34px 0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;font-size:15px;color:var(--color-text-primary);outline:none}.auth-layout .contact-list{flex:1;overflow-y:auto;padding:12px 16px 160px;display:flex;flex-direction:column;gap:8px;background:#f6f9ff}.auth-layout .contact-list--docked{padding:0}.auth-layout .contact-row{display:flex;align-items:flex-start;gap:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:14px 16px;min-height:72px;cursor:pointer;transition:background .1s}.auth-layout .contact-info{flex:1;min-width:0;display:flex;flex-direction:column}.auth-layout .contact-name{font-size:15px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-layout .form-input{height:44px;padding:0 14px;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:10px;font-size:15px;color:var(--color-text-primary);outline:none;font-family:var(--font-sans);-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;transition:border-color .15s,background .15s}.auth-layout .form-input:focus{border-color:#243647;background:#fff}.auth-layout .form-input--error{border-color:#e53e3e}.auth-layout .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-layout .search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:#6b7280;font-size:22px;line-height:1;cursor:pointer}.auth-layout .quick-add-bar--listening{border-color:#243647;box-shadow:0 0 0 2px #24364714,0 6px 22px #0f172a1f}.auth-layout .quick-add-mic-btn--active{background:#243647;color:#fff}.auth-layout .quick-add-listening-hint,.auth-layout .quick-add-error{margin:8px 12px 0;font-size:13px;color:#6b7280}.auth-layout .quick-add-error{color:#e53e3e}.auth-layout .lead-source-custom{margin-top:8px}.auth-layout .import-error{padding:10px 12px;border-radius:8px;background:#fff5f5;color:#e53e3e;font-size:13px}.auth-layout .import-preview-info{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 0 2px}.auth-layout .import-preview-count{font-size:15px;font-weight:700;color:#111827}.auth-layout .import-skipped{font-size:12px;color:#6b7280}.auth-layout .import-preview-list{max-height:330px;overflow:auto;display:flex;flex-direction:column;gap:8px}.auth-layout .import-preview-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.auth-layout .import-preview-avatar{width:38px;height:38px;border-radius:999px;background:#eef0ff;color:#4057b8;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 auto}.auth-layout .import-preview-info-cell{min-width:0;flex:1}.auth-layout .import-preview-name{font-size:14px;font-weight:700;color:#111827}.auth-layout .import-preview-sub{font-size:12px;color:#8b95a5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-layout .import-preview-source{font-size:12px;color:#243647;background:#f3f4f6;border-radius:999px;padding:3px 8px}.auth-layout .import-actions{display:flex;justify-content:flex-end;gap:10px}.auth-layout .form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer}.auth-layout .form-error{font-size:12px;color:#e53e3e}.auth-layout .detail-hero{position:sticky;top:0;z-index:10;width:100%;display:flex;flex-direction:row;align-items:center;padding:20px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 8px 10px #00000026;gap:14px}.auth-layout .detail-avatar{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:#e8eaf6;color:#3949ab;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center}.auth-layout .detail-name-input,.auth-layout .detail-input,.auth-layout .detail-select{width:100%;padding:11px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;font-size:15px;color:var(--color-text-primary);outline:none;font-family:var(--font-sans);box-sizing:border-box;transition:border-color .15s,background .15s}.auth-layout .detail-name-input:focus,.auth-layout .detail-input:focus,.auth-layout .detail-select:focus{border-color:#243647;background:#fff}.auth-layout .detail-name-input{padding:10px 14px;font-weight:500}.auth-layout .detail-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:32px}.auth-layout .birthday-selects .detail-input,.auth-layout .birthday-selects .detail-select{flex:1;width:auto}.auth-layout .detail-back{justify-self:end;display:flex;align-items:center;gap:3px;background:none;border:none;cursor:pointer;font-size:15px;font-weight:400;color:var(--color-text-secondary);padding:6px 0}.auth-layout .delete-confirm-title{font-size:17px;font-weight:600;margin-bottom:6px}.auth-layout .import-body{padding:20px;display:flex;flex-direction:column}.auth-layout .import-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--color-border);border-radius:var(--radius);padding:32px 20px;cursor:pointer;text-align:center}.auth-layout .import-icon{margin-bottom:6px}.auth-layout .import-dropzone-title{font-size:15px;font-weight:600}.auth-layout .fu-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#111}.auth-layout .fu-section-count{font-size:12px;font-weight:600;background:#243647;color:#fff;border-radius:20px;padding:1px 7px;line-height:1.5}.auth-layout .fu-empty-text{font-size:13px;color:var(--color-text-secondary)}.auth-layout .fu-due-chip{font-size:11px;font-weight:600;background:#f3f4f6;color:#6b7280;border-radius:20px;padding:2px 8px;white-space:nowrap}.auth-layout .fud-step-badge{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);font-size:13px}.auth-layout .fud-step-seq{font-weight:600}.auth-layout .fud-message-label{font-size:13px;font-weight:600;color:#111;text-transform:uppercase;letter-spacing:.04em}.auth-layout .fud-message-textarea{width:100%;border:1px solid var(--color-border);border-radius:12px;padding:12px;font-size:14px;font-family:inherit;line-height:1.55;color:#111;background:#fff;resize:vertical;min-height:130px;outline:none}.auth-layout{--color-bg: #f5f5f7;--color-surface: #ffffff;--color-border: #e4e4e7;--color-text-primary: #111111;--color-text-secondary: #6b7280;--color-accent: #3b5bdb;--color-accent-hover: #2f4ac2;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--header-height: 52px;--nav-height: 40px;--radius: 12px;--bg: var(--color-bg);--border: var(--color-border);--text: var(--color-text-primary);--text-muted: var(--color-text-secondary);--accent: #111111}html,.auth-layout,#app{height:100%;width:100%}.auth-layout{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-layout .app-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%;background-color:var(--color-bg)}.auth-layout .app-shell--detail{height:100dvh;overflow:hidden}.auth-layout .app-header{position:sticky;top:0;z-index:20;height:var(--header-height);background-color:var(--color-surface);box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:10px;transition:box-shadow .3s cubic-bezier(.16,1,.3,1)}.auth-layout .app-header--no-shadow,.auth-layout .app-header--detail{box-shadow:none}.auth-layout .app-header--detail{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.auth-layout .app-logo{height:36px;width:auto;display:block;cursor:pointer}.auth-layout .header-actions{display:flex;align-items:center;gap:8px;transition:opacity .2s ease}.auth-layout .btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:none;border-radius:8px;cursor:pointer;font-family:var(--font-sans);font-weight:600;font-size:14px;padding:8px 14px;transition:background .12s,opacity .12s;-webkit-tap-highlight-color:transparent}.auth-layout .btn--sm{font-size:14px;padding:8px 16px;border-radius:8px}.auth-layout .btn--primary{background:#243647;color:#fff}.auth-layout .btn--primary:hover{background:#3a5878}.auth-layout .btn--primary:disabled{opacity:.5;cursor:default}.auth-layout .btn--ghost{background:transparent;color:#243647;border:1.5px solid #243647}.auth-layout .btn--ghost:hover{background:#2436470d}.auth-layout .btn--header-primary{background:#243647;color:#fff;border:none;transition:background-color .15s ease}.auth-layout .btn--header-primary:hover{background:#3a5878}.auth-layout .quick-add-wrap{position:fixed;top:var(--header-height);left:0;width:100%;background:#fff;box-shadow:0 -4px 12px #00000026;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));z-index:19;transform:translateY(calc(100dvh - var(--header-height) - 100%));will-change:transform;transition:transform .3s cubic-bezier(.16,1,.3,1)}.auth-layout .quick-add-bar{display:flex;flex-direction:column;background:#fff;border:none;border-radius:8px;box-shadow:inset 0 0 8px #00000040;overflow:hidden;transition:border-color .15s}.auth-layout .quick-add-bar:focus-within{border-color:#243647}.auth-layout .quick-add-input{width:100%;min-height:72px;max-height:160px;padding:12px 12px 8px;background:transparent;border:none;font-size:14.5px;font-family:inherit;line-height:1.55;color:var(--color-text-primary);outline:none;resize:none;overflow-y:auto;-webkit-appearance:none}.auth-layout .quick-add-input::-moz-placeholder{color:#919aa3}.auth-layout .quick-add-input::placeholder{color:#919aa3}.auth-layout .quick-add-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:6px 8px 8px}.auth-layout .quick-add-mic-btn,.auth-layout .quick-add-send{flex-shrink:0;width:38px;height:38px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.auth-layout .quick-add-mic-btn{border:1.5px solid #243647;background:#fff;color:#243647;transition:background .12s,color .12s}.auth-layout .quick-add-mic-btn:hover{background:#2436470f}.auth-layout .quick-add-send{background:#243647;color:#fff;border:none;transition:background .15s ease}.auth-layout .quick-add-send:hover:not(:disabled){background:#3a5878}.auth-layout .quick-add-send:disabled{opacity:.35;cursor:default;pointer-events:none}.auth-layout .tab-bar{display:flex;border-bottom:1px solid var(--border);background:#fff;padding:0 12px;gap:4px;flex-shrink:0;position:sticky;top:var(--header-height);z-index:15}.auth-layout .tab-bar--shadow{box-shadow:0 8px 10px #00000026}.auth-layout .tab-btn{background:none;border:none;border-bottom:2px solid transparent;padding:10px 14px 9px;font-size:13.5px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s;display:flex;align-items:center;gap:6px}.auth-layout .tab-btn:hover{color:var(--text)}.auth-layout .tab-btn--active{color:var(--accent);border-bottom-color:var(--accent)}.auth-layout .search-bar{position:sticky;top:calc(var(--header-height) + var(--nav-height));z-index:10;background-color:var(--color-surface);padding:6px 16px 10px;border-bottom:1px solid var(--color-border);box-shadow:0 8px 10px #00000026}.auth-layout .search-input-wrap{position:relative;display:flex;align-items:center}.auth-layout .search-icon{position:absolute;left:10px;width:16px;height:16px;color:var(--color-text-secondary);pointer-events:none}.auth-layout .search-input{width:100%;height:38px;padding:6px 34px 0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;font-size:15px;color:var(--color-text-primary);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.auth-layout .search-input::-moz-placeholder{color:var(--color-text-secondary)}.auth-layout .search-input::placeholder{color:var(--color-text-secondary)}.auth-layout .search-input:focus{border-color:#a0aec0;background:#fff}.auth-layout .contact-list{flex:1;overflow-y:auto;padding:12px 16px 160px;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;background:#f6f9ff}.auth-layout .contact-row{display:flex;align-items:flex-start;gap:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:14px 16px;min-height:72px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .1s}.auth-layout .contact-row:active{background:#f0f0f3}.auth-layout .contact-avatar{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:#e8eaf6;color:#3949ab;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;letter-spacing:.3px}.auth-layout .contact-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:0}.auth-layout .contact-top{display:flex;align-items:center;justify-content:space-between;gap:8px;line-height:1.2}.auth-layout .contact-name{font-size:15px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.auth-layout .contact-phone{font-size:13px;color:var(--color-text-secondary);line-height:1.2;margin-top:2px}.auth-layout .contact-meta{font-size:12px;color:#9ca3af;line-height:1.2;margin-top:2px}.auth-layout .tag{flex-shrink:0;font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px;white-space:nowrap}.auth-layout .tag--referral{background:#dcfce7;color:#166534}.auth-layout .tag--linkedin{background:#dbeafe;color:#1e40af}.auth-layout .tag--coldcall{background:#fef9c3;color:#854d0e}.auth-layout .tag--event{background:#fce7f3;color:#9d174d}.auth-layout .tag--website{background:#f3e8ff;color:#6b21a8}.auth-layout .tag--zillow{background:#fee2e2;color:#991b1b}.auth-layout .tag--openhouse{background:#ffedd5;color:#9a3412}.auth-layout .tag--sphere{background:#ccfbf1;color:#115e59}.auth-layout .tag--other{background:#f1f5f9;color:#475569}.auth-layout .contact-chevron{flex-shrink:0;width:16px;height:16px;color:#c4c4c8;align-self:center;margin-left:2px}.auth-layout .empty-contacts{display:flex;flex-direction:column;align-items:center;padding:8px 18px;gap:12px;text-align:center}.auth-layout .empty-contacts-heading{font-size:20px;font-weight:700;color:#243647;letter-spacing:-.3px}.auth-layout .empty-contacts-sub{font-size:15px;color:#243647;line-height:1.6;max-width:300px;font-weight:400;margin-top:-4px}.auth-layout .empty-contacts-arrow{margin-top:4px;opacity:.8}.auth-layout .modal-overlay{position:fixed;inset:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center}.auth-layout .modal-sheet{width:100%;max-width:430px;background:var(--color-surface);border-radius:20px 20px 0 0;padding:0 0 env(safe-area-inset-bottom,16px);max-height:90dvh;overflow-y:auto;animation:slide-up .22s ease-out}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.auth-layout .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--color-border)}.auth-layout .modal-title{font-size:16px;font-weight:700}.auth-layout .modal-close{background:none;border:none;cursor:pointer;font-size:22px;color:var(--color-text-secondary);line-height:1;padding:0 4px}.auth-layout .modal-form{display:flex;flex-direction:column;gap:16px;padding:20px}.auth-layout .form-field{display:flex;flex-direction:column;gap:5px}.auth-layout .form-label{font-size:13px;font-weight:600;color:var(--color-text-primary)}.auth-layout .form-optional{font-weight:400;color:var(--color-text-secondary)}.auth-layout .form-input{height:44px;padding:0 14px;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:10px;font-size:15px;color:var(--color-text-primary);outline:none;font-family:var(--font-sans);-webkit-appearance:none;-moz-appearance:none;appearance:none}.auth-layout .form-select,.auth-layout .detail-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer}.auth-layout .form-row{display:flex;gap:10px}.auth-layout .form-row .form-input{flex:1}.auth-layout .form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.auth-layout .form-actions .btn{min-width:90px}.auth-layout .import-sheet{max-height:88dvh;overflow:hidden;display:flex;flex-direction:column}.auth-layout .import-body{padding:20px;display:flex;flex-direction:column;align-items:stretch}.auth-layout .import-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--color-border);border-radius:var(--radius);padding:32px 20px;cursor:pointer;text-align:center;transition:border-color .15s,background .15s;-webkit-tap-highlight-color:transparent}.auth-layout .import-dropzone:hover,.auth-layout .import-dropzone:focus-visible{border-color:#243647;background:#f6f9ff;outline:none}.auth-layout .import-icon{width:240px;height:240px;margin-bottom:6px;border-radius:72px;background:#f4f7fc;display:flex;align-items:center;justify-content:center;color:#243647}.auth-layout .import-dropzone-title{font-size:15px;font-weight:600;color:var(--color-text-primary)}.auth-layout .import-dropzone-sub{font-size:13px;color:var(--color-text-secondary)}.auth-layout .import-formats{margin-top:4px;font-size:12px;font-weight:600;color:#243647;letter-spacing:.3px}.auth-layout .import-hint{margin-top:14px;font-size:12px;color:var(--color-text-secondary);line-height:1.5;padding:10px 14px;background:var(--color-bg);border-radius:8px}.auth-layout .detail-screen{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;background:var(--color-bg);width:100%}.auth-layout .detail-back{justify-self:end;display:flex;align-items:center;gap:3px;background:none;border:none;cursor:pointer;font-size:15px;font-weight:400;color:var(--color-text-secondary);padding:6px 0;white-space:nowrap}.auth-layout .detail-hero{position:sticky;top:0;z-index:10;width:100%;display:flex;flex-direction:row;align-items:center;padding:20px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:0 8px 10px #00000026;gap:14px;box-sizing:border-box}.auth-layout .detail-avatar{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:#e8eaf6;color:#3949ab;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:.5px}.auth-layout .detail-hero-right{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.auth-layout .detail-name-input{width:100%;padding:10px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;font-size:15px;font-weight:500;color:var(--color-text-primary);outline:none;font-family:var(--font-sans);box-sizing:border-box}.auth-layout .detail-name-input:focus{border-color:var(--color-accent);background:#fff}.auth-layout .detail-fields{flex:1;display:flex;flex-direction:column;gap:12px;padding:16px;overflow-y:auto}.auth-layout .detail-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:20px 16px;display:flex;flex-direction:column;gap:16px}.auth-layout .detail-field{display:flex;flex-direction:column;gap:6px}.auth-layout .detail-label{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.auth-layout .detail-input,.auth-layout .detail-select{width:100%;padding:11px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;font-size:15px;color:var(--color-text-primary);outline:none;font-family:var(--font-sans);box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.auth-layout .detail-input:focus,.auth-layout .detail-select:focus{border-color:var(--color-accent);background:#fff}.auth-layout .detail-textarea{resize:none;line-height:1.55;height:auto}.auth-layout .birthday-selects{display:flex;gap:8px}.auth-layout .birthday-selects .detail-input,.auth-layout .birthday-selects .detail-select,.auth-layout .birthday-selects .form-input{flex:1;width:auto}.auth-layout .detail-footer{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;background:#fff;box-shadow:0 -4px 12px #00000014;flex-shrink:0}.auth-layout .detail-footer-right{display:flex;gap:8px}.auth-layout .detail-delete-btn{padding:10px 4px;background:none;border:none;color:#dc2626;font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer}.auth-layout .delete-confirm-overlay{position:fixed;inset:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.auth-layout .delete-confirm-modal{background:#fff;border-radius:16px;padding:24px 20px 20px;width:100%;max-width:320px;box-shadow:0 20px 60px #0003}.auth-layout .delete-confirm-title{font-size:17px;font-weight:600;color:var(--color-text-primary);margin-bottom:6px}.auth-layout .delete-confirm-body{font-size:14px;color:var(--color-text-secondary);margin-bottom:20px}.auth-layout .delete-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.auth-layout .btn--danger{background:#dc2626;color:#fff;border:none}.auth-layout .btn--danger:hover{background:#b91c1c}.auth-layout .fu-main{padding-top:0}.auth-layout .fu-section-head{display:flex;align-items:center;gap:8px;padding:18px 16px 6px}.auth-layout .fu-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}.auth-layout .fu-section-count{font-size:12px;font-weight:600;background:var(--accent);color:#fff;border-radius:20px;padding:1px 7px;line-height:1.5}.auth-layout .fu-section-count--overdue{background:#dc2626}.auth-layout .fu-empty--inline{padding:12px 16px 4px}.auth-layout .fu-empty--inline .fu-empty-text{text-align:center;font-size:13px;color:var(--text)}.auth-layout .fu-due-chip{font-size:11px;font-weight:600;background:#f3f4f6;color:#6b7280;border-radius:20px;padding:2px 8px;white-space:nowrap;flex-shrink:0}.auth-layout .fu-due-chip--overdue{background:#fef2f2;color:#dc2626}.auth-layout .fud-body{flex:1;overflow-y:auto;padding:12px 16px 32px;display:flex;flex-direction:column;gap:12px;background:#f6f9ff}.auth-layout .fud-step-badge{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);font-size:13px}.auth-layout .fud-step-seq{font-weight:600;color:var(--text)}.auth-layout .fud-step-dot{color:#d1d5db}.auth-layout .fud-message-label{font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.auth-layout .fud-message-textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;padding:12px;font-size:14px;font-family:inherit;line-height:1.55;color:var(--text);background:#fff;resize:vertical;min-height:130px;outline:none;transition:border-color .15s}.auth-layout .fud-message-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11f}@media(min-width:768px){.auth-layout .modal-overlay{align-items:flex-end}}.auth-layout .app-shell--docked{height:100dvh;overflow:hidden}.auth-layout .app-header--docked{box-shadow:none}.auth-layout .header-actions--hidden{opacity:0;pointer-events:none}.auth-layout .quick-add-wrap.quick-add-wrap--docked{position:relative;top:auto;left:auto;transform:none;box-shadow:0 8px 10px #00000026;z-index:auto;flex-shrink:0}.auth-layout .quick-add-wrap--docked .quick-add-bar{border-radius:8px}.auth-layout .contact-list.contact-list--docked{justify-content:flex-start;padding:0;background:#f6f9ff}.auth-layout .quick-add-footer{position:fixed;bottom:0;left:0;width:100%;display:flex;justify-content:flex-end;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;box-shadow:0 -4px 12px #00000026;z-index:19;opacity:0;pointer-events:none;transition:opacity .25s ease;transition-delay:0ms}.auth-layout .quick-add-footer--visible{position:relative;bottom:auto;left:auto;width:100%;opacity:1;pointer-events:auto;flex-shrink:0;transition:none}.auth-layout .quick-add-footer-cancel,.auth-layout .quick-add-footer-confirm{padding:10px 20px;font-size:15px;font-family:inherit;font-weight:500;border-radius:8px;cursor:pointer;transition:background .15s ease}.auth-layout .quick-add-footer-cancel{border:1.5px solid #243647;background:#fff;color:#243647}.auth-layout .quick-add-footer-cancel:hover{background:#f4f6f8}.auth-layout .quick-add-footer-confirm{border:none;background:#243647;color:#fff}.auth-layout .quick-add-footer-confirm:hover{background:#3a5878}.auth-layout .quick-add-footer-confirm:disabled{opacity:.5;cursor:default}.auth-layout .parsed-form{display:flex;flex-direction:column;gap:16px;padding:20px 16px}.auth-layout .modal-form.parsed-form{padding:20px}.auth-layout .parsed-form .form-field{display:flex;flex-direction:column;gap:3px}.auth-layout .parsed-form .form-label{font-size:14px;font-weight:400;color:#243647}.auth-layout .parsed-form .form-input{height:48px;padding:0 14px;background:#fff;border:1px solid #BDC3C8;border-radius:8px;font-size:15px;color:#243647;outline:none;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%}.auth-layout .parsed-form .form-input:focus{border-color:#243647}.auth-layout .parsed-form .form-row{display:flex;gap:10px}.auth-layout .parsed-form .form-row .form-input{flex:1}.auth-layout .parsed-form .form-notes{height:auto;min-height:120px;padding:12px 14px;resize:none}.auth-layout .detail-save-status{display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:500;border-radius:20px;padding:3px 10px;transition:opacity .3s;min-width:68px;justify-content:center}.auth-layout .detail-save-status--idle{opacity:0;pointer-events:none}.auth-layout .detail-save-status--saving{opacity:1;color:var(--color-text-secondary);background:var(--color-bg)}.auth-layout .detail-save-status--saved{opacity:1;color:#16a34a;background:#f0fdf4}.auth-layout .detail-save-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.auth-layout .detail-save-dot--saving{background:var(--color-text-secondary);animation:pulse 1s ease-in-out infinite}.auth-layout .detail-save-dot--saved{background:#16a34a}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.auth-layout .app-shell--detail{min-height:100dvh;height:100dvh;overflow:hidden}.auth-layout .detail-screen,.auth-layout .fud-body{padding-bottom:86px}.auth-layout .detail-footer{position:fixed;left:0;right:0;bottom:0;z-index:60;min-height:64px;box-sizing:border-box}.auth-layout.app-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%;background:#f6f9ff;color:var(--color-text-primary);font-family:var(--font-sans)}.auth-layout.app-shell.app-shell--docked,.auth-layout.app-shell.app-shell--detail{height:100dvh;overflow:hidden}.auth-layout .contact-list,.auth-layout .fu-main,.auth-layout .empty-contacts{background:#f6f9ff}
