.migration-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.migration-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.migration-modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#0078d4,#005a9e);color:#fff;border-radius:12px 12px 0 0}.migration-modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.modal-close-button{background:transparent;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.modal-close-button:hover{background-color:#ffffff1a}.migration-modal-body{padding:2rem;overflow-y:auto;flex:1}.migration-modal-description{margin:0 0 1.5rem;color:#666;text-align:center;font-size:1rem}.connection-section{margin-bottom:1rem;border:1px solid #e1dfdd;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 1px 2px #0000000a;transition:border-color .2s ease,box-shadow .2s ease}.connection-section:hover:not(.storage-policy-blocked-section){border-color:#c7e0f4;box-shadow:0 2px 6px #0078d414}.connection-section:focus-within:not(.storage-policy-blocked-section){border-color:#0078d4;box-shadow:0 0 0 1px #0078d4}.connection-section.storage-policy-blocked-section,.connection-section.storage-policy-blocked-section:hover,.connection-section.storage-policy-blocked-section:focus-within{border-color:#e1dfdd;box-shadow:0 1px 2px #0000000a}.connection-section-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:1.125rem 1.25rem;margin:0;border:none;outline:none;background:#faf9f8;color:#323130;cursor:pointer;user-select:none;transition:background-color .15s ease,color .15s ease}.connection-section-header:hover{background:#f3f2f1}.connection-section-header:focus-visible{outline:2px solid #0078d4;outline-offset:-2px}.connection-section-header.storage-policy-blocked{cursor:default;color:#323130;background:#faf9f8;user-select:text}.connection-section-header.storage-policy-blocked:hover{background:#f8f9fa}.connection-section-header.expanded{background:#eff6fc;color:#004578;border-bottom:1px solid #e1dfdd}.connection-section-title{display:flex;align-items:center;gap:.75rem;flex:1}.connection-icon{font-size:1.5rem}.connection-section-title h3{margin:0;font-size:1.125rem;font-weight:600}.expand-icon{font-size:.875rem;transition:transform .2s;opacity:.7}.connection-section-header.expanded .expand-icon{opacity:1;color:#0078d4}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;margin-left:auto;margin-right:.5rem}.status-badge.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.status-badge.blocked{background:#edebe9;color:#605e5c;border:1px solid #c8c6c4}.storage-policy-title{align-items:flex-start}.storage-policy-copy{display:flex;flex-direction:column;gap:.35rem;min-width:0}.storage-policy-heading{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.storage-policy-copy p{margin:0;color:#605e5c;font-size:.9rem;line-height:1.4}.connection-section-header.expanded .status-badge.success{background:#d4edda;color:#155724;border-color:#c3e6cb}.connection-section-content{padding:1.5rem;background:#fff;animation:expandDown .3s ease-out}@keyframes expandDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333;font-size:.9rem}.form-group input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-group input:focus{border-color:#0078d4;box-shadow:0 0 0 3px #0078d41a}.form-group small{display:block;margin-top:.25rem;color:#666;font-size:.85rem}.form-actions{display:flex;gap:1rem;margin-top:1.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-start}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-primary{background:#0078d4;color:#fff}.btn-primary:hover:not(:disabled){background:#005a9e;transform:translateY(-1px);box-shadow:0 4px 12px #0078d44d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-large{padding:1rem 2rem;font-size:1.1rem;width:100%}.btn-discover{background:linear-gradient(135deg,#0078d4,#005a9e);box-shadow:0 4px 12px #0078d44d;font-weight:600}.btn-discover:hover:not(:disabled){background:linear-gradient(135deg,#005a9e,#004578);transform:translateY(-2px);box-shadow:0 6px 16px #0078d466}.saved-indicator{color:#155724;font-weight:500;display:flex;align-items:center;gap:.5rem}.migration-modal-content .message{padding:1rem;border-radius:6px;margin-top:1rem;font-size:.9rem}.migration-modal-content .message-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.migration-modal-content .message-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.migration-modal-content .message-warning{background:#fff3cd;color:#856404;border:1px solid #ffeeba}.migration-modal-footer{padding:1.5rem 2rem;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 12px 12px}.connection-locked-notice{display:flex;align-items:flex-start;gap:.875rem;padding:1rem 1.25rem;background:#f0f7ff;border:1px solid #b3d4f5;border-radius:6px;color:#004578}.connection-locked-notice .lock-icon{font-size:1.375rem;flex-shrink:0;margin-top:.1rem}.connection-locked-notice strong{display:block;font-size:.95rem;margin-bottom:.25rem}.connection-locked-notice p{margin:0;font-size:.875rem;color:#005a9e;line-height:1.4}.status-badge.neutral{background:#e9ecef;color:#495057;border:1px solid #dee2e6}.connection-section-header.expanded .status-badge.neutral{background:#fff3;color:#fff;border-color:#ffffff4d}.section-hint{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 1rem}.section-hint code{background:#f1f3f5;padding:.1rem .35rem;border-radius:3px;font-size:.85em}.storage-mode-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.storage-mode-option{display:grid;grid-template-columns:auto 1fr;gap:.2rem .6rem;align-items:start;cursor:pointer;padding:.75rem;border:1px solid #dee2e6;border-radius:6px;transition:border-color .15s ease,background .15s ease}.storage-mode-option:hover{border-color:#0078d4;background:#f8f9fa}.storage-mode-option:has(input:checked){border-color:#0078d4;background:#f3f9ff}.storage-mode-option input{grid-column:1;grid-row:1;margin-top:.2rem}.storage-mode-title{grid-column:2;grid-row:1;font-weight:600}.storage-mode-default{color:#666;font-weight:400}.storage-mode-help{grid-column:2;grid-row:2;color:#666;font-size:.875rem}@media(max-width:768px){.migration-modal-content{width:95%;max-height:95vh}.migration-modal-header,.migration-modal-body,.migration-modal-footer,.connection-section-header,.connection-section-content{padding:1rem}.form-actions{flex-direction:column;gap:.75rem}.btn{width:100%}}.third-party-notice{background:#f0f6ff;border:1px solid #c7ddff;border-radius:6px;color:#2b4a6f;padding:.6rem .85rem;margin-bottom:1.25rem;font-size:.8125rem;line-height:1.4}.third-party-notice a{color:#06c;text-decoration:underline}.route-error-page{min-height:100vh;display:grid;place-items:center;box-sizing:border-box;padding:2rem;background:#f5f5f5;color:#242424;font-family:Segoe UI,system-ui,sans-serif}.route-error-card{width:min(100%,32rem);box-sizing:border-box;padding:2.5rem;border:1px solid #e1dfdd;border-radius:.75rem;background:#fff;box-shadow:0 .25rem 1rem #00000014;text-align:center}.route-error-icon{display:grid;place-items:center;width:3rem;height:3rem;margin:0 auto 1.25rem;border-radius:50%;background:#deecf9;color:#005a9e;font-size:1.75rem;font-weight:700}.route-error-card h1{margin:0;font-size:1.5rem}.route-error-card p{margin:1rem 0 1.5rem;color:#605e5c}.route-error-card button{min-height:2.5rem;padding:.5rem 1.25rem;border:0;border-radius:.25rem;background:#0078d4;color:#fff;cursor:pointer;font:inherit;font-weight:600}.route-error-card button:hover{background:#005a9e}:root{--color-primary: #0078d4;--color-primary-light: #e7f3ff;--color-success: #28a745;--color-success-light: #d1e7dd;--color-warning: #ffc107;--color-warning-light: #fff3cd;--color-danger: #dc3545;--color-danger-light: #f8d7da;--color-info: #0066cc;--color-info-light: #cfe2ff;--color-gray-50: #f8f9fa;--color-gray-100: #f5f5f5;--color-gray-200: #e0e0e0;--color-gray-300: #dee2e6;--color-gray-400: #767676;--color-gray-500: #666;--color-gray-600: #555;--color-gray-700: #333;--color-purple: #6f42c1;--color-teal: #17a2b8;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px}.setup-container{display:flex;flex:1 0 auto;align-items:stretch;min-width:0;background:var(--color-gray-100)}.setup-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 4rem);overflow-y:auto}.sidebar-header{padding:2rem 1.5rem 1.5rem;border-bottom:1px solid #e0e0e0}.sidebar-header h2{font-size:1.5rem;color:#333;margin:0;font-weight:600}.sidebar-nav{padding:1rem 0;flex:1}.sidebar-tab{width:100%;display:flex;align-items:center;gap:.75rem;padding:.875rem 1.5rem;border:none;background:transparent;color:#666;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;text-align:left;position:relative}.sidebar-tab:hover{background:#f8f9fa;color:#333}.sidebar-tab.active{background:#e7f3ff;color:#0078d4;border-right:3px solid #0078d4}.sidebar-tab svg{flex-shrink:0}.sidebar-tab span:first-of-type{flex:1}.sidebar-subtabs{display:flex;flex-direction:column;padding-left:1rem;margin-top:.5rem;border-left:2px solid #e7f3ff;margin-left:1.5rem}.sidebar-subtab{width:100%;display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:none;background:transparent;color:#666;font-size:.875rem;font-weight:400;cursor:pointer;transition:all .2s;text-align:left;border-radius:4px;margin-bottom:.25rem}.sidebar-subtab:hover{background:#f8f9fa;color:#333}.sidebar-subtab.active{background:#e7f3ff;color:#0078d4;font-weight:500}.sidebar-subtab svg{flex-shrink:0}.sidebar-subtab span:first-of-type{flex:1}.subtab-count{padding:.125rem .375rem;border-radius:8px;font-size:.7rem;font-weight:600;background:#cfe2ff;color:#004085;min-width:20px;text-align:center}.sidebar-subtab.active .subtab-count{background:#0078d4;color:#fff}.status-indicator{padding:.125rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600}.status-indicator.success{background:#d4edda;color:#155724}.status-indicator.info{background:#cfe2ff;color:#004085}.sidebar-followups-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.2rem .6rem;border-radius:8px;font-size:.65rem;font-weight:700;letter-spacing:.5px;box-shadow:0 2px 4px #667eea66}.ai-suggestions-list{display:flex;flex-direction:column;gap:1rem}.ai-suggestion-card{padding:1.25rem;border-radius:var(--radius-lg);background:#fff;border:1px solid var(--color-gray-200);border-left:4px solid #667eea;transition:all .2s}.ai-suggestion-card:hover{box-shadow:0 2px 8px #00000014}.ai-suggestion-card.priority-high{border-left-color:#dc3545}.ai-suggestion-card.priority-medium{border-left-color:#d97706}.ai-suggestion-card.priority-low{border-left-color:#667eea}.ai-suggestion-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.ai-suggestion-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-gray-100);color:var(--color-gray-700);font-weight:700;font-size:.875rem}.ai-suggestion-badges{display:flex;gap:.5rem;align-items:center}.followup-category{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:4px;text-transform:uppercase}.followup-category.cat-usage{background:#fff3cd;color:#856404}.followup-category.cat-migration{background:#cfe2ff;color:#004085}.followup-category.cat-complexity{background:#f8d7da;color:#842029}.followup-category.cat-dependency{background:#d1e7dd;color:#0f5132}.followup-category.cat-techDebt{background:#e2e3e5;color:#41464b}.ai-suggestion-priority{font-size:.65rem;font-weight:600;padding:.15rem .5rem;border-radius:4px;text-transform:uppercase}.priority-badge-high{background:#f8d7da;color:#842029}.priority-badge-medium{background:#fff3cd;color:#856404}.priority-badge-low{background:#e2e3e5;color:#41464b}.ai-suggestion-text{font-size:1rem;line-height:1.6;color:var(--color-gray-700);margin:0}.ai-suggestion-entity{margin-top:.5rem;font-size:.8rem;color:var(--color-gray-500)}.ai-suggestion-entity code{background:var(--color-gray-100);padding:.1rem .4rem;border-radius:3px;font-size:.8rem;color:var(--color-info)}.discovery-filter-bar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);margin-bottom:1rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-label{font-size:.8rem;font-weight:600;color:var(--color-gray-500);white-space:nowrap}.filter-select{padding:.375rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--color-gray-300);font-size:.8rem;background:#fff;cursor:pointer;min-width:140px}.filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #0078d426}.filter-clear{background:none;border:1px solid var(--color-gray-300);color:var(--color-gray-500);padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;transition:all .2s}.filter-clear:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.filter-count{font-size:.8rem;color:var(--color-primary);font-weight:500;margin-left:auto}.setup-content{flex:1;min-width:0;overflow-y:auto;padding:2rem}.tab-content{display:flex;flex-direction:column;gap:1.5rem}.content-header{margin-bottom:.5rem}.content-header h1{font-size:2rem;color:#333;margin-bottom:.5rem}.content-header .subtitle{font-size:1rem;color:#666;margin:0}.objects-list-view{display:flex;flex-direction:column;gap:.75rem}.object-details{border:1px solid #e0e0e0;border-radius:6px;background:#fafafa;overflow:hidden}.object-summary{padding:1rem 1.25rem;cursor:pointer;list-style:none;background:#fff;transition:background .2s}.object-summary::-webkit-details-marker{display:none}.object-summary:hover{background:#f8f9fa}.object-summary:focus-visible{outline:2px solid #005da6;outline-offset:-2px;border-radius:4px}.bp-rule-name-btn:focus-visible{outline:2px solid #005da6;outline-offset:2px;border-radius:2px}.object-summary-content{display:flex;justify-content:space-between;align-items:center}.object-label{font-size:1rem;color:#333;margin-right:.75rem}.object-api-name{font-size:.875rem;color:#666;font-family:Courier New,monospace;margin-right:.75rem}.object-meta{display:flex;align-items:center;gap:.5rem}.object-fields-table{padding:1rem;background:#fff;border-top:1px solid #e0e0e0}.field-type{font-family:Courier New,monospace;font-size:.875rem;color:#0078d4}.field-meta{font-size:.75rem;color:#767676;margin-left:.25rem}.field-properties{display:flex;flex-wrap:wrap;gap:.25rem}.property-badge{padding:.125rem .5rem;border-radius:3px;font-size:.75rem;font-weight:500}.badge-required{background:#f8d7da;color:#721c24}.badge-unique{background:#d1ecf1;color:#0c5460}.badge-reference{background:#cfe2ff;color:#004085}.badge-picklist{background:#fff3cd;color:#856404}.badge-default{background:#e2e3e5;color:#383d41}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.metric-card{background:var(--color-gray-50);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200)}.metric-value{font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-xs)}.metric-label{font-size:.875rem;color:var(--color-gray-500)}.metric-value.primary{color:var(--color-gray-700)}.metric-value.info{color:var(--color-info)}.metric-value.success{color:var(--color-success)}.metric-value.warning{color:var(--color-warning)}.metric-value.purple{color:var(--color-purple)}.metric-value.teal{color:var(--color-teal)}.info-box{padding:var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);border:1px solid}.info-box.info{background:var(--color-primary-light);border-color:var(--color-primary);color:#004085}.info-box.warning{background:var(--color-warning-light);border-color:var(--color-warning);color:#856404}.info-box.success{background:var(--color-success-light);border-color:var(--color-success);color:#155724}.info-box.danger{background:var(--color-danger-light);border-color:var(--color-danger);color:#721c24}.info-box.neutral{background:var(--color-gray-50);border-color:var(--color-gray-300);color:var(--color-gray-600)}.card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.card-header{font-size:1.25rem;font-weight:600;color:var(--color-gray-700);margin-bottom:var(--spacing-lg)}.button{padding:.625rem 1.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .2s}.button-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.button-primary:hover{opacity:.9;transform:translateY(-1px)}.button-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-secondary{background:#fff;color:var(--color-primary);border-color:var(--color-primary)}.button-secondary:hover{background:var(--color-primary-light)}.button-small{padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem}.table{width:100%;border-collapse:collapse}.table thead{background:var(--color-gray-50)}.table th{padding:var(--spacing-md);text-align:left;font-size:.875rem;font-weight:600;color:var(--color-gray-700);border-bottom:2px solid var(--color-gray-300)}.table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-gray-200);font-size:.875rem}.table tbody tr:hover{background:var(--color-gray-50)}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-gray{color:var(--color-gray-500)}.text-gray-dark{color:var(--color-gray-700)}.mb-1{margin-bottom:var(--spacing-lg)}.mb-2{margin-bottom:var(--spacing-xl)}.mb-3{margin-bottom:var(--spacing-2xl)}.mt-1{margin-top:var(--spacing-lg)}.mt-2{margin-top:var(--spacing-xl)}.badge{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;display:inline-block}.badge-info{background:var(--color-info-light);color:#004085}.badge-success{background:var(--color-success-light);color:#155724}.badge-warning{background:var(--color-warning-light);color:#856404}.badge-danger{background:var(--color-danger-light);color:#721c24}@media(max-width:1024px){.setup-container{flex-direction:column}.setup-sidebar{width:100%;height:auto;position:relative;border-right:none;border-bottom:1px solid var(--color-gray-200)}.sidebar-nav{display:flex;flex-direction:column;padding:0}.sidebar-tab{flex:none;justify-content:flex-start;border-right:none;border-bottom:none;border-left:3px solid transparent}.sidebar-tab.active{border-right:none;border-bottom:none;border-left:3px solid var(--color-primary)}.sidebar-subtabs{margin-left:2rem;padding-left:.5rem}.sidebar-subtab{padding:.5rem 1rem}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm)}}@media(max-width:480px){.setup-content{padding:1rem}.content-header h1{font-size:1.5rem}.sidebar-header{padding:1rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-border{display:inline-block;border:4px solid #f3f3f3;border-top:4px solid #0078d4;border-radius:50%;animation:spin 1s linear infinite}.sidebar-loader{padding:1rem 1.5rem;display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,#e7f3ff,#f0f7ff);margin:.5rem 1rem;border-radius:8px;border-left:3px solid var(--color-primary)}.sidebar-loader-spinner{width:20px;height:20px;border:3px solid #e0e0e0;border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}.sidebar-loader-text{color:var(--color-primary);font-size:.9rem;font-weight:500}.discovery-fullscreen-loader{position:fixed;inset:0;background:#fffffffa;backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-in}.discovery-loader-content{text-align:center;max-width:600px;padding:3rem 2rem}.discovery-loader-spinner{width:80px;height:80px;border:6px solid #e0e0e0;border-top:6px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}.discovery-loader-title{font-size:2rem;color:var(--color-primary);margin:0 0 1rem;font-weight:600}.discovery-loader-description{font-size:1.125rem;color:var(--color-gray-500);margin:0 0 2rem;line-height:1.6}.discovery-loader-status{background:var(--color-success-light);color:var(--color-success);padding:1rem 1.5rem;border-radius:8px;border-left:4px solid var(--color-success);font-size:.95rem;font-weight:500;animation:slideUp .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.export-dropdown{position:relative;display:inline-block}.export-dropdown-caret{font-size:.7rem;opacity:.8}.export-dropdown-backdrop{position:fixed;inset:0;z-index:99}.export-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:160px;z-index:100;overflow:hidden}.export-dropdown-item{display:block;width:100%;padding:.6rem 1rem;text-align:left;background:none;border:none;font-size:.875rem;color:#333;cursor:pointer;transition:background .15s}.export-dropdown-item:hover{background:#f5f5f5}.prereq-callout{display:flex;gap:.875rem;align-items:flex-start;background:#fffbeb;border:1px solid #f59e0b;border-left:4px solid #f59e0b;border-radius:6px;padding:.875rem 1rem;margin-bottom:1.5rem}.prereq-callout-icon{font-size:1.1rem;color:#d97706;flex-shrink:0;line-height:1.4}.prereq-callout-body{flex:1}.prereq-callout-body strong{display:block;font-size:.9rem;color:#92400e;margin-bottom:.25rem}.prereq-callout-body p{margin:0 0 .625rem;font-size:.85rem;color:#78350f}.prereq-callout-actions{display:flex;gap:.75rem;flex-wrap:wrap}.prereq-callout-link{background:none;border:none;padding:0;font-size:.85rem;font-weight:600;color:#b45309;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.prereq-callout-link:hover{color:#92400e}.sidebar-tab-status{width:8px;height:8px;border-radius:50%;margin-left:auto}.sidebar-tab-status.complete{background:var(--color-success)}.sidebar-tab-status.in-progress{background:var(--color-primary);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.prerequisites-panel{margin-bottom:1.5rem;padding:1.25rem 1.5rem;background:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg)}.prerequisite-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:.75rem;transition:all .2s}.prerequisite-item:last-child{margin-bottom:0}.prerequisite-item.complete{background:var(--color-success-light);border:1px solid #c3e6cb}.prerequisite-item.pending{background:var(--color-warning-light);border:1px solid #ffeeba}.prerequisite-item.locked{background:#e9ecef;border:1px solid var(--color-gray-300);opacity:.6}.prerequisite-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;color:#fff;flex-shrink:0}.prerequisite-item.complete .prerequisite-icon{background:var(--color-success)}.prerequisite-item.pending .prerequisite-icon{background:var(--color-warning)}.prerequisite-item.locked .prerequisite-icon{background:var(--color-gray-300)}.doc-viewer{max-width:820px;margin:0 auto;font-size:16px;line-height:1.6;color:#333}.doc-viewer-nav{margin-bottom:2rem;padding:1rem;background:#f8f8f8;border-radius:6px;font-size:.9rem;display:flex;flex-wrap:wrap;gap:1.5rem}.doc-viewer-nav-link{background:none;border:none;padding:0;font:inherit;color:#0078d4;cursor:pointer;text-decoration:none}.doc-viewer-nav-link:hover{text-decoration:underline}.doc-viewer-nav-link.active{font-weight:600;color:#1a1a1a;cursor:default}.doc-viewer-status{color:#666}.doc-viewer-error{color:#a4262c}.doc-viewer-body h1{font-size:1.8rem;margin:1.5rem 0 1rem}.doc-viewer-body h2{font-size:1.4rem;margin:2rem 0 .75rem;border-bottom:1px solid #e0e0e0;padding-bottom:.3rem}.doc-viewer-body h3{font-size:1.15rem;margin:1.5rem 0 .5rem}.doc-viewer-body h4{font-size:1rem;margin:1.25rem 0 .5rem}.doc-viewer-body code{background:#f3f3f3;padding:.1rem .35rem;border-radius:3px;font-size:.9em}.doc-viewer-body pre{background:#1e1e1e;color:#e0e0e0;padding:1rem;border-radius:6px;overflow-x:auto}.doc-viewer-body pre code{background:none;color:inherit;padding:0}.doc-viewer-body blockquote{margin:1rem 0;padding:.75rem 1rem;background:#fff8e1;border-left:4px solid #ffc107;border-radius:0 6px 6px 0}.doc-viewer-body table{border-collapse:collapse;width:100%;margin:1rem 0}.doc-viewer-body th,.doc-viewer-body td{border:1px solid #e0e0e0;padding:.5rem .75rem;text-align:left}.doc-viewer-body th{background:#f8f8f8}.doc-viewer-body ul,.doc-viewer-body ol{padding-left:1.5rem}.doc-viewer-body li{margin:.25rem 0}.doc-viewer-body a{color:#0078d4}.doc-viewer-body hr{border:none;border-top:1px solid #e0e0e0;margin:2rem 0}.landing{display:flex;flex-direction:column;min-height:100vh;background-color:#fff}.landing-topbar{display:flex;align-items:center;gap:8px;background-color:#0067b8;color:#fff;padding:14px 20px;position:sticky;top:0;z-index:100}.landing-topbar-title{font-family:Segoe UI,"Segoe UI Web (West European)",sans-serif;font-size:20px;font-weight:700;line-height:28px}.landing-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:28px 48px;scroll-padding-top:70px}.landing-main:focus{outline:none}.landing-main:focus-visible{outline:2px solid #0067b8;outline-offset:-2px}.landing-card{width:100%;max-width:900px;background:#fff}.landing-heading{font-size:28px;font-weight:700;color:#1a1a1a;line-height:1.2;margin:0 0 10px;letter-spacing:-.01em;text-wrap:balance}.landing-intro{font-size:14.5px;color:#505050;line-height:1.6;margin:0 0 18px}.landing-divider{border:none;border-top:1px solid #e2e4e6;margin-top:0;margin-bottom:16px}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.landing-step{background:#f5f5f5;border:1px solid #e0e0e0;padding:14px 16px 16px;display:flex;flex-direction:column}.landing-step-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.landing-step-circle{width:22px;height:22px;border-radius:50%;background:#d0e8f8;border:1.5px solid #0067b8;flex-shrink:0}.landing-step-label{font-size:11px;font-weight:700;color:#0067b8;letter-spacing:.08em;text-transform:uppercase}.landing-step-title{font-size:16px;font-weight:700;line-height:1.3;color:#1a1a1a;margin:0 0 8px;text-wrap:balance}.landing-step-title .hi{color:#0067b8}.landing-step-subhead{font-size:13px;font-weight:500;color:#2a2a2a;line-height:1.5;padding-bottom:10px;margin:0 0 10px;border-bottom:1px solid #d6d8da}.landing-step-body{font-size:13px;color:#505050;line-height:1.6;margin:0}.landing-migration-section{padding:4px 0 16px;display:flex;flex-direction:column;gap:8px}.landing-migration-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#0067b8;border:1.5px solid #0067b8;padding:3px 10px;align-self:flex-start}.landing-migration-heading{font-size:22px;font-weight:700;color:#1a1a1a;letter-spacing:-.01em;line-height:1.2;margin:0}.landing-migration-arrow{color:#0067b8;font-weight:300}.landing-migration-desc{font-size:13.5px;color:#505050;line-height:1.6;max-width:680px;margin:0}.landing-cta-section{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.landing-signup{display:inline-flex;align-items:center;gap:10px;background:#0067b8;color:#fff;font-family:inherit;font-size:14px;font-weight:500;padding:10px 22px;border:none;cursor:pointer;transition:background .15s ease;letter-spacing:.01em}.landing-signup:hover:not(:disabled){background:#005a9e}.landing-signup:focus-visible{outline:2px solid #1a1a1a;outline-offset:2px}.landing-signup:disabled{opacity:.65;cursor:default}.landing-signup-hint{font-size:12.5px;color:gray;margin:0}@media(forced-colors:active){.landing-main:focus-visible,.landing-signup:focus-visible{outline:2px solid Highlight;outline-offset:2px}}@media(max-width:700px){.landing-main{padding:36px 24px 52px}.landing-heading{font-size:24px}.landing-steps{grid-template-columns:1fr}}.pd{max-width:1200px;margin:0 auto}.pd-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.pd-title{font-size:1.75rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.pd-subtitle{color:#666;font-size:.95rem;max-width:600px}.pd-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;max-width:100%}.pd-btn-icon,.pd-btn svg{font-size:20px;width:1em;height:1em;line-height:1;flex-shrink:0}.pd-btn-primary{background:#0078d4;color:#fff}.pd-btn-primary:hover:not(:disabled){background:#005a9e}.pd-btn-primary:disabled{background:#b0b0b0;cursor:not-allowed}.pd-btn-ghost{background:transparent;color:#1b1a19;border:1px solid #c8c6c4}.pd-btn-ghost:hover{background:#faf9f8}.pd-btn-danger{background:#d13438;color:#fff}.pd-btn-danger:hover{background:#a4262c}.pd-btn-lg{padding:.85rem 1.75rem;font-size:1rem}.pd-link{background:none;border:none;color:#0078d4;cursor:pointer;text-decoration:underline;font-size:inherit;margin-left:.5rem}.pd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#666}.pd-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#0078d4;border-radius:50%;animation:pd-spin .8s linear infinite;margin-bottom:1rem}@keyframes pd-spin{to{transform:rotate(360deg)}}.pd-banner{padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem;font-size:.9rem}.pd-banner-error{background:#fef0f0;color:#a4262c;border:1px solid #f5c6cb}.pd-empty{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;border:2px dashed #d0d0d0}.pd-empty-icon{font-size:3rem;margin-bottom:1rem}.pd-empty h2{font-size:1.4rem;color:#333;margin-bottom:.5rem}.pd-empty p{color:#777;margin-bottom:1.5rem;max-width:450px;margin-left:auto;margin-right:auto}.pd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:1.25rem}.pd-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;padding:1.25rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column}.pd-card:hover{border-color:#0078d4;box-shadow:0 4px 16px #0078d41f;transform:translateY(-2px)}.pd-card:focus-visible{outline:2px solid #0078d4;outline-offset:2px;border-color:#0078d4}.pd-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.pd-card-title{font-size:1.1rem;font-weight:600;color:#1a1a1a;word-break:break-word}.pd-card-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.pd-card-menu{background:none;border:none;cursor:pointer;padding:.25rem;opacity:0;transition:opacity .15s;font-size:.85rem;border-radius:4px}.pd-card:hover .pd-card-menu{opacity:.6}.pd-card:focus-within .pd-card-menu{opacity:.6}.pd-card-menu:hover{opacity:1!important;background:#f5f5f5}.pd-card-menu:focus-visible{opacity:1!important;background:#f5f5f5;outline:2px solid #0078d4;outline-offset:1px}.pd-card-menu:disabled{opacity:0}.pd-card:hover .pd-card-menu:disabled,.pd-card:focus-within .pd-card-menu:disabled{opacity:.55}.pd-card-desc{font-size:.85rem;color:#666;margin-bottom:.75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pd-card-meta{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem;flex:1}.pd-meta-item{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:#555}.pd-meta-icon{font-size:.85rem}.pd-meta-label{font-weight:600;color:#444;min-width:1.5rem}.pd-meta-value{color:#0078d4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-meta-unconfigured{color:#767676;font-style:italic}.pd-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid #f0f0f0}.pd-card-date{font-size:.75rem;color:#767676}.pd-card-arrow{color:#0078d4;font-size:1.1rem;opacity:0;transition:opacity .15s,transform .15s}.pd-card:hover .pd-card-arrow{opacity:1;transform:translate(3px)}.pd-card-new{border:2px dashed #c0c0c0;background:#fafafa;display:flex;align-items:center;justify-content:center;min-height:180px}.pd-card-new:hover{border-color:#0078d4;background:#f0f7ff}.pd-card-new:disabled{cursor:not-allowed;opacity:.55}.pd-card-new:disabled:hover{border-color:silver;background:#fafafa}.pd-card-new-content svg{font-size:28px;width:1em;height:1em;color:#0078d4;flex-shrink:0}.pd-card-new:disabled .pd-card-new-content svg{color:#8a8886}.pd-card-new-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#767676;font-size:.95rem}.pd-card-new-icon{font-size:2rem;color:#0078d4;line-height:1}.pd-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;animation:pd-fadeIn .15s}@keyframes pd-fadeIn{0%{opacity:0}to{opacity:1}}.pd-modal{background:#fff;border-radius:12px;width:90%;max-width:520px;box-shadow:0 20px 60px #0003;animation:pd-slideUp .2s ease-out}.pd-modal-sm{max-width:400px}@keyframes pd-slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.pd-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #eee}.pd-modal-header h2{font-size:1.15rem;font-weight:600;color:#1a1a1a}.pd-modal-close{background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;padding:0;line-height:1}.pd-modal-close:hover{color:#333}.pd-modal form,.pd-modal-body-text{padding:1.5rem}.pd-modal form{max-height:60vh;overflow-y:auto}.pd-modal-body-text{color:#555;font-size:.95rem;line-height:1.5}.pd-field{margin-bottom:1.25rem}.pd-field label{display:block;font-size:.85rem;font-weight:500;color:#333;margin-bottom:.35rem}.pd-required{color:#d13438}.pd-field-note{margin:.35rem 0 0;font-size:.78rem;color:#605e5c}.pd-field input,.pd-field select,.pd-field textarea{width:100%;padding:.6rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:.9rem;font-family:inherit;transition:border-color .15s;resize:vertical;box-sizing:border-box;background:#fff}.pd-field input::placeholder,.pd-field textarea::placeholder{color:#8a8886}.pd-field input:focus,.pd-field select:focus,.pd-field textarea:focus{border-color:#0078d4;box-shadow:0 0 0 2px #0078d426}.pd-field-hint{display:block;margin-top:.3rem;font-size:.78rem;color:#767676;font-weight:400}.pd-field input[aria-invalid=true]{border-color:#d13438}.pd-inline-error{color:#d13438;font-size:.85rem;margin-bottom:1rem;padding:.5rem .75rem;background:#fef0f0;border-radius:4px}.pd-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #eee}.pd-card-title-row{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.pd-shared-badge{display:inline-block;padding:.15rem .5rem;background:#e6f0fb;color:#0078d4;border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.pd-shared-by{font-size:.8rem;color:#666;margin:-.25rem 0 .25rem}.pd-card-workspace{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:#605e5c;margin:-.25rem 0 .35rem;min-width:0}.pd-card-workspace svg{flex-shrink:0;color:#8a8886}.pd-card-workspace span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-card-workspace--none{font-style:italic;color:#8a8886}.pd-modal-share{width:500px;max-width:95vw}.share-admin-notice{margin:0;padding:.75rem 1.5rem;background:#fff8e1;border-bottom:1px solid #ffe082;color:#5d4200;font-size:.8125rem;line-height:1.45}.share-add-form{padding:1.25rem 1.5rem;border-bottom:1px solid #eee}.share-add-label{font-size:.875rem;color:#333;margin-bottom:.6rem}.share-add-row{display:flex;gap:.5rem}.share-email-input{flex:1;padding:.5rem .75rem;border:1px solid #ccc;border-radius:6px;font-size:.9rem;font-family:inherit;transition:border-color .15s}.share-email-input:focus{border-color:#0078d4;box-shadow:0 0 0 2px #0078d426;outline:none}.share-error{color:#d13438;font-size:.82rem;margin-top:.5rem}.share-hint{font-size:.78rem;color:#888;margin-top:.5rem}.share-members-section{padding:1.25rem 1.5rem}.share-members-title{font-size:.85rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.share-member-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;max-height:280px;overflow-y:auto}.share-member-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .25rem;border-radius:6px}.share-member-row:hover{background:#f7f7f7}.share-member-avatar{width:32px;height:32px;border-radius:50%;background:#0078d4;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;flex-shrink:0}.share-member-info{flex:1;min-width:0;display:flex;flex-direction:column}.share-member-name{font-size:.9rem;font-weight:500;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-member-you{color:#888;font-weight:400;font-size:.85em}.share-member-email{font-size:.78rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-role-badge{font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:4px;flex-shrink:0}.share-role-owner{background:#fff4ce;color:#9a6700}.share-role-editor{background:#e8f5e9;color:#2e7d32}.share-remove-btn{background:none;border:1px solid #ccc;border-radius:4px;color:#555;font-size:.8rem;padding:.2rem .5rem;cursor:pointer;flex-shrink:0;transition:all .15s}.share-remove-btn:hover:not(:disabled){background:#fef0f0;border-color:#d13438;color:#d13438}.share-remove-btn:disabled{opacity:.5;cursor:not-allowed}.share-loading{color:#888;font-size:.9rem;padding:.5rem 0}.share-members-error{padding:.25rem 0 .5rem}.share-members-error .share-error{margin-top:0}.share-retry-btn{margin-top:.6rem;padding:.35rem .85rem;font-size:.82rem;font-family:inherit;color:#0078d4;background:#fff;border:1px solid #0078d4;border-radius:4px;cursor:pointer;transition:background-color .15s}.share-retry-btn:hover{background:#f3f9fd}.share-retry-btn:focus-visible{outline:2px solid #0078d4;outline-offset:2px}.share-readonly-note{font-size:.82rem;color:#888;padding:0 1.5rem 1rem}@media(max-width:480px){.pd-modal{width:100%;max-width:100%;border-radius:0;max-height:100vh;overflow-y:auto}.pd-modal-sm{max-width:100%}.pd-modal-header,.pd-modal form,.pd-modal-body-text{padding:1rem}.pd-modal-actions{flex-wrap:wrap;padding:.75rem 1rem}.pd-field input,.pd-field textarea{min-width:0;box-sizing:border-box}}.pd-header-actions{display:flex;align-items:center;gap:var(--am-3, 12px);flex-wrap:wrap}.pd-workspace{display:flex;flex-direction:column;gap:var(--am-1, 4px);margin-bottom:var(--am-5, 24px);max-width:320px}.pd-workspace-label{font-size:14px;font-weight:600;color:var(--am-ink, #1b1a19)}.pd-workspace-select{padding:var(--am-2, 8px) var(--am-3, 12px);border:1px solid var(--am-line-strong, #c8c6c4);border-radius:var(--am-radius, 6px);background:var(--am-surface, #ffffff);font:inherit;font-size:14px;color:var(--am-ink, #1b1a19);cursor:pointer;transition:border-color .15s,box-shadow .15s}.pd-workspace-select:hover{border-color:var(--am-ink-soft, #605e5c)}.pd-workspace-select:focus-visible{outline:none;border-color:var(--am-accent, #0f6cbd);box-shadow:0 0 0 1px var(--am-accent, #0f6cbd)}.pd-workspace-select:disabled{background:#faf9f8;color:#323130;cursor:default;opacity:1}.pd-unmapped{display:flex;align-items:baseline;gap:.5rem;margin:-.25rem 0 .5rem;font-size:.8rem}.pd-unmapped-text{color:#666}.pd-unmapped-action{padding:0;border:0;background:none;color:#0078d4;font:inherit;font-weight:600;cursor:pointer}.pd-unmapped-action:hover{text-decoration:underline}.pd-unmapped-action:focus-visible{outline:2px solid #0078d4;outline-offset:2px;border-radius:2px}.pd-adopt-label{display:block;padding:0 1.5rem;margin-bottom:.35rem;font-size:.85rem;font-weight:600}.pd-adopt-select{display:block;width:calc(100% - 3rem);margin:0 1.5rem;padding:.5rem .65rem;border:1px solid #c8c6c4;border-radius:4px;background:#fff;font:inherit}.pd-adopt-select:focus-visible{outline:none;border-color:#0078d4;box-shadow:0 0 0 1px #0078d4}.pd-adopt-note{padding:0 1.5rem;margin:.75rem 0 0;font-size:.85rem;line-height:1.5;color:#666}.pd-adopt-error{padding:0 1.5rem;margin:.5rem 0 0;font-size:.85rem;color:#a4262c}.pd-adopt-blocked{padding-block:0;padding-inline:3rem 1.5rem;margin:.5rem 0 0;font-size:.85rem;line-height:1.6;color:#a4262c}.onboarding-page{display:flex;gap:50px;max-width:1800px;margin:12px auto 40px;padding:0 40px;align-items:flex-start}.onboarding-hero{flex:1 1 clamp(280px,30vw,380px);max-width:380px;padding-top:8px}.onboarding-panel{flex:none;width:700px;max-width:100%;background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:8px 36px 32px;box-shadow:0 1px 3px #0000000d;box-sizing:border-box}.onboarding-form-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e2e2}.onboarding-form-header h2{font-size:18px;font-weight:700;margin:0 0 6px;color:#111}.onboarding-form-header p{font-size:13px;color:#666;margin:0;line-height:1.4}.onboarding-hero-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#444;text-transform:uppercase;letter-spacing:.03em}.onboarding-hero-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;display:inline-block}.onboarding-hero h1{font-size:36px;font-weight:700;margin:16px 0 20px;line-height:1.2;color:#111}.onboarding-hero-intro{color:#555;line-height:1.6;margin:0 0 28px;font-size:15px}.onboarding-journey{display:flex;flex-direction:column;gap:20px}.onboarding-journey-step{border-inline-start:3px solid #2563eb;padding-inline-start:14px}.onboarding-journey-step h2{color:#1d4ed8;font-size:14px;font-weight:700;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.onboarding-journey-step p{color:#555;font-size:14px;line-height:1.55;margin:0}.onboarding-hero-next-step-row{display:flex;align-items:baseline;gap:8px;margin-top:28px}.onboarding-hero-next-step{color:#111;font-size:15px;font-weight:700;margin:0}.onboarding-hero-learn-more{color:#0f6cbd;font-size:13px;white-space:nowrap}.onboarding-section{display:flex;flex-direction:column;gap:0}.onboarding-section h2{font-size:18px;font-weight:700;margin:12px 0 8px;color:#111}.onboarding-section h2:first-child{margin-top:0}.onboarding-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:#333;margin-bottom:12px}.onboarding-field input,.onboarding-field select,.onboarding-field textarea{font-weight:400;font-size:14px;padding:10px 12px;border:1px solid #ccc;border-radius:6px;width:100%;box-sizing:border-box;transition:border-color .2s}.onboarding-field input:focus,.onboarding-field select:focus,.onboarding-field textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.onboarding-field textarea{min-height:80px;resize:vertical;font-family:inherit}.onboarding-field input:disabled,.onboarding-field select:disabled,.onboarding-field textarea:disabled,.onboarding-checkbox input:disabled{background:#f2f2f2;color:#666;cursor:not-allowed}.onboarding-field-hint{font-weight:400;font-size:12px;color:#888}.onboarding-field-label{font-size:13px;font-weight:600;color:#333;margin:4px 0}.onboarding-chip-group{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px;list-style:none;padding:0}.onboarding-chip{border:1px solid #ccc;border-radius:20px;padding:8px 16px;font-size:14px;background:#fff;transition:all .2s;font-weight:500}.onboarding-chip--selected{background:#2563eb;border-color:#2563eb;color:#fff}.onboarding-checkbox-group{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.onboarding-checkbox{display:flex;align-items:center;gap:8px;font-weight:400;font-size:14px;cursor:pointer}.onboarding-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.onboarding-submit-btn{align-self:flex-start;margin-top:20px;background:#2563eb;color:#fff;border:none;border-radius:6px;padding:12px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .2s}.onboarding-submit-btn:hover:not(:disabled){background:#1d4ed8}.onboarding-submit-btn:disabled{opacity:.6;cursor:not-allowed}.onboarding-legal-notice{color:#555;font-size:13px;line-height:1.5;margin:16px 0 0}.onboarding-legal-notice a{color:#2563eb}.onboarding-approver-queue{border-bottom:2px solid #e2e2e2;padding-bottom:24px;margin-bottom:24px}.onboarding-approver-queue h2{font-size:18px;font-weight:700;margin-bottom:12px;color:#111}.onboarding-approvals-container{max-width:960px;margin:0 auto;padding:0 24px 64px}.onboarding-approvals-header{margin-bottom:16px}.onboarding-approvals-title{font-size:26px;font-weight:600;letter-spacing:-.01em;color:#1b1a19;margin:0 0 6px}.onboarding-approvals-subtitle{font-size:14px;color:#605e5c;margin:0;line-height:1.4}.onboarding-approvals-controls{display:flex;align-items:flex-end;border-bottom:1px solid #edebe9;margin-bottom:16px}.onboarding-approvals-tabs{display:flex;gap:8px;flex:1}.onboarding-tab-btn{background:none;border:none;border-bottom:2px solid transparent;padding:8px 16px;font-size:14px;font-weight:500;color:#605e5c;cursor:pointer;transition:color .15s ease,border-color .15s ease;margin-bottom:-1px}.onboarding-tab-btn:hover{color:#1b1a19}.onboarding-tab-btn--active{color:#0f6cbd;font-weight:600;border-bottom-color:#0f6cbd}.onboarding-tab-btn:focus-visible{outline:2px solid #0f6cbd;outline-offset:-2px}.onboarding-tab-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;padding:1px 7px;border-radius:10px;font-size:11px;font-weight:600;background:#f3f2f1;color:#605e5c}.onboarding-tab-btn--active .onboarding-tab-badge{background:#eff6ff;color:#0f6cbd}.onboarding-approvals-toolbar{display:flex;align-items:center;justify-content:flex-end;padding-bottom:6px}.onboarding-approvals-filter{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#323130}.onboarding-approvals-filter select{font-family:inherit;font-size:13px;font-weight:400;padding:6px 12px;border:1px solid #c8c6c4;border-radius:4px;background:#fff;color:#1b1a19;cursor:pointer}.onboarding-approvals-filter select:focus-visible{outline:2px solid #0f6cbd;outline-offset:-1px;border-color:#0f6cbd}.onboarding-approvals-loading,.onboarding-approvals-error{padding:40px 24px;text-align:center;font-size:14px}.onboarding-approvals-loading{color:#605e5c}.onboarding-approvals-error{color:#a4262c}.onboarding-approvals-empty{padding:48px 24px;text-align:center;background:#faf9f8;border:1px dashed #e1dfdd;border-radius:6px;color:#605e5c;font-size:14px}.onboarding-request-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.onboarding-request-item{display:flex;flex-direction:column;border:1px solid #e1dfdd;border-radius:6px;background:#fff;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.onboarding-request-item:hover{border-color:#c8c6c4}.onboarding-request-item--expanded{border-color:#0f6cbd;box-shadow:0 1px 4px #0000000f}.onboarding-request-summary-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:0;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer;user-select:none;transition:background .12s ease;box-sizing:border-box}.onboarding-request-summary-btn:hover{background:#faf9f8}.onboarding-request-summary-btn:focus-visible{outline:2px solid #0f6cbd;outline-offset:-2px}.onboarding-request-item--expanded .onboarding-request-summary-btn{background:#faf9f8;border-bottom:1px solid #edebe9}.onboarding-expand-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:20px;line-height:1;color:#605e5c;flex-shrink:0;transition:transform .15s ease,color .12s ease}.onboarding-request-summary-btn:hover .onboarding-expand-icon{color:#1b1a19}.onboarding-expand-icon--expanded{transform:rotate(90deg)}.onboarding-request-summary-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0;flex-wrap:wrap}.onboarding-request-title{font-size:14px;font-weight:600;color:#1b1a19;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-request-separator{color:#c8c6c4;font-size:10px;line-height:1;user-select:none}.onboarding-request-email{font-size:13px;color:#605e5c;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-request-source{color:#605e5c;font-size:12px;font-weight:400;white-space:nowrap}.onboarding-request-summary-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.onboarding-outcome-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.02em}.onboarding-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.onboarding-outcome-pill--approved{background:#f1fbf1;border:1px solid #c8eec8;color:#0e700e}.onboarding-outcome-pill--rejected{background:#fdf3f4;border:1px solid #f8d7da;color:#a4262c}.onboarding-outcome-pill--pending{background:#fff8e1;border:1px solid #f4d98b;color:#8a6116}.onboarding-request-date{font-size:12px;color:#605e5c;min-width:70px;text-align:right}.onboarding-request-details{padding:16px 20px 20px 56px;background:#faf9f8;display:flex;flex-direction:column;gap:16px}.onboarding-request-info{width:100%}.onboarding-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 20px}.onboarding-detail-cell{display:flex;flex-direction:column;gap:2px}.onboarding-detail-label{font-size:12px;font-weight:600;color:#605e5c}.onboarding-detail-value{font-size:13px;font-weight:500;color:#1b1a19;word-break:break-word}.onboarding-rejection-display{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:#fdf3f4;border:1px solid #f8d7da;border-radius:4px}.onboarding-rejection-text{margin:0;font-size:13px;color:#a4262c;line-height:1.4}.onboarding-request-decision{display:flex;flex-direction:column;gap:12px;padding-top:14px;border-top:1px solid #edebe9}.onboarding-rejection-flow{display:flex;flex-direction:column;gap:12px;animation:fadeIn .15s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.onboarding-rejection-field{display:flex;flex-direction:column;gap:6px}.onboarding-rejection-label{font-size:12px;font-weight:600;color:#323130}.onboarding-rejection-required{font-weight:400;color:#605e5c;font-size:11px}.onboarding-rejection-input{font-family:inherit;font-size:13px;line-height:1.4;padding:8px 12px;border:1px solid #c8c6c4;border-radius:4px;background:#fff;color:#1b1a19;resize:vertical;min-height:56px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.onboarding-rejection-input:focus{outline:none;border-color:#0f6cbd;box-shadow:0 0 0 1px #0f6cbd}.onboarding-request-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.onboarding-approve-btn,.onboarding-reject-btn,.onboarding-confirm-reject-btn,.onboarding-cancel-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 18px;font-size:13px;font-weight:600;border-radius:4px;cursor:pointer;transition:color .12s ease,background-color .12s ease,border-color .12s ease}.onboarding-approve-btn{background:#0f6cbd;border:1px solid #0f6cbd;color:#fff}.onboarding-approve-btn:hover:not(:disabled){background:#0b5a9e;border-color:#0b5a9e}.onboarding-reject-btn{background:#fff;border:1px solid #c8c6c4;color:#323130}.onboarding-reject-btn:hover:not(:disabled){color:#a4262c;border-color:#a4262c;background:#fdf3f4}.onboarding-cancel-btn{background:#fff;border:1px solid #c8c6c4;color:#323130}.onboarding-cancel-btn:hover:not(:disabled){background:#f3f2f1;border-color:#8a8886}.onboarding-confirm-reject-btn{background:#fff;border:1px solid #a4262c;color:#a4262c}.onboarding-confirm-reject-btn:hover:not(:disabled){background:#a4262c;color:#fff}.onboarding-approve-btn:disabled,.onboarding-reject-btn:disabled,.onboarding-confirm-reject-btn:disabled,.onboarding-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.onboarding-notice{border-radius:8px;padding:14px 16px;font-size:14px;margin-bottom:12px;line-height:1.5}.onboarding-notice--info{background:#eef4ff;border:1px solid #b6d0fb;color:#1d3f7a}.onboarding-notice--success{background:#eafbf1;border:1px solid #a7e3c3;color:#175c3a}.onboarding-notice--error{background:#fee2e2;border:2px solid #dc2626;color:#7f1d1d;font-weight:500;padding:16px 18px}.onboarding-notice--error p{margin:8px 0;font-weight:500}.onboarding-notice--error strong{display:block;margin-bottom:4px}.onboarding-hint{font-size:13px;color:#888;margin-top:4px}@media(max-width:1110px){.onboarding-page{flex-direction:column}.onboarding-hero{flex:none;max-width:none}}@media(max-width:760px){.onboarding-page{flex-direction:column;max-width:100%;padding:0 16px;margin:20px auto}.onboarding-hero{flex:none}.onboarding-hero h1{font-size:28px}.onboarding-panel{padding:20px 24px}.onboarding-request-item{flex-direction:column}.onboarding-request-actions{flex-direction:column;gap:8px}.onboarding-request-actions input,.onboarding-approve-btn,.onboarding-reject-btn{width:100%}}.signup-confirmation-container{background:#fff;border:1px solid #e2e2e2;border-radius:8px;padding:32px 36px;box-shadow:0 1px 3px #0000000d;margin:12px 32px 40px}.signup-confirmation-content{display:flex;flex-direction:column;gap:16px}.signup-confirmation-title{font-size:32px;font-weight:700;margin:0 0 20px;color:#111}.signup-confirmation-message{display:flex;gap:12px;background:#eafbf1;border:1px solid #a7e3c3;border-radius:4px;padding:16px;font-size:14px;line-height:1.6;color:#175c3a}.signup-confirmation-icon{width:24px;height:24px;color:#16a34a;flex-shrink:0;margin-top:0}.signup-confirmation-message p{margin:0}.signup-confirmation-message strong{font-weight:600}.signup-confirmation-hint{font-size:13px;color:#888;margin:0;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;overflow-x:hidden}.app{min-height:100vh;display:flex;flex-direction:column}.skip-to-main{position:absolute;top:0;left:0;padding:.5rem 1rem;background:#fff;color:#0078d4;font-weight:600;text-decoration:underline;border:2px solid #0078d4;border-radius:0 0 6px;transform:translateY(-150%);transition:transform .15s;z-index:1000}.skip-to-main:focus,.skip-to-main:focus-visible{transform:translateY(0);outline:2px solid #0078d4;outline-offset:2px}@media(forced-colors:active){.skip-to-main{border:2px solid ButtonText;background:ButtonFace;color:ButtonText}.skip-to-main:focus-visible{outline:2px solid Highlight;outline-offset:2px}}.wipe-dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200}.wipe-dialog{background:#fff;border-radius:8px;box-shadow:0 8px 32px #00000040;padding:1.5rem;max-width:440px;width:90%}.wipe-dialog-title{margin:0 0 .75rem;font-size:1.1rem;color:#1a1a1a}.wipe-dialog-text{margin:0 0 1.25rem;font-size:.9rem;color:#444;line-height:1.5}.wipe-dialog-error{margin:-.5rem 0 1rem;padding:.5rem .75rem;background:#fde7e9;border-radius:4px;color:#c42b1c;font-size:.85rem}.wipe-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}.wipe-dialog-btn{padding:.5rem 1rem;border:1px solid #d0d0d0;border-radius:4px;background:#fff;font-size:.875rem;cursor:pointer;transition:background .15s}.wipe-dialog-btn:hover:not(:disabled){background:#f5f5f5}.wipe-dialog-btn:disabled{opacity:.6;cursor:not-allowed}.wipe-dialog-btn--danger{background:#c42b1c;color:#fff;border-color:#c42b1c}.wipe-dialog-btn--danger:hover:not(:disabled){background:#a31b0d}.wipe-dialog-btn--primary{background:#0078d4;color:#fff;border-color:#0078d4}.wipe-dialog-btn--primary:hover:not(:disabled){background:#106ebe}.main{flex:1;min-width:0;width:100%;display:flex;flex-direction:column}.page-shell{flex:1;min-width:0;width:100%;padding:2rem}.migration-disclaimer-shell{flex:0 0 auto;padding-bottom:0}.support-feedback-shell{display:flex;flex-direction:column}.setup-host{display:flex;flex-direction:column;flex:1 0 auto;min-width:0}.mapping-page{min-width:0}.mapping-page>div>h2{margin:0 0 12px}.page{display:flex;flex-direction:column;gap:2rem}.page h1{font-size:2rem;color:#333}.card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.card h2{font-size:1.5rem;margin-bottom:1rem;color:#333}.table{width:100%;border-collapse:collapse;margin-top:1rem}.table th,.table td{padding:.75rem;text-align:left;border-bottom:1px solid #e0e0e0;color:#333}.table th{background:#f5f5f5;font-weight:600;color:#333}.status{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-draft{background:#e0e0e0;color:#666}.status-discovered{background:#d4edda;color:#155724}.status-mapped{background:#cce5ff;color:#004085}.status-schemabuilt{background:#d1ecf1;color:#0c5460}.status-migrating{background:#fff3cd;color:#856404}.status-validating{background:#f8d7da;color:#721c24}.status-completed{background:#d4edda;color:#155724}.status-completedwitherrors{background:#fff3cd;color:#856404}.status-failed{background:#f8d7da;color:#721c24}.status-skipped,.status-stopped{background:#e0e0e0;color:#555}.status-running{background:#cce5ff;color:#004085}.status-rollingback{background:#fff3cd;color:#856404}.status-rolledback{background:#e0e0e0;color:#555}.status-rolledbackwitherrors{background:#f8d7da;color:#721c24}.button-primary,.button-secondary,.button-small{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.button-secondary:hover{background:#e0e0e0}.button-small{padding:.5rem 1rem;font-size:.875rem;background:#f5f5f5;color:#333}.input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}.input:focus{border-color:#0078d4}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.loading{text-align:center;padding:2rem;font-size:1.25rem;color:#666}.workflow-steps{margin-top:2rem}.steps{display:flex;gap:1rem;margin-top:1rem}.step{flex:1;background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.step-number{width:40px;height:40px;border-radius:50%;background:#0078d4;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.step h3{margin-bottom:.5rem}.progress-bar{width:100%;height:20px;background:#e0e0e0;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:#0078d4;transition:width .3s}@keyframes progress-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-fill--indeterminate{position:relative;background:linear-gradient(90deg,#0078d4 25%,#50a0e0,#0078d4 75%);background-size:200% 100%;animation:progress-shimmer 1.5s infinite linear;overflow:hidden}.progress-text{text-align:center;margin-top:.25rem;font-size:.875rem}.logs-container{max-height:400px;overflow-y:auto;padding:1rem;background:#f5f5f5;border-radius:4px}.log-entry{padding:.5rem;margin-bottom:.5rem;border-left:4px solid;background:#fff}.log-info{border-color:#0078d4}.log-warning{border-color:#ffc107}.log-error{border-color:#dc3545}.log-time{margin-right:1rem;color:#666}.log-level{margin-right:1rem;font-weight:600}.mapping-container{display:grid;grid-template-columns:300px 1fr;gap:1rem}.object-list{max-height:600px;overflow-y:auto}.object-item{padding:1rem;margin-bottom:.5rem;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:all .2s}.object-item:hover{border-color:#0078d4;background:#f8f9fa}.object-item.selected{border-color:#0078d4;background:#e7f3ff}.object-name{font-size:.875rem;color:#666;margin-top:.25rem}.field-count{font-size:.75rem;color:#767676;margin-top:.25rem}.subtitle{font-size:1rem;color:#666;margin-top:-1rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:1rem;margin-top:1rem}.status-item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.status-detail{width:100%;font-size:.85rem;color:#666;padding-left:.25rem}.connected-banner{display:flex;align-items:flex-start;gap:1.25rem;background:linear-gradient(135deg,#f0faf4,#eaf4ff);border:1.5px solid #28a745;border-radius:12px;padding:1.5rem 2rem}.connected-banner-icon{font-size:2rem;flex-shrink:0;margin-top:.1rem}.connected-banner-body{flex:1}.connected-banner-title{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:#155724}.connected-banner-subtitle{margin:0 0 1.25rem;font-size:.9rem;color:#4a7c59}.connected-banner-connections{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.connected-banner-item{display:flex;align-items:center;gap:.625rem;background:#fff;border:1px solid #c3e6cb;border-radius:8px;padding:.625rem 1rem;min-width:200px}.connected-banner-logo{font-size:1.375rem;flex-shrink:0}.connected-banner-label{display:block;font-size:.75rem;font-weight:600;color:#767676;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.125rem}.connected-banner-env{display:block;font-size:.9rem;font-weight:600;color:#0078d4;word-break:break-all;text-decoration:none}.connected-banner-env:hover{text-decoration:underline}.connected-banner-divider{font-size:1.25rem;color:#adb5bd;flex-shrink:0}@media(max-width:600px){.connected-banner{flex-direction:column;gap:.75rem}.connected-banner-connections{flex-direction:column;align-items:stretch}.connected-banner-divider{display:none}}.status-success{background:#d4edda;color:#155724}.status-error{background:#f8d7da;color:#721c24}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input[type=text],.form-group input[type=url],.form-group input[type=password]{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input:focus{border-color:#0078d4;box-shadow:0 0 0 2px #0078d41a}.form-group small{display:block;margin-top:.25rem;font-size:.875rem;color:#666}.form-group small.warning-text{color:#856404;background:#fff3cd;padding:.5rem;border-radius:4px;margin-top:.5rem;border-left:3px solid #ffc107}.radio-group{display:flex;gap:1.5rem;margin-top:.5rem}.radio-group label{display:flex;align-items:center;gap:.5rem;font-weight:400;cursor:pointer}.radio-group input[type=radio]{cursor:pointer}.button-group{display:flex;gap:1rem;margin-top:1.5rem}.button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s;text-decoration:none;display:inline-block}.button-primary{background:#0078d4;color:#fff}.button-primary:hover:not(:disabled){background:#005a9e}.button-primary:disabled{background:#ccc;cursor:not-allowed}.button-secondary{background:#f5f5f5;color:#333;border:1px solid #ccc}.button-secondary:hover:not(:disabled){background:#e0e0e0}.button-secondary:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.message{padding:1rem;border-radius:4px;margin-top:1rem}.message-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message-warning{background:#fff3cd;color:#856404;border:1px solid #ffc107}.info-card{background:#e7f3ff;border-left:4px solid #0078d4}.info-card h3{margin-bottom:1rem;color:#0078d4}.info-card ol{margin-left:1.5rem}.info-card li{margin-bottom:.5rem}.objects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:1rem;margin-top:1rem}.object-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:4px;padding:1rem;transition:all .2s}.object-card:hover{border-color:#0078d4;box-shadow:0 2px 8px #0078d41a}.object-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.object-header strong{font-size:1rem;color:#333}.badge{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.badge-custom{background:#fff3cd;color:#856404}.object-fields{font-size:.75rem;color:#767676;margin-top:.5rem}.footer{background:#f5f5f5;border-top:1px solid #e0e0e0;padding:1rem 2rem;text-align:center}.footer-content{max-width:1400px;margin:0 auto}.version-info{font-size:.875rem;color:#666;cursor:help}.footer-separator{margin:0 .5rem;color:#ccc;font-size:.875rem}.footer-link{font-size:.875rem;color:#0078d4;text-decoration:underline}.footer-link:hover{text-decoration:underline}@media(max-width:1024px){.mapping-container{grid-template-columns:1fr}.object-list{max-height:320px}}@media(max-width:480px){.page-shell,.card{padding:1rem}.steps{flex-direction:column}.status-grid,.objects-grid{grid-template-columns:1fr}.footer{padding:1rem}}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:2rem}.access-denied h2{font-size:1.5rem;margin-bottom:.75rem;color:#323130}.access-denied p{color:#605e5c;max-width:480px;line-height:1.6}.access-denied-email{font-weight:600;color:#323130}.admin-allowlist{max-width:800px;margin:2rem auto;padding:0 1.5rem}.admin-allowlist h2{font-size:1.35rem;margin-bottom:.25rem}.admin-allowlist-desc{color:#605e5c;margin-bottom:1.5rem}.admin-msg{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.admin-msg--success{background:#dff6dd;color:#107c10}.admin-msg--error{background:#fde7e9;color:#a80000}.admin-msg-close{background:none;border:none;font-size:1.1rem;cursor:pointer;color:inherit;padding:0 .25rem}.admin-add-form{background:#faf9f8;border:1px solid #edebe9;border-radius:6px;padding:1rem;margin-bottom:1.5rem}.admin-add-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem;margin-bottom:.75rem}.admin-add-fields:has(>label:nth-child(4)):not(:has(>label:nth-child(5)))>label:first-child{grid-column:1 / -1}.admin-add-advanced{margin-bottom:.75rem;border-top:1px solid #edebe9;padding-top:.75rem}.admin-add-advanced>summary{cursor:pointer;font-size:.8125rem;color:#605e5c;user-select:none}.admin-add-advanced>summary:hover{color:#323130}.admin-add-advanced .admin-add-fields{margin-top:.75rem;grid-template-columns:1fr 1fr}@media(max-width:768px){.admin-add-fields{grid-template-columns:1fr 1fr}.admin-add-fields:has(>label:nth-child(4)):not(:has(>label:nth-child(5)))>label:first-child{grid-column:1 / -1}}@media(max-width:480px){.admin-add-fields{grid-template-columns:1fr}.admin-add-fields label{grid-column:auto}}.admin-add-fields label{display:flex;flex-direction:column;font-size:.8125rem;font-weight:600;color:#323130}.admin-add-fields input{margin-top:.25rem;padding:6px 8px;border:1px solid #8a8886;border-radius:3px;font-size:.875rem}.admin-hint{font-weight:400;color:#a19f9d;font-size:.75rem}.admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}.admin-page-head>div{min-width:0}.admin-page-head>.admin-add-btn{flex-shrink:0}.admin-add-btn{background:#0078d4;color:#fff;border:none;padding:7px 16px;border-radius:3px;font-size:.875rem;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.admin-add-btn:hover{background:#106ebe}.admin-add-btn:disabled{opacity:.6;cursor:not-allowed}.admin-empty{color:#a19f9d;font-style:italic}.admin-allowlist-table-wrap{overflow-x:auto}.admin-allowlist-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-allowlist-table th{text-align:left;padding:8px 10px;border-bottom:2px solid #edebe9;color:#605e5c;font-weight:600;font-size:.8125rem}.admin-allowlist-table td{padding:8px 10px;border-bottom:1px solid #edebe9}.admin-remove-btn{background:none;border:1px solid #a80000;color:#a80000;padding:3px 10px;border-radius:3px;font-size:.8125rem;cursor:pointer}.admin-remove-btn:hover{background:#a80000;color:#fff}.admin-remove-btn:disabled{opacity:.6;cursor:not-allowed}.app-auth-pending{font-family:Segoe UI,sans-serif;text-align:center;color:#5a6472;margin:15vh auto;max-width:480px;padding:0 24px}.am{--am-ink: #1b1a19;--am-ink-soft: #605e5c;--am-line: #e1dfdd;--am-line-strong: #c8c6c4;--am-accent: #0f6cbd;--am-accent-ink: #ffffff;--am-danger: #a4262c;--am-surface: #ffffff;--am-surface-alt: #faf9f8;--am-radius: 6px;--am-1: 4px;--am-2: 8px;--am-3: 12px;--am-4: 16px;--am-5: 24px;--am-6: 32px;max-width:1120px;margin:0 auto;padding:var(--am-6) var(--am-5) 64px;color:var(--am-ink);font-size:14px;line-height:1.5}.am-head h1{margin:0;font-size:28px;font-weight:600;letter-spacing:-.01em}.am-sub{margin:6px 0 0;max-width:80ch;color:var(--am-ink-soft)}.am-workspace{margin:4px 0 0;font-size:15px;font-weight:600;color:var(--am-ink, #1b1a19)}.am-identity{display:flex;flex-wrap:wrap;gap:var(--am-5) 48px;align-items:flex-start;justify-content:space-between;margin:var(--am-5) 0 var(--am-2);padding:18px 20px;background:var(--am-surface-alt);border:1px solid var(--am-line);border-radius:var(--am-radius)}.am-identity-facts{display:flex;flex-wrap:wrap;gap:var(--am-3) 48px}.am-fact{display:flex;flex-direction:column;gap:2px;min-width:0}.am-fact-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--am-ink-soft)}.am-fact-value{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:600}.am-fact-note{font-size:12px;color:var(--am-ink-soft)}.am-mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:13px;font-weight:500}.am-copy{border:0;background:none;cursor:pointer;padding:2px var(--am-1);border-radius:var(--am-1);color:var(--am-ink-soft);font-size:14px;line-height:1}.am-copy:hover{background:#f0efee;color:var(--am-ink)}.am-storage{display:flex;gap:var(--am-3);align-items:flex-start;cursor:pointer}.am-storage .am-switch{display:block;cursor:pointer}.am-switch{flex:0 0 auto;position:relative;width:40px;height:20px;margin-top:2px;border-radius:10px;background:var(--am-line-strong, #c8c6c4);transition:background .12s ease}.am-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .12s ease}.am-storage input:checked+.am-switch,.am-toggle input:checked+.am-switch{background:var(--am-accent)}.am-storage input:checked+.am-switch:after,.am-toggle input:checked+.am-switch:after{transform:translate(20px)}.am-storage input:focus-visible+.am-switch,.am-toggle input:focus-visible+.am-switch{outline:2px solid var(--am-accent);outline-offset:2px}.am-storage input:disabled+.am-switch,.am-toggle input:disabled+.am-switch{opacity:.5;cursor:not-allowed}.am-toggle input{position:absolute;inset:0;width:40px;height:20px;margin:0;opacity:0;cursor:pointer;z-index:1}.am-toggle .am-switch{margin-top:0}.am-storage-text{display:flex;flex-direction:column;gap:2px}.am-storage-title{font-weight:600;cursor:pointer}.am-storage-note{font-size:12px;color:var(--am-ink-soft)}.am-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--am-4);margin:var(--am-4) 0 0;padding:10px 14px;border-radius:var(--am-radius);border:1px solid}.am-banner-success{background:#f1faf1;border-color:#9fd89f}.am-banner-error{background:#fdf3f4;border-color:#eeacb2;color:var(--am-danger)}.am-banner button{border:0;background:none;cursor:pointer;font-size:18px;line-height:1;color:inherit}.am-people{margin-top:28px}.am-toolbar{display:flex;gap:var(--am-3);align-items:center;justify-content:space-between;margin-bottom:var(--am-3)}.am-search{flex:1 1 280px;max-width:340px;padding:7px var(--am-3);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);font:inherit}.am-search:focus-visible{outline:2px solid var(--am-accent);outline-offset:-1px;border-color:var(--am-accent)}.am-table-wrapper{overflow-x:auto;background:var(--am-surface);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);-webkit-overflow-scrolling:touch}.am-table{width:100%;min-width:860px;border-collapse:collapse;table-layout:fixed}.am-table th,.am-table td{text-align:left;padding:14px var(--am-4);vertical-align:middle;border-bottom:1px solid var(--am-line)}.am-table thead th{background:var(--am-surface-alt);font-size:12px;font-weight:600;color:var(--am-ink-soft);white-space:nowrap}.am-table tbody tr:last-child td,.am-table tbody tr:last-child th{border-bottom:0}.am-table tbody tr:hover{background:#fbfaf9}.am-user-cell{font-weight:600;font-size:14px;letter-spacing:normal;text-transform:none;background:transparent;color:var(--am-ink)}.am-name-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-table th:nth-child(1),.am-table td:nth-child(1){width:22%}.am-table th:nth-child(2),.am-table td:nth-child(2){width:22%}.am-table th:nth-child(3),.am-table td:nth-child(3){width:16%}.am-table th:nth-child(4),.am-table td:nth-child(4){width:12%}.am-table th:nth-child(5),.am-table td:nth-child(5){width:14%}.am-table th:nth-child(6),.am-table td:nth-child(6){width:7%;min-width:60px}.am-table th:nth-child(7),.am-table td:nth-child(7){width:7%;min-width:80px;text-align:right}.am-table td:nth-child(7){text-align:right}.am-row-busy{opacity:.55;pointer-events:none}.am-email,.am-added-by{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-email{font-size:13px;color:var(--am-ink-soft)}.am-muted{color:var(--am-ink-soft);font-size:13px}.am-role{width:100%;max-width:160px;padding:5px var(--am-2);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);background:var(--am-surface);font:inherit;cursor:pointer}.am-role:hover:not(:disabled){border-color:var(--am-accent)}.am-role:focus-visible{outline:2px solid var(--am-accent);outline-offset:-1px}.am-role:disabled{background:var(--am-surface-alt);color:var(--am-ink-soft);cursor:not-allowed}.am-status{display:inline-flex;align-items:center;gap:6px;padding:2px 9px 2px 7px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.am-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.am-status-active{background:#f1faf1;color:#0e700e}.am-status-invited{background:#fff8e6;color:#8a6100}.am-status-disabled{background:#f3f2f1;color:#605e5c}.am-actions{display:flex;gap:var(--am-1);justify-content:flex-end}.am-link{border:0;background:none;padding:var(--am-1) 6px;border-radius:var(--am-1);font:inherit;color:var(--am-accent);cursor:pointer;white-space:nowrap}.am-link:hover:not(:disabled){background:#eff6fc;text-decoration:underline}.am-link:focus-visible{outline:2px solid var(--am-accent);outline-offset:1px}.am-link:disabled{color:#a19f9d;cursor:not-allowed}.am-link-danger{color:var(--am-danger)}.am-link-danger:hover:not(:disabled){background:#fdf3f4}.am-empty{margin:0;padding:40px var(--am-4);text-align:center;color:var(--am-ink-soft);background:var(--am-surface);border:1px solid var(--am-line);border-radius:var(--am-radius)}.am-primary,.am-secondary,.am-danger{padding:7px var(--am-4);border-radius:var(--am-radius);font:inherit;font-weight:600;cursor:pointer;border:1px solid transparent;white-space:nowrap}.am-primary{background:var(--am-accent);color:var(--am-accent-ink)}.am-primary:hover:not(:disabled){background:#115ea3}.am-secondary{background:var(--am-surface);border-color:var(--am-line-strong);color:var(--am-ink)}.am-secondary:hover:not(:disabled){background:var(--am-surface-alt)}.am-danger{background:var(--am-danger);color:#fff}.am-danger:hover:not(:disabled){background:#8b1f24}.am-primary:disabled,.am-secondary:disabled,.am-danger:disabled{opacity:.5;cursor:not-allowed}.am-primary:focus-visible,.am-secondary:focus-visible,.am-danger:focus-visible{outline:2px solid var(--am-accent);outline-offset:2px}.am-overlay{position:fixed;inset:0;background:#0006;display:grid;place-items:center;padding:var(--am-5);z-index:1000}.am-modal{width:min(520px,100%);max-height:90vh;overflow-y:auto;background:var(--am-surface);border-radius:var(--am-2);padding:var(--am-5);box-shadow:0 8px 32px #00000038}.am-modal h2{margin:0;font-size:20px;font-weight:600}.am-modal-sub{margin:6px 0 20px;color:var(--am-ink-soft)}.am-field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;border:0;padding:0}.am-field>span,.am-field legend{font-weight:600;padding:0}.am-field input[type=email]{padding:var(--am-2) var(--am-3);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);font:inherit}.am-field input[type=email]:focus-visible{outline:2px solid var(--am-accent);outline-offset:-1px;border-color:var(--am-accent)}.am-roles{gap:var(--am-2)}.am-role-option{display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:1px;align-items:start;padding:10px var(--am-3);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);cursor:pointer}.am-role-option:hover{border-color:var(--am-accent);background:#fbfdff}.am-role-option.is-selected{border-color:var(--am-accent);background:#eff6fc;box-shadow:inset 0 0 0 1px var(--am-accent)}.am-role-option:focus-within{outline:2px solid var(--am-accent);outline-offset:1px}.am-role-option input{grid-row:1 / span 2;margin-top:3px;accent-color:var(--am-accent)}.am-role-option-label{font-weight:600;cursor:pointer}.am-role-option-blurb{font-size:12px;color:var(--am-ink-soft)}.am-modal-actions{display:flex;gap:var(--am-2);justify-content:flex-end;margin-top:var(--am-1)}.am-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(max-width:860px){.am-identity{flex-direction:column}.am-toolbar{flex-wrap:wrap}.am-search{max-width:none}.am-table th:last-child,.am-table td:last-child{position:sticky;right:0;border-left:1px solid var(--am-line);z-index:10}.am-table th:last-child{background:var(--am-surface-alt)}.am-table td:last-child{background:var(--am-surface)}.am-table tbody tr:hover td:last-child{background:#fbfaf9}.am-table tbody tr.am-row-dirty td:last-child{background:#fffcf5}.am-table tbody tr.am-row-dirty:hover td:last-child{background:#fff8eb!important}}@media(max-width:560px){.am{padding:var(--am-4) var(--am-4) 48px}.am-actions{flex-direction:column;align-items:stretch}}@media(prefers-reduced-motion:reduce){.am-switch,.am-switch:after{transition:none}}.am-head,.am-section{margin-bottom:var(--am-6)}.am-section-title{font-size:18px;font-weight:600;margin:0 0 var(--am-4);color:var(--am-ink)}.am-card{background:var(--am-surface);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);padding:var(--am-5)}.am-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--am-5);border:0;padding:0}.am-label{font-size:14px;font-weight:600;color:var(--am-ink)}.am-input,.am-textarea{width:100%;padding:var(--am-2) var(--am-3);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);font:inherit;color:inherit;background:var(--am-surface);transition:border-color .15s,box-shadow .15s}.am-textarea{resize:vertical;min-height:80px}.am-input:focus-visible,.am-textarea:focus-visible{outline:none;border-color:var(--am-accent);box-shadow:0 0 0 1px var(--am-accent)}.am-input[aria-invalid=true]{border-color:var(--am-danger);box-shadow:0 0 0 1px var(--am-danger)}.am-field-note{margin:2px 0 0;font-size:12px;color:var(--am-ink-soft)}.am-field-error,.am-form-error{margin:var(--am-1) 0 0;font-size:13px;color:var(--am-danger)}.am-form-error{margin-top:var(--am-4);font-weight:600}.am-legend{margin:0 0 var(--am-4)}.am-legend-row{display:flex;gap:var(--am-2);font-size:13px;line-height:1.6}.am-legend-row dt{font-weight:600;color:var(--am-ink)}.am-legend-row dt:after{content:" —"}.am-legend-row dd{margin:0;color:var(--am-ink-soft)}.am-toggle{display:inline-flex;align-items:center;position:relative}.am-row-dirty{background:#fffcf5}.am-row-dirty:hover{background:#fff8eb!important}.am-pagefoot{position:sticky;bottom:var(--am-5);margin-top:var(--am-6);z-index:100}.am-formbar{display:flex;align-items:center;gap:var(--am-3);justify-content:flex-end;padding:var(--am-4) var(--am-5);background:var(--am-surface);border:1px solid var(--am-line-strong);border-radius:var(--am-radius);box-shadow:0 -4px 16px #00000014}.am-formbar-success{background:#f1faf1;border-color:#9fd89f}.am-formbar-error{background:#fdf3f4;border-color:#eeacb2}.am-formbar-dismiss{border:0;background:none;cursor:pointer;font-size:18px;line-height:1;color:var(--am-ink-soft);padding:0 var(--am-2)}.am-formbar-dismiss:hover{color:var(--am-ink)}.am-formbar-text{margin-right:auto;font-size:14px;font-weight:600;color:var(--am-ink)}.am-formbar-text-clean{font-weight:400;color:var(--am-ink-soft)}.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}:focus-visible{outline:2px solid #0078d4;outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;min-width:320px;min-height:100vh;overflow-wrap:break-word}#root{width:100%}button:disabled{cursor:not-allowed;opacity:.55;filter:grayscale(1)}.react-flow__node:focus-visible{outline:3px solid #005da6;outline-offset:2px;border-radius:4px;z-index:10!important}.react-flow__node.selected{outline:2px solid #005da6;border-radius:4px}
