:root{--color-mac-bg: #f5f5f7;--color-mac-surface: rgba(255, 255, 255, .9);--color-mac-surface-strong: rgba(255, 255, 255, .92);--color-mac-border: rgba(0, 0, 0, .1);--color-mac-border-soft: rgba(0, 0, 0, .06);--color-mac-text: #1d1d1f;--color-mac-text-secondary: #6e6e73;--color-mac-muted: #86868b;--color-mac-active: #0066cc;--color-mac-active-hover: #0055b3;--color-mac-error-bg: #fef2f2;--color-mac-error-text: #b91c1c;--color-mac-error-border: #fca5a5;--color-mac-warning-bg: #fffbeb;--color-mac-warning-text: #92400e;--color-mac-warning-border: #fcd34d;--color-mac-success-bg: #ecfdf5;--color-mac-success-text: #047857;--color-mac-success-border: #a7f3d0;--color-mac-accent: #007aff;--color-mac-accent-subtle: rgba(0, 122, 255, .12);--color-mac-text-primary: #1d1d1f;--color-mac-error: #c0392b;--color-mac-warning: #b56c00;--color-mac-bg-subtle: rgba(0, 0, 0, .02);--color-mac-bg-hover: rgba(0, 0, 0, .04);--color-status-failed: #c0392b;--shadow-panel: 0 10px 28px rgba(29, 29, 31, .07), 0 1px 0 rgba(255, 255, 255, .8) inset;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, "Cascadia Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-feature-display: "ss01" 1, "ss02" 1, "cv11" 1, "tnum" 1;--font-feature-text: "kern" 1, "liga" 1;--font-feature-tabular: "tnum" 1, "zero" 1;--tone-success-bg: #ecfdf5;--tone-success-border: #a7f3d0;--tone-success-text: #047857;--tone-success-dot: #10b981;--tone-info-bg: #eff6ff;--tone-info-border: #bfdbfe;--tone-info-text: #1d4ed8;--tone-info-dot: #3b82f6;--tone-warning-bg: #fffbeb;--tone-warning-border: #fcd34d;--tone-warning-text: #92400e;--tone-warning-dot: #f59e0b;--tone-danger-bg: #fef2f2;--tone-danger-border: #fca5a5;--tone-danger-text: #b91c1c;--tone-danger-dot: #ef4444;--tone-neutral-bg: rgba(0, 0, 0, .04);--tone-neutral-border: rgba(0, 0, 0, .08);--tone-neutral-text: #4b5563;--tone-neutral-dot: #9ca3af;--motion-fast: .12s;--motion-base: .2s;--motion-slow: .32s;--motion-ease: cubic-bezier(.22, .61, .36, 1);background:var(--color-mac-bg);color:var(--color-mac-text);font-family:var(--font-sans);font-feature-settings:var(--font-feature-text);font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.page-stack,.runs-panel,.configuration-panel,.videos-panel{animation:fade-rise var(--motion-slow) var(--motion-ease) both}.data-grid tbody tr{animation:fade-rise .26s var(--motion-ease) both}.data-grid tbody tr:nth-child(1){animation-delay:0ms}.data-grid tbody tr:nth-child(2){animation-delay:24ms}.data-grid tbody tr:nth-child(3){animation-delay:48ms}.data-grid tbody tr:nth-child(4){animation-delay:72ms}.data-grid tbody tr:nth-child(5){animation-delay:96ms}.data-grid tbody tr:nth-child(6){animation-delay:.12s}.data-grid tbody tr:nth-child(7){animation-delay:144ms}.data-grid tbody tr:nth-child(8){animation-delay:168ms}.data-grid tbody tr:nth-child(9){animation-delay:192ms}.data-grid tbody tr:nth-child(10){animation-delay:216ms}.data-grid tbody tr:nth-child(11){animation-delay:.24s}.data-grid tbody tr:nth-child(n+12){animation-delay:264ms}.inline-status svg,.full-page-status svg{animation:pulse-soft 1.8s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.workspace-content,.data-grid tbody tr{animation:none}.inline-status svg,.full-page-status svg{animation:none}}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 320'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"),radial-gradient(900px circle at 8% 10%,rgba(0,102,204,.075),transparent 45%),radial-gradient(820px circle at 92% 8%,rgba(255,19,97,.05),transparent 40%),var(--color-mac-bg);background-attachment:fixed;margin:0;min-width:320px;overflow:hidden}h1,h2,h3,h4{font-family:var(--font-sans);font-feature-settings:var(--font-feature-display);font-synthesis:none;margin:0}h1{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.15}h2{font-size:18px;font-weight:600;letter-spacing:-.012em;line-height:1.2}h3{font-size:15px;font-weight:600;letter-spacing:-.005em;line-height:1.25}h4{font-size:13px;font-weight:600;letter-spacing:0;line-height:1.3;text-transform:none}button,input,select,textarea{font:inherit}button{font-family:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000002e;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#00000047}.mac-panel{background:var(--color-mac-surface);border:1px solid var(--color-mac-border);border-radius:12px;box-shadow:var(--shadow-panel)}.mac-input,input,select,textarea{background:#fffffff5;border:1px solid var(--color-mac-border);border-radius:8px;color:var(--color-mac-text);padding:0 12px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;width:100%}input,select{height:38px}textarea{line-height:1.45;min-height:104px;padding-bottom:10px;padding-top:10px;resize:vertical}.mac-input:focus,input:focus,select:focus,textarea:focus{border-color:var(--color-mac-active);box-shadow:0 0 0 3px #0066cc26;outline:none}.mac-input.is-invalid,input.is-invalid,select.is-invalid,textarea.is-invalid{background:var(--color-mac-error-bg);border-color:var(--color-mac-error-text)}.mac-btn-primary,.mac-btn-secondary,.primary-button,.ghost-button,.nav-button,.config-tab,.icon-button{align-items:center;border:0;cursor:pointer;display:inline-flex;font-weight:600;gap:7px;justify-content:center;transition:background .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.mac-btn-primary,.primary-button{background:var(--color-mac-active);border:1px solid var(--color-mac-active);border-radius:8px;color:#fff;min-height:38px;padding:0 14px}.mac-btn-primary:hover,.primary-button:hover{background:var(--color-mac-active-hover)}.mac-btn-secondary,.ghost-button,.icon-button{background:#ffffffd9;border:1px solid var(--color-mac-border);border-radius:8px;color:var(--color-mac-text);min-height:38px;padding:0 14px}.mac-btn-secondary:hover,.ghost-button:hover,.icon-button:hover{background:#fff}.primary-button:disabled,.ghost-button:disabled,.icon-button:disabled{cursor:default;opacity:.55}.primary-button svg,.ghost-button svg,.icon-button svg{height:16px;width:16px}.primary-button span,.ghost-button span,.icon-button span,.nav-button span,.config-tab span,.mac-btn-primary span,.mac-btn-secondary span,.danger-button span,.compact-button span,button span{color:inherit}.full-page-status,.login-screen{align-items:center;display:grid;height:100vh;justify-content:center;overflow:hidden;padding:24px}.full-page-status{color:var(--color-mac-text-secondary);gap:10px}.full-page-status svg,.inline-status svg{animation:spin 1.1s linear infinite;height:18px;width:18px}.login-panel{display:grid;gap:16px;max-width:400px;padding:32px;width:min(100%,400px)}.login-brand{align-items:center;display:flex;flex-direction:column;gap:12px;margin-bottom:8px;text-align:center}.login-brand h1,.brand-row h1{font-size:18px;line-height:1.2;margin:0}.login-brand p,.brand-row p{color:var(--color-mac-text-secondary);font-size:13px;margin:3px 0 0;overflow-wrap:anywhere}.brand-row{align-items:center;display:flex;gap:10px;min-width:0}.brand-row.compact{flex:0 0 auto;height:64px;padding:16px 12px 8px}.brand-mark{align-items:center;background:linear-gradient(180deg,#0a72d4,#0058b8);border-radius:11px;box-shadow:0 6px 14px #0066cc47,0 1px #ffffff59 inset,0 -1px #00000014 inset;color:#fff;display:grid;flex:0 0 38px;height:38px;justify-content:center;width:38px}.brand-mark svg{height:20px;width:20px}label{color:#374151;display:grid;font-size:13px;font-weight:600;gap:6px}.console-layout{display:grid;grid-template-columns:240px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;overflow:hidden;width:100vw}.sidebar{background:#fbfbfdf5;border-right:1px solid rgba(0,0,0,.08);display:flex;flex-direction:column;min-width:0;overflow:hidden}.sidebar nav{display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding:12px 12px 8px}.sidebar-section{display:grid;gap:2px}.sidebar-section-label{color:var(--color-mac-muted);font-feature-settings:"tnum" 1;font-size:10.5px;font-weight:700;letter-spacing:.085em;margin:0 0 4px 10px;text-transform:uppercase}.nav-button{background:transparent;border-radius:7px;color:#374151;justify-content:flex-start;min-height:34px;padding:0 10px;text-align:left;width:100%}.nav-button{transition:background var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-base) var(--motion-ease)}.nav-button.active{background:linear-gradient(180deg,#0a72d4,#0058b8);color:#fff;box-shadow:0 4px 12px #0066cc38,0 1px #ffffff40 inset}.nav-button:not(.active):hover{background:#0000000b}.nav-button:not(.active):focus-visible{background:#0066cc14;box-shadow:0 0 0 2px #0066cc59;outline:none}.nav-button svg{color:currentColor;height:16px;transition:transform var(--motion-fast) var(--motion-ease);width:16px}.nav-button:not(.active):hover svg{transform:translate(1px)}.sidebar>.ghost-button{flex:0 0 auto;justify-content:flex-start;margin:auto 12px 12px;width:calc(100% - 24px)}.workspace{background:#ffffffb8;display:flex;flex-direction:column;min-width:0;overflow:hidden}.workspace-header{align-items:center;background:#ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 8px 16px -16px #0000002e;display:flex;flex:0 0 64px;justify-content:space-between;padding:0 24px;position:relative;z-index:2}.workspace-header-title{display:flex;flex-direction:column;gap:1px;min-width:0}.workspace-header-kicker{color:var(--color-mac-active);font-feature-settings:"tnum" 1;font-size:10.5px;font-weight:700;letter-spacing:.085em;line-height:1;text-transform:uppercase}.status-pill{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;flex:0 0 auto;font-feature-settings:var(--font-feature-tabular);font-size:12px;font-weight:600;gap:8px;letter-spacing:.005em;min-height:28px;padding:0 11px;transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.status-dot{background:currentColor;border-radius:999px;flex:0 0 8px;height:8px;width:8px}.status-pill.ready,.status-pill.ok{background:var(--tone-success-bg);border-color:var(--tone-success-border);color:var(--tone-success-text)}.status-pill.ready .status-dot,.status-pill.ok .status-dot{background:var(--tone-success-dot)}.status-pill.pending{background:var(--tone-info-bg);border-color:var(--tone-info-border);color:var(--tone-info-text)}.status-pill.pending .status-dot{background:var(--tone-info-dot)}.status-pill.warning,.status-pill.warn{background:var(--tone-warning-bg);border-color:var(--tone-warning-border);color:var(--tone-warning-text)}.status-pill.warning .status-dot,.status-pill.warn .status-dot{background:var(--tone-warning-dot)}.status-pill.blocked,.status-pill.danger{background:var(--tone-danger-bg);border-color:var(--tone-danger-border);color:var(--tone-danger-text)}.status-pill.blocked .status-dot,.status-pill.danger .status-dot{background:var(--tone-danger-dot)}.status-pill.muted{background:var(--tone-neutral-bg);border-color:var(--tone-neutral-border);color:var(--tone-neutral-text)}.status-pill.muted .status-dot{background:var(--tone-neutral-dot)}.workspace-content{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px 24px 40px;scrollbar-gutter:stable}.warning-band,.inline-status,.form-error,.notice-band{align-items:flex-start;border-radius:10px;display:flex;flex:0 0 auto;gap:9px;padding:10px 12px}.warning-band{background:var(--color-mac-warning-bg);border:1px solid var(--color-mac-warning-border);color:var(--color-mac-warning-text)}.password-warning-band{align-items:center;justify-content:space-between}.password-warning-body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.password-warning-body strong{font-size:13px;font-weight:650}.password-warning-body span{font-size:12px;line-height:1.4;opacity:.85}.preview-unmigratable-body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.preview-unmigratable-body strong{font-size:13px;font-weight:650}.preview-unmigratable-body span{font-size:12px;line-height:1.4;opacity:.85}.cell-guid{background:#0000000a;border-radius:4px;font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:11px;overflow-wrap:anywhere;padding:1px 5px;word-break:break-all}.cell-muted{color:var(--text-muted, rgba(0, 0, 0, .35));font-variant-numeric:tabular-nums}.inline-status{background:#ffffffdb;border:1px solid var(--color-mac-border);color:var(--color-mac-text-secondary)}code,.mono,kbd,samp{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:.92em}kbd{background:#0000000a;border:1px solid var(--color-mac-border);border-radius:5px;box-shadow:0 1px #00000014;color:var(--color-mac-text);padding:1px 6px}.data-grid td,.data-grid th,.preview-list-row span,.pagination-row,.pagination-row span,.preview-column-footer,.preview-column-footer span,.preview-list-empty,.sync-tile,.run-counter-grid,.runs-toolbar p,.profile-chip{font-feature-settings:var(--font-feature-tabular);font-variant-numeric:tabular-nums}@keyframes skeleton-shimmer{0%{background-position:-240px 0}to{background-position:240px 0}}.skeleton{display:grid;gap:8px}.skeleton-row{animation:skeleton-shimmer 1.4s ease-in-out infinite,skeleton-fade-in .24s var(--motion-ease) both;background-color:#0000000b;background-image:linear-gradient(90deg,#0000,#ffffff8c,#0000);background-repeat:no-repeat;background-size:240px 100%;border-radius:8px;height:36px}.skeleton-list .skeleton-row{width:100%}.skeleton-table .skeleton-row{height:30px}.skeleton-cards{grid-auto-flow:column;grid-auto-columns:minmax(120px,1fr);gap:12px}.skeleton-cards .skeleton-row{height:64px}@keyframes skeleton-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.skeleton-row{animation:none;background-image:none}}.form-error{background:var(--color-mac-error-bg);border:1px solid var(--color-mac-error-border);color:var(--color-mac-error-text)}.form-error svg,.warning-band svg,.notice-band svg{flex:0 0 auto;height:17px;margin-top:1px;width:17px}.notice-band{background:var(--color-mac-success-bg);border:1px solid var(--color-mac-success-border);color:var(--color-mac-success-text)}.configuration-panel,.videos-panel,.runs-panel{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.config-tabs{background:#f8f8fab8;border-bottom:1px solid var(--color-mac-border-soft);display:flex;flex:0 0 auto;overflow-x:auto}.config-tab{background:transparent;border-bottom:2px solid transparent;color:var(--color-mac-text-secondary);flex:0 0 auto;min-height:48px;padding:0 18px;white-space:nowrap}.config-tab.active{background:#ffffffc2;border-bottom-color:var(--color-mac-active);color:var(--color-mac-active)}.config-tab:not(.active):hover{background:#ffffff80;color:var(--color-mac-text)}.config-tab svg{height:16px;width:16px}.tab-state{border-radius:999px;font-size:10px;font-weight:700;padding:2px 6px}.tab-state.ready{background:var(--color-mac-success-bg);color:var(--color-mac-success-text)}.tab-state.configured{background:#0071e31f;color:var(--color-mac-active)}.tab-state.failed{background:var(--color-mac-error-bg);color:var(--color-mac-error-text)}.tab-state.warning{background:var(--color-mac-warning-bg);color:var(--color-mac-warning-text)}.tab-state.pending{background:#fff7ed;color:#c2410c}.configuration-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:22px}.configuration-section{display:grid;gap:18px;max-width:900px}.section-heading h2{font-size:18px;line-height:1.2;margin:0}.section-heading p{color:var(--color-mac-text-secondary);margin:4px 0 0}.profile-form{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.wide-field{grid-column:1 / -1}.field-hint-error{color:var(--color-status-failed, #c0392b)}.form-error-hint{border-left:3px solid var(--color-status-failed, #c0392b);color:var(--color-status-failed, #c0392b);padding-left:10px}.aws-buckets-fieldset{border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:12px;padding:14px 16px 16px}.aws-buckets-fieldset>legend{color:var(--color-mac-text-secondary);font-size:12px;font-weight:600;letter-spacing:.04em;padding:0 6px;text-transform:uppercase}.muted-form input{background:#f8f8faf0;color:var(--color-mac-text-secondary)}.checkbox-field{align-items:center;align-self:end;display:flex;gap:10px;min-height:38px}.checkbox-field input{flex:0 0 auto;height:16px;width:16px}.action-row,.split-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.compact-button{min-width:0;width:auto}.danger-button{color:#9f1239}.danger-button:hover:not(:disabled){border-color:#9f12394d;color:#881337}.inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.inline-actions .link-button{align-items:center;display:inline-flex;gap:5px;white-space:nowrap}.inline-actions svg{height:15px;width:15px}.asset-detail-panel{border-top:1px solid var(--color-mac-border-soft);display:grid;gap:12px;margin-top:18px;padding-top:16px}.runs-toolbar.compact{margin-bottom:0}.catalog-config-layout{display:grid;gap:16px}.catalog-query-sandbox{display:grid;gap:12px}.catalog-query-editor{background:#ffffffd9;border:1px solid var(--color-mac-border-soft);border-radius:8px;color:var(--color-mac-text);font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:13px;line-height:1.45;padding:10px 12px;resize:vertical;width:100%}.catalog-query-editor:focus{border-color:var(--color-mac-accent, #4f8eff);outline:none}.catalog-query-mapping{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.catalog-query-mapping-heading{font-size:14px;font-weight:600;margin:8px 0 0}.mapping-prefix-list{background:#f8f8fa99;border:1px solid var(--color-mac-border-soft);border-radius:8px;list-style:none;margin:0;padding:8px 12px}.mapping-prefix-list li{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:13px;padding:4px 0}.mapping-prefix-list li code{background:transparent}.connection-status{align-items:center;background:#ffffffb8;border:1px solid var(--color-mac-border-soft);border-radius:10px;color:var(--color-mac-text-secondary);display:flex;flex-wrap:wrap;gap:8px;padding:12px}.connection-status span{background:#f8f8faeb;border-radius:999px;color:var(--color-mac-text);font-size:12px;padding:5px 9px}.query-workbench{display:grid;gap:14px}.query-workbench h3{font-size:18px;margin:0}.mapper-panel,.bulk-form{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:14px;padding:14px}.page-stack{align-content:start;display:grid;gap:14px;min-height:0}.section-header{align-items:center;display:flex;gap:14px;justify-content:space-between}.section-header h2,.section-header p{margin:0}.section-header p{color:var(--color-mac-text-secondary);margin-top:4px}.bulk-form-header,.section-heading-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;min-width:0}.bulk-form-header h3,.section-heading-row h3{margin:0;min-width:0}.bulk-form-header p{color:var(--color-mac-text-secondary);margin:4px 0 0}.bulk-form-header>div{min-width:0}.section-heading-row h3 span{color:var(--color-mac-text-secondary);flex:0 0 auto;font-size:13px;font-weight:650;white-space:nowrap}.ready-chip{color:var(--color-mac-success-text)}.run-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.run-summary-grid article{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:6px;padding:14px}.run-summary-grid span{color:var(--color-mac-text-secondary);font-size:12px;font-weight:700;text-transform:uppercase}.run-summary-grid strong{color:var(--color-mac-text);font-size:clamp(20px,2.4vw,30px);line-height:1.1}@media(max-width:900px){.run-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.warning-chip{color:var(--color-mac-warning-text)}.mapper-panel .split-toolbar p{color:var(--color-mac-text-secondary);font-size:13px;margin:4px 0 0}.mapper-contract{border:1px solid var(--color-mac-border-soft);border-radius:10px;overflow:hidden}.mapping-row{align-items:start;background:#ffffffb8;border-bottom:1px solid var(--color-mac-border-soft);display:grid;gap:16px;grid-template-columns:minmax(220px,1fr) minmax(260px,1fr);padding:12px}.mapping-row:last-child{border-bottom:0}.mapping-row-header{background:#00000006;color:var(--color-mac-text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.mapping-row.needs-attention{background:#fffbeb80}.mapping-field{display:grid;gap:5px;min-width:0}.mapping-field strong{color:var(--color-mac-text);font-size:14px}.mapping-field code{color:var(--color-mac-active);font-size:12px;overflow-wrap:anywhere}.mapping-field span{color:var(--color-mac-text-secondary);font-size:12px;line-height:1.4}.mapping-picker{display:grid;gap:8px;min-width:0}.mapping-meta{align-items:center;display:flex;flex-wrap:wrap;font-size:12px;gap:10px}.mapping-sample-inline{color:var(--color-mac-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.mapping-sample-label{color:var(--color-mac-text);font-weight:600;margin-right:4px}.column-picker{display:grid;gap:6px;min-width:0}.column-picker select{background:#fffffff2;border:1px solid var(--color-mac-border);border-radius:8px;font:inherit;padding:6px 28px 6px 10px}.visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.profile-chip{align-items:center;background:#ffffffe0;border:1px solid var(--color-mac-border);border-radius:999px;color:var(--color-mac-text-secondary);display:inline-flex;font-size:12px;font-weight:650;gap:7px;min-height:30px;padding:0 10px}.profile-chip svg{color:var(--color-mac-active);height:15px;width:15px}.errors-panel{display:flex;flex-direction:column;gap:12px}.errors-filter-row{align-items:end;display:flex;flex-wrap:wrap;gap:10px;margin:0 12px}.errors-filter-row label{display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:3px;color:var(--color-mac-muted, #707070)}.errors-filter-row select,.errors-filter-row input{background:#fff;border:1px solid var(--color-mac-border, rgba(0, 0, 0, .18));border-radius:5px;font-size:12px;padding:4px 8px}.errors-search-field{flex:1 1 200px;min-width:200px}.errors-table-wrap{border:1px solid var(--color-mac-border, rgba(0, 0, 0, .08));border-radius:8px;margin:0 12px;overflow-x:auto}.errors-table{border-collapse:collapse;font-size:12px;width:100%}.errors-table th{background:#00000008;color:var(--color-mac-muted, #707070);font-size:11px;font-weight:650;padding:6px 10px;text-align:left;text-transform:uppercase}.errors-table td{border-top:1px solid var(--color-mac-border, rgba(0, 0, 0, .05));padding:6px 10px;vertical-align:top}.errors-table code{background:#0000000a;border-radius:3px;font-size:11px;padding:1px 5px}.errors-row.severity-critical,.errors-row.severity-error{background:#c832320a}.errors-row.severity-warning{background:#dca01e0a}.errors-when{white-space:nowrap;color:var(--color-mac-muted, #707070)}.errors-message{max-width:720px;overflow-wrap:anywhere}.severity-pill{border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 8px;text-transform:uppercase}.severity-pill.severity-info{background:#3278c82e;color:#1d4f80}.severity-pill.severity-warning{background:#dca01e38;color:#8b5400}.severity-pill.severity-error{background:#c8323233;color:#8b1f1f}.severity-pill.severity-critical{background:#8b1f1f;color:#fff}.errors-row-expanded td{background:#00000005}.errors-row-expanded pre{font-size:11px;margin:0;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.run-status-chip{min-width:200px}.run-status-chip-sep{color:var(--color-mac-text-tertiary, rgba(0, 0, 0, .35));font-weight:500}.run-status-chip-status{color:var(--color-mac-text-secondary);font-feature-settings:var(--font-feature-tabular);font-variant-numeric:tabular-nums}.contract-panel{background:#ffffffb8;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:9px;padding:12px}.contract-panel div{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.contract-panel strong,.contract-panel span{border-radius:999px;font-size:12px;padding:4px 8px}.contract-panel strong{background:#0066cc1a;color:var(--color-mac-active)}.contract-panel span{background:#f8f8faeb;color:var(--color-mac-text-secondary)}.behavior-panel{background:#ffffffb8;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:10px;padding:12px}.behavior-panel div{display:grid;gap:3px}.behavior-panel strong{color:var(--color-mac-text);font-size:13px}.behavior-panel span{color:var(--color-mac-text-secondary);font-size:13px}.sql-editor{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;padding:14px}.sql-editor textarea{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);min-height:220px;resize:vertical}.data-panel{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:flex;flex-direction:column;gap:10px;min-height:0;overflow:hidden;padding:12px}.video-data-panel{flex:1 1 auto}.page-stack:has(.reports-panel),.page-stack:has(.video-detail-panel),.page-stack:has(.rollback-panel),.page-stack:has(.sync-tile-grid),.page-stack:has(.mappings-panel){grid-auto-rows:max-content}.reports-panel,.video-detail-panel,.rollback-panel,.mappings-panel{flex:0 0 auto;overflow:visible}.workspace-data-panel{min-height:600px;max-height:calc(100vh - 280px)}@media(min-height:900px){.workspace-data-panel{min-height:720px}}.grouped-workspace-grid{display:flex;flex-direction:column;overflow-y:auto;padding-right:4px}.grouped-workspace-header{align-items:center;border-bottom:1px solid var(--color-mac-border-soft);color:var(--color-mac-text-secondary);display:grid;font-size:12px;font-weight:600;gap:8px;grid-template-columns:32px minmax(0,2fr) 70px 90px 80px 90px 70px 110px;padding:6px 8px;position:sticky;top:0;background:#ffffffeb;z-index:1}.grouped-workspace-group{border-bottom:1px solid rgba(0,0,0,.06)}.grouped-workspace-group:last-child{border-bottom:none}.grouped-workspace-customer{align-items:center;display:grid;font-size:13px;gap:8px;grid-template-columns:32px minmax(0,2fr) 70px 90px 80px 90px 70px 110px;padding:4px 8px}.grouped-workspace-customer:hover{background:#0066cc0a}.grouped-workspace-cell{min-width:0;overflow-wrap:anywhere;white-space:normal}.grouped-workspace-cell.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.grouped-workspace-cell.select-cell{display:flex;justify-content:center}.customer-label{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-width:0}.customer-label strong{font-size:13px;min-width:0;overflow-wrap:anywhere}.grouped-workspace-plans{background:#ffffffe6;border:1px solid var(--color-mac-border-soft);border-radius:999px;color:var(--color-mac-text-secondary);font-size:11px;padding:2px 8px;min-width:0;overflow-wrap:anywhere;white-space:normal}.grouped-workspace-status{font-size:11px;font-weight:600}.customer-videos-toolbar{align-items:end;display:flex;gap:12px;margin-bottom:12px}.customer-videos-toolbar>.search-field{flex:1 1 auto;min-width:0}.customer-videos-toolbar>.search-field input[type=search]{width:100%}.customer-videos-toolbar .visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.validation-strip{border-radius:8px;font-size:13px;font-weight:650;padding:9px 11px}.validation-strip.valid{background:var(--color-mac-success-bg);color:var(--color-mac-success-text)}.validation-strip.invalid{background:var(--color-mac-error-bg);color:var(--color-mac-error-text)}.table-scroll{border:1px solid var(--color-mac-border-soft);border-radius:8px;flex:1 1 auto;min-height:0;overflow:auto;width:100%}.data-table{border-collapse:separate;border-spacing:0;min-width:780px;width:100%;table-layout:fixed}.data-table th,.data-table td{border-bottom:1px solid rgba(0,0,0,.055);padding:9px 12px;text-align:left;vertical-align:top}.data-table th{background:#f8f8fa;border-bottom:1px solid var(--color-mac-border-soft);color:var(--color-mac-text-secondary);font-size:12px;font-weight:650;position:sticky;text-transform:none;top:0;z-index:2}.data-table td{color:var(--color-mac-text);font-size:13px;max-width:340px;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.data-table tbody tr:hover{background:#0066cc0b}.mono-cell{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:12px}.guid-cell{color:#374151}.status-chip{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:12px;font-weight:650;min-height:24px;padding:0 8px}.status-migrated,.status-complete,.status-completed,.status-ready{background:var(--color-mac-success-bg);border-color:var(--color-mac-success-border);color:var(--color-mac-success-text)}.status-failed,.status-error{background:var(--color-mac-error-bg);border-color:var(--color-mac-error-border);color:var(--color-mac-error-text)}.status-partially-migrated{background:#fef3c7;border-color:#fde68a;color:#92400e}.status-pending,.status-processing,.status-planned,.status-catalog-synced,.status-catalog-imported,.status-in-progress,.status-retry-wait,.status-idle{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.filter-grid{align-items:end;background:#f8f8fab8;border-bottom:1px solid var(--color-mac-border-soft);display:grid;flex:0 0 auto;gap:12px;grid-template-columns:minmax(180px,1.2fr) minmax(180px,1fr) minmax(140px,.75fr) minmax(140px,.75fr) auto;padding:12px}.workspace-toolbar{align-items:center;background:#f8f8fab8;border-bottom:1px solid var(--color-mac-border-soft);display:flex;flex:0 0 auto;gap:12px;justify-content:space-between;padding:12px}.segmented-control{background:#ffffffe6;border:1px solid var(--color-mac-border);border-radius:8px;display:inline-flex;padding:3px}.segmented-control.wrap{flex-wrap:wrap;gap:4px}.segmented-control button{background:transparent;border:0;border-radius:6px;color:var(--color-mac-text-secondary);cursor:pointer;font-weight:650;min-height:30px;padding:0 10px}.segmented-control button.active{background:var(--color-mac-active);color:#fff}.classification-filter{display:grid;gap:7px}.workspace-filter-grid{align-items:start;background:#f8f8fab8;border-bottom:1px solid var(--color-mac-border-soft);display:grid;flex:0 0 auto;gap:12px;grid-template-columns:repeat(4,minmax(170px,1fr));padding:12px}.workspace-filter-grid.embedded{border:1px solid var(--color-mac-border-soft);border-radius:10px}.workspace-filter-grid.compact{grid-template-columns:minmax(240px,1fr) minmax(220px,.8fr) auto}.multi-select-field,.multi-select-control{position:relative}.multi-select-control svg{bottom:11px;color:var(--color-mac-muted);height:15px;left:10px;position:absolute;width:15px}.multi-select-control input{padding-left:32px}.secret-input{display:block;position:relative}.secret-input input{padding-right:36px;width:100%}.secret-input-toggle{align-items:center;background:none;border:none;bottom:0;color:var(--color-mac-muted);cursor:pointer;display:flex;padding:0 10px;position:absolute;right:0;top:0}.secret-input-toggle:hover{color:var(--color-mac-text, inherit)}.secret-input-toggle svg{height:15px;width:15px}.bucket-field{display:grid;gap:6px}.bucket-field-label{color:#374151;font-size:13px;font-weight:600}.bucket-picker{display:grid;gap:8px}.bucket-picker-manual{align-items:center;cursor:pointer;display:flex;flex-direction:row;font-size:13px;font-weight:500;gap:7px}.bucket-picker-manual input[type=checkbox]{cursor:pointer;height:15px;margin:0;width:15px}.bucket-picker-select{position:relative}.bucket-picker-control{align-items:center;background:#fffffff5;border:1px solid var(--color-mac-border);border-radius:8px;color:var(--color-mac-text);cursor:pointer;display:flex;height:38px;justify-content:space-between;padding:0 12px;width:100%}.bucket-picker-control:hover{border-color:var(--color-mac-border-strong, var(--color-mac-border))}.bucket-picker-control svg{color:var(--color-mac-muted);flex-shrink:0;height:16px;width:16px}.bucket-picker-placeholder{color:var(--color-mac-muted)}.selected-chips{display:flex;flex-wrap:wrap;gap:5px}.selected-chips button,.option-menu button{background:#ffffffeb;border:1px solid var(--color-mac-border-soft);border-radius:999px;color:var(--color-mac-text-secondary);cursor:pointer;font-size:12px;padding:3px 8px}.option-menu{background:#fffffffa;border:1px solid var(--color-mac-border-soft);border-radius:8px;box-shadow:0 8px 24px #00000014;display:none;gap:5px;left:0;max-height:240px;overflow:auto;padding:6px;position:absolute;right:0;top:100%;z-index:20}.option-menu.open{display:grid}.option-menu>span{color:var(--color-mac-muted);font-size:12px}.option-menu>.inline-error{color:var(--color-mac-error-text)}.option-menu button{align-items:center;border-radius:7px;display:flex;justify-content:space-between;text-align:left}.option-menu button.active{border-color:var(--color-mac-active);color:var(--color-mac-active)}.run-counter-grid{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr))}.compact-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0}.metric-card{background:#ffffffc7;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:3px;padding:12px 14px;transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}.metric-card:hover{background:#ffffffeb;border-color:#0066cc2e}.metric-card span{color:var(--color-mac-text-secondary);font-feature-settings:"ss01" 1,"cv11" 1;font-size:11.5px;font-weight:500;letter-spacing:.01em;text-transform:none}.metric-card strong{font-feature-settings:var(--font-feature-tabular);font-size:22px;font-variant-numeric:tabular-nums slashed-zero;font-weight:600;letter-spacing:-.015em}.run-layout{display:flex;flex:1 1 auto;flex-direction:column;gap:16px;min-height:0;overflow-y:auto;scrollbar-gutter:stable}.run-list-panel{flex:0 0 auto;min-height:260px}.link-button{background:transparent;border:0;color:var(--color-mac-active);cursor:pointer;font:inherit;font-weight:650;padding:0}.search-field,.date-field{position:relative}.search-field svg,.date-field svg{bottom:11px;color:var(--color-mac-muted);height:15px;left:10px;pointer-events:none;position:absolute;width:15px}.search-field input,.date-field input{padding-left:32px}.filter-button{align-self:end}.pagination-row{align-items:center;background:#f8f8fad1;border:1px solid var(--color-mac-border-soft);border-radius:8px;display:flex;flex:0 0 auto;gap:10px;justify-content:space-between;margin-top:8px;padding:12px 14px}.pagination-row>span{color:var(--color-mac-text-secondary);font-size:13px;margin-right:auto}.explorer-breadcrumbs{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.explorer-row-folder{align-items:center;background:transparent;border:none;color:var(--color-mac-accent, #007aff);cursor:pointer;display:inline-flex;font:inherit;gap:6px;overflow-wrap:anywhere;padding:0;text-align:left;text-decoration:none;word-break:break-all}.explorer-row-folder:hover{text-decoration:underline}.explorer-row-file{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:12px;overflow-wrap:anywhere;word-break:break-all}.empty-state{align-items:center;color:var(--color-mac-text-secondary);display:grid;gap:8px;justify-items:center;min-height:160px;padding:28px;text-align:center}.empty-state svg{background:#f8f8faf2;border:1px solid var(--color-mac-border-soft);border-radius:999px;color:var(--color-mac-muted);height:56px;padding:14px;width:56px}.empty-state h3{color:var(--color-mac-text);font-size:17px;margin:0}.empty-state p{margin:0;max-width:420px}.runs-panel{gap:12px;padding:12px}.runs-toolbar{align-items:center;background:#f8f8fac7;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:flex;flex:0 0 auto;gap:12px;justify-content:space-between;padding:12px}.runs-toolbar h3{font-size:16px;margin:0}.runs-toolbar p,.lane-card p{color:var(--color-mac-text-secondary);font-size:13px;margin:2px 0 0}.lane-section{display:flex;flex-direction:column;gap:8px;min-height:0}.lane-section-header{align-items:baseline;display:flex;gap:10px;justify-content:space-between;padding:0 2px}.lane-section-header h4{font-size:13px;font-weight:700;letter-spacing:-.005em;margin:0}.lane-section-header span{color:var(--color-mac-muted);font-size:11px}.lane-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:2px}.lane-card{background:#ffffffeb;border:1px solid var(--color-mac-border-soft);border-radius:12px;box-shadow:0 1px 2px #00000008;display:flex;flex-direction:column;gap:10px;padding:14px 16px}.lane-card.idle{background:#ffffff8c;border-style:dashed;opacity:.85}.lane-card.overflow{background:#0066cc0f}.lane-card-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.lane-card-header>span:first-child{color:var(--color-mac-text);font-size:13px;font-weight:700}.lane-card dl{display:grid;gap:8px;margin:0}.lane-card dl div{display:grid;gap:2px}.lane-card dt{color:var(--color-mac-muted);font-size:10.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.lane-card dd{color:var(--color-mac-text-secondary);font-size:12px;margin:0;overflow-wrap:anywhere;word-break:break-word}.lane-card-guid code{background:#0000000a;border-radius:4px;display:inline-block;font-family:var(--font-mono);font-size:11px;padding:2px 6px;word-break:break-all}.lane-card-muted{color:var(--color-mac-muted);font-style:italic;font-size:12px}.runs-empty-note{background:#f8f8fab8;border:1px solid var(--color-mac-border-soft);border-radius:10px;flex:0 0 auto;min-height:132px}.modal-backdrop{align-items:center;animation:fade-in var(--motion-base) var(--motion-ease) both;background:#0f172a8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;top:0;right:0;bottom:0;left:0;justify-items:center;padding:28px;position:fixed;z-index:1000}.large-modal{animation:fade-rise var(--motion-slow) var(--motion-ease) both;display:flex;flex-direction:column;max-height:min(760px,calc(100vh - 56px));max-width:min(1120px,calc(100vw - 56px));min-height:360px;overflow:hidden;width:100%}.modal-header{align-items:center;background:#fffffff5;border-bottom:1px solid var(--color-mac-border-soft);display:flex;flex:0 0 auto;justify-content:space-between;padding:14px 18px;position:sticky;top:0;z-index:1}.modal-header h3{margin:0}.modal-close-button{align-items:center;background:transparent;border:1px solid var(--color-mac-border);border-radius:8px;color:var(--color-mac-text);cursor:pointer;display:inline-flex;font:inherit;font-size:13px;gap:6px;padding:6px 10px;transition:background .12s ease,border-color .12s ease}.modal-close-button:hover{background:#0000000a;border-color:var(--color-mac-border-strong, rgba(0, 0, 0, .2))}.modal-close-button svg{height:14px;width:14px}.modal-body{display:grid;gap:14px;min-height:0;overflow:auto;padding:14px}.dialog-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-summary-grid article{background:#f8f8facc;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;padding:12px}.dialog-summary-grid span{color:var(--color-mac-text-secondary);font-size:12px}.dialog-summary-grid strong{font-size:24px}.dialog-summary-grid strong.hash-display{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:14px}.rollback-artifact-list{display:grid;gap:8px;margin:12px 0;max-height:240px;overflow:auto}.rollback-artifact{align-items:center;background:#f8f8facc;border:1px solid var(--color-mac-border-soft);border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(160px,220px) minmax(0,1fr);padding:10px 12px}.rollback-artifact>div{display:grid;gap:2px}.rollback-artifact strong{font-size:13px;text-transform:capitalize}.rollback-artifact span{color:var(--color-mac-text-secondary);font-size:12px}.rollback-artifact code{background:#fff9;border-radius:6px;font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:12px;overflow:hidden;padding:4px 8px;text-overflow:ellipsis;white-space:nowrap}.modal-field{display:grid;gap:6px;margin:12px 0}.modal-field span{color:var(--color-mac-text-secondary);font-size:13px}.modal-field span code{background:#0000000d;border-radius:4px;font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:12px;padding:1px 6px}.modal-field textarea,.modal-field input{border:1px solid var(--color-mac-border-soft);border-radius:8px;font-size:14px;padding:8px 10px;width:100%}.timeline-list{display:grid;gap:10px}.timeline-event{display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr)}.timeline-dot{border-radius:999px;height:12px;margin-top:5px;width:12px}.timeline-dot.status-migrated,.timeline-dot.status-completed,.timeline-dot.status-ready{background:var(--color-mac-success-text)}.timeline-dot.status-failed{background:var(--color-mac-error-text)}.timeline-dot.status-pending,.timeline-dot.status-in-progress,.timeline-dot.status-retry-wait{background:var(--color-mac-warning-text)}.timeline-event p{color:var(--color-mac-text-secondary);margin:2px 0}.timeline-event span{color:var(--color-mac-muted);font-size:12px}.video-detail-modal{display:grid;gap:14px}.video-detail-header{background:#ffffffb3;border:1px solid var(--color-mac-border-soft);border-radius:12px;display:grid;gap:10px;padding:12px 14px}.video-detail-header-top{align-items:center;display:flex;gap:12px;justify-content:space-between}.video-detail-title{display:block;font-size:16px}.video-detail-guid{color:var(--color-mac-muted);display:block;font-size:12px}.video-detail-summary-grid{display:grid;gap:8px 18px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:0}.video-detail-summary-grid>div{display:grid;gap:2px}.video-detail-summary-grid dt{color:var(--color-mac-muted);font-size:12px;margin:0}.video-detail-summary-grid dd{color:var(--color-mac-text-primary);font-size:13px;margin:0;word-break:break-word}.video-detail-counters{border-top:1px solid var(--color-mac-border-soft);display:flex;flex-wrap:wrap;gap:14px;list-style:none;margin:0;padding:8px 0 0}.video-detail-counters li{color:var(--color-mac-muted);font-size:12px}.video-detail-counters strong{color:var(--color-mac-text-primary);font-size:14px;margin-right:4px}.video-detail-tabs{border-bottom:1px solid var(--color-mac-border-soft);display:flex;flex-wrap:wrap;gap:2px}.mappings-tab-content{display:flex;flex-direction:column;gap:10px}.video-detail-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-mac-muted);cursor:pointer;font:inherit;padding:6px 10px 8px}.video-detail-tab:hover{color:var(--color-mac-text-primary)}.video-detail-tab.active{border-bottom-color:var(--color-mac-accent, #4f8eff);color:var(--color-mac-text-primary);font-weight:600}.video-detail-panel{display:grid;gap:10px;min-height:200px}.video-detail-timeline{display:grid;gap:8px;list-style:none;margin:0;padding:0}.video-detail-stage{border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:8px;grid-template-columns:28px minmax(0,1fr);padding:10px 12px}.stage-marker{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;height:24px;justify-content:center;width:24px}.stage-marker-completed{background:#329e602e;color:var(--color-mac-success-text)}.stage-marker-failed{background:#d44b4b2e;color:var(--color-mac-error-text)}.stage-marker-blocked,.stage-marker-retrying{background:#dc981c33;color:var(--color-mac-warning-text)}.stage-marker-running,.stage-marker-pending,.stage-marker-skipped{background:#78788229;color:var(--color-mac-muted)}.stage-body{display:grid;gap:4px;min-width:0}.stage-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.stage-title{font-size:13px}.stage-timestamp,.stage-attempt{color:var(--color-mac-muted);font-size:12px}.stage-message{color:var(--color-mac-text-secondary);margin:0}.stage-error{color:var(--color-mac-error-text);margin:0}.validation-panel{background:#ffffffc2;border:1px solid var(--color-mac-border-soft);border-radius:10px;display:grid;gap:8px;padding:10px 12px}.validation-panel-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.validation-panel-header div{display:grid;gap:1px;min-width:0}.validation-panel-header span{color:var(--color-mac-text-secondary);font-size:12px}.validation-panel-header strong{color:var(--color-mac-text);font-size:14px}.validation-panel.passed{background:var(--color-mac-success-bg);border-color:var(--color-mac-success-border);color:var(--color-mac-success-text)}.validation-panel.failed{background:var(--color-mac-error-bg);border-color:var(--color-mac-error-border);color:var(--color-mac-error-text)}.validation-panel.failed .validation-panel-header strong,.validation-panel.failed .validation-panel-header span{color:var(--color-mac-error-text)}.validation-panel.warning{background:var(--color-mac-warning-bg);border-color:var(--color-mac-warning-border);color:var(--color-mac-warning-text)}.validation-panel.warning .validation-panel-header strong,.validation-panel.warning .validation-panel-header span{color:var(--color-mac-warning-text)}.validation-check-grid{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.validation-check{background:#ffffff94;border:1px solid rgba(0,0,0,.055);border-radius:8px;display:grid;gap:4px;grid-template-columns:minmax(0,1fr) auto;padding:7px 9px}.validation-check span,.validation-check strong{font-size:12px}.validation-check p{color:var(--color-mac-text-secondary);font-size:12px;grid-column:1 / -1;margin:0;overflow-wrap:anywhere}.validation-panel.failed .validation-check p{color:var(--color-mac-error-text)}.validation-panel.warning .validation-check p{color:var(--color-mac-warning-text)}@media(max-width:980px){html,body,#root{height:auto;min-height:100%}body{overflow-x:hidden;overflow-y:auto}.console-layout{grid-template-columns:1fr;grid-template-rows:auto auto;height:auto;min-height:100vh;overflow:visible}.sidebar{border-bottom:1px solid rgba(0,0,0,.08);border-right:0;display:grid;grid-template-areas:"brand signout" "nav nav";grid-template-columns:minmax(0,1fr) auto;min-height:132px;overflow:hidden}.brand-row.compact{grid-area:brand;min-width:0;padding:20px 12px 12px}.sidebar nav{align-items:center;display:flex;flex:1 1 auto;grid-area:nav;justify-content:space-between;min-width:0;padding:0 12px 12px}.sidebar nav:before{display:none}.sidebar>.ghost-button{align-self:center;flex:0 0 auto;grid-area:signout;margin:12px;width:auto}.nav-button{flex:1 1 0;justify-content:center;min-width:0;padding:0 10px;width:auto}.nav-button span,.sidebar>.ghost-button span{display:none}.workspace-content{overflow:visible;padding:16px;scrollbar-gutter:auto}.workspace,.configuration-panel,.videos-panel,.runs-panel{overflow:visible}.data-panel{overflow:hidden}.configuration-panel,.videos-panel,.runs-panel,.video-data-panel{flex:0 0 auto}.table-scroll{flex:0 0 auto;max-width:100%;min-height:0}.filter-grid,.workspace-filter-grid,.workspace-filter-grid.compact,.workspace-filter-grid.embedded,.run-layout,.run-counter-grid,.mapping-row,.profile-form{grid-template-columns:1fr}.mapping-row>.status-chip{justify-self:start}.validation-check-grid{grid-template-columns:1fr}}@media(max-width:620px){.workspace-header{padding:0 14px}.workspace h2{font-size:16px}.brand-row.compact{min-width:0}.brand-row.compact h1{font-size:14px}.brand-row.compact p{font-size:12px}.nav-button span,.sidebar>.ghost-button span,.tab-state{display:none}.config-tab{padding:0 14px}.configuration-body{padding:14px}.bulk-form-header .primary-button{justify-content:center;width:100%}}@keyframes spin{to{transform:rotate(360deg)}}.sync-tile-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:16px}.sync-tile{background:var(--color-mac-surface, #ffffff);border:1px solid var(--color-mac-border, rgba(0, 0, 0, .1));border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:16px}.sync-tile header{align-items:flex-start;display:flex;gap:12px}.sync-tile header svg{color:var(--color-mac-muted, #707070);flex-shrink:0;height:22px;margin-top:2px;width:22px}.sync-tile header h4{font-size:15px;font-weight:650;margin:0 0 4px}.sync-tile header p{color:var(--color-mac-muted, #707070);font-size:12px;line-height:1.4;margin:0}.sync-tile dl{display:grid;gap:6px;margin:0}.sync-tile dl>div{align-items:baseline;display:grid;gap:8px;grid-template-columns:120px 1fr}.sync-tile dt{color:var(--color-mac-muted, #707070);font-size:12px}.sync-tile dd{font-size:13px;margin:0}.sync-tile-error{color:var(--color-mac-error, #c0392b);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-tile-progress{color:var(--color-mac-active, #2563eb);font-size:12px}.sync-tile-progress strong{font-feature-settings:"tnum" 1;font-weight:700}.sync-tile-progress-elapsed{color:var(--color-mac-muted, #707070);font-size:11px;margin-left:6px}.sync-tile footer{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:auto;padding-top:8px}.sync-tile-indicator{align-items:center;display:flex;font-size:12px;gap:6px}.sync-tile-indicator svg{height:14px;width:14px}.sync-tile-status.ok .sync-tile-indicator{color:#1e7e34}.sync-tile-status.busy .sync-tile-indicator{color:#b56c00}.sync-tile-status.busy svg{animation:spin 1s linear infinite}.sync-tile-status.error .sync-tile-indicator{color:#c0392b}.sync-tile-status.idle .sync-tile-indicator{color:var(--color-mac-muted, #707070)}.sync-tile-actions{align-items:center;display:flex;flex:1 1 auto;gap:8px;justify-content:flex-end;min-width:0}.sync-tile-result-panel{animation:fade-rise var(--motion-base) var(--motion-ease) both;border-top:1px solid var(--color-mac-border-soft);border-radius:0 0 12px 12px;margin:4px -16px -14px;padding:12px 16px 14px}.sync-tile-result-panel.ok{background:#a7f3d02e}.sync-tile-result-panel.error{background:#fee2e28c}.sync-tile-result-panel>header{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.sync-tile-result-panel>header strong{font-size:12.5px;font-weight:600;letter-spacing:-.005em}.sync-tile-result-panel.ok>header strong{color:var(--tone-success-text)}.sync-tile-result-panel.error>header strong{color:var(--tone-danger-text)}.sync-tile-result-panel>header span{color:var(--color-mac-text-secondary);font-feature-settings:var(--font-feature-tabular);font-size:11px}.sync-tile-result-panel dl{display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:0}.sync-tile-result-panel dt{color:var(--color-mac-text-secondary);font-size:10.5px;font-weight:500;letter-spacing:.01em;margin:0 0 1px;text-transform:none}.sync-tile-result-panel dd{font-feature-settings:var(--font-feature-tabular);font-size:14px;font-variant-numeric:tabular-nums slashed-zero;font-weight:600;letter-spacing:-.01em;margin:0}.sync-tile-result-error{color:var(--tone-danger-text);font-size:12.5px;margin:0;word-break:break-word}.sync-tile-indicator-button{background:transparent;border:0;cursor:pointer;display:inline-flex;align-items:center;font:inherit;gap:inherit;padding:2px 0;text-decoration:underline dotted transparent;text-underline-offset:4px;transition:text-decoration-color var(--motion-fast) var(--motion-ease)}.sync-tile-indicator-button:hover,.sync-tile-indicator-button:focus-visible{text-decoration-color:currentColor;outline:none}.sync-tile-indicator-button[aria-expanded=true]{text-decoration-color:currentColor}.preview-modal-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));height:calc(100vh - 220px);max-height:700px;min-height:400px}.preview-column{background:var(--color-mac-bg-subtle, rgba(0, 0, 0, .02));border:1px solid var(--color-mac-border, rgba(0, 0, 0, .1));border-radius:8px;display:flex;flex-direction:column;min-width:0;overflow:hidden}.preview-column header{background:var(--color-mac-surface, #fff);border-bottom:1px solid var(--color-mac-border, rgba(0, 0, 0, .08));padding:10px 12px}.preview-column header h4{font-size:13px;font-weight:650;margin:0 0 2px}.preview-column header p{color:var(--color-mac-muted, #707070);font-size:11px;line-height:1.3;margin:0}.preview-list{flex:1 1 auto;list-style:none;margin:0;overflow-y:auto;padding:4px 0}.preview-list li{margin:0}.preview-list-row{background:transparent;border:none;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;font-size:12px;gap:2px;padding:8px 12px;text-align:left;width:100%}.preview-list-row:hover{background:var(--color-mac-bg-hover, rgba(0, 0, 0, .04))}.preview-list-row.selected{background:var(--color-mac-accent-subtle, rgba(0, 122, 255, .12));border-left:2px solid var(--color-mac-accent, #007aff);padding-left:10px}.preview-list-row strong{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-list-row span{color:var(--color-mac-muted, #707070);font-size:11px}.preview-list-row span.preview-list-guid{font-family:var(--font-mono);font-feature-settings:var(--font-feature-tabular);font-size:10px;overflow-wrap:anywhere;white-space:normal;word-break:break-all}.preview-list-empty{color:var(--color-mac-muted, #707070);font-size:12px;padding:12px;text-align:center}.preview-column-footer{align-items:center;background:var(--color-mac-surface, #fff);border-top:1px solid var(--color-mac-border, rgba(0, 0, 0, .08));display:flex;font-size:11px;gap:8px;justify-content:space-between;padding:6px 10px}.preview-files-sections{flex:1 1 auto;overflow-y:auto;padding:6px 10px}.preview-files-section{margin-bottom:12px}.preview-files-section h5{color:var(--color-mac-muted, #707070);font-size:11px;font-weight:650;margin:0 0 4px;text-transform:uppercase}.preview-files-section ul{list-style:none;margin:0;padding:0}.preview-files-section li{align-items:start;border-bottom:1px solid var(--color-mac-border, rgba(0, 0, 0, .05));display:grid;font-size:11px;gap:8px;grid-template-columns:1fr auto auto;padding:4px 0}.preview-files-section li:last-child{border-bottom:none}.preview-files-section code{font-size:11px;overflow-wrap:anywhere;white-space:normal;word-break:break-all}.preview-file-size,.preview-file-target{color:var(--color-mac-muted, #707070);font-size:11px}.preview-files-missing h5{color:var(--color-mac-warning, #b56c00)}.preview-file-row.diff-new{background:#28af6412}.preview-file-row.diff-unchanged{background:transparent;opacity:.75}.preview-file-row.diff-changed{background:#dca01e1a}.preview-file-row.diff-deleted_from_source,.preview-file-row.diff-missing_from_source{background:#c832320f}.preview-file-row .preview-file-reason{color:var(--color-mac-warning, #b56c00);font-size:11px;font-style:italic}.preview-file-row .preview-file-prior{color:var(--color-mac-muted, #707070);font-size:10px;grid-column:1 / -1;margin-top:2px}.diff-badge{border-radius:999px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;padding:1px 7px;text-transform:uppercase}.diff-badge.diff-new{background:#28af642e;color:#0d6e3c}.diff-badge.diff-unchanged{background:#7878782e;color:#555}.diff-badge.diff-changed{background:#dca01e40;color:#8b5400}.diff-badge.diff-deleted_from_source{background:#c8323233;color:#8b1f1f}.diff-badge.diff-missing_from_source{background:#c832322e;color:#8b1f1f}.preview-diff-counters{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 0}.diff-pill{border-radius:999px;font-size:10px;font-weight:600;padding:1px 8px}.diff-pill.diff-new{background:#28af642e;color:#0d6e3c}.diff-pill.diff-unchanged{background:#7878782e;color:#555}.diff-pill.diff-changed{background:#dca01e40;color:#8b5400}.diff-pill.diff-deleted{background:#c8323233;color:#8b1f1f}.diff-pill.diff-missing{background:#c832322e;color:#8b1f1f}.preview-strategy-select{align-items:center;display:inline-flex;gap:8px}.preview-strategy-label{align-items:center;color:var(--color-mac-muted, #707070);display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.02em;text-transform:uppercase}.preview-strategy-info{align-items:center;background:#0000000f;border-radius:999px;color:var(--color-mac-muted, #707070);cursor:help;display:inline-flex;font-size:9.5px;font-style:italic;font-weight:700;height:14px;justify-content:center;padding:0;text-transform:none;width:16px}.preview-strategy-info:focus-visible{outline:2px solid var(--color-mac-accent, #1478dc);outline-offset:1px}.preview-strategy-dropdown{background:#fff;border:1px solid var(--color-mac-border, rgba(0, 0, 0, .18));border-radius:5px;font-size:12px;padding:4px 8px}.preview-strategy-dropdown:focus{border-color:var(--color-mac-accent, #1478dc);outline:none}.preview-strategy-spacer{flex:1 1 auto}.workspace-cache-chip{align-items:center;background:#00000008;border-radius:6px;color:var(--color-mac-muted, #707070);display:inline-flex;font-size:11px;gap:6px;margin:8px 12px 0;padding:4px 10px}.workspace-cache-chip strong{color:inherit;font-weight:600}.workspace-cache-chip svg{height:12px;width:12px}.workspace-cache-banner{align-items:center;border-radius:6px;display:flex;font-size:12px;gap:8px;margin:8px 12px 0;padding:8px 12px}.workspace-cache-banner.drift{background:#dca01e1f;border:1px solid rgba(220,160,30,.4);color:#6a4500}.workspace-cache-banner svg{flex-shrink:0;height:14px;width:14px}.workspace-cache-banner a{color:inherit;font-weight:600;text-decoration:underline}.preview-list-bunny{color:var(--color-mac-muted, #707070);display:block;font-size:10px;margin-top:2px}.preview-list-bunny code{background:#0000000a;border-radius:3px;font-size:10px;padding:1px 4px}.preview-target-state{flex:1 1 auto;overflow-y:auto;padding:10px 12px}.preview-target-state section{margin-bottom:14px}.preview-target-state h5{color:var(--color-mac-muted, #707070);font-size:11px;font-weight:650;margin:0 0 6px;text-transform:uppercase}.preview-target-state dl{display:grid;gap:4px;margin:0}.preview-target-state dl>div{display:grid;font-size:11px;gap:8px;grid-template-columns:70px 1fr}.preview-target-state dt{color:var(--color-mac-muted, #707070)}.preview-target-state dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-empty-hint{color:var(--color-mac-muted, #707070);font-size:11px;font-style:italic;margin:0}.preview-target-state ul{list-style:none;margin:0;padding:0}.preview-target-state ul li{align-items:center;display:grid;font-size:11px;gap:8px;grid-template-columns:1fr auto;padding:3px 0}.preview-target-indicator.found{color:#1e7e34}.preview-target-indicator.missing{color:var(--color-mac-muted, #707070)}.preview-destination-plan{flex:1 1 auto;overflow-y:auto;padding:10px 12px}.preview-destination-target{margin-bottom:14px}.preview-destination-target h5{color:var(--color-mac-muted, #707070);font-size:11px;font-weight:650;margin:0 0 6px;text-transform:uppercase}.preview-destination-list,.preview-destination-tree{list-style:none;margin:0;padding:0}.preview-destination-tree details{margin-bottom:6px}.preview-destination-folder{align-items:center;cursor:pointer;display:flex;font-size:11px;gap:8px;padding:4px 0}.preview-destination-folder code{color:var(--color-mac-text, #1a1a1a);font-weight:600}.preview-destination-leaf{align-items:center;display:grid;font-size:11px;gap:8px;grid-template-columns:1fr auto auto;padding:3px 0 3px 14px}.preview-destination-label{display:flex;flex-direction:column;gap:2px;min-width:0}.preview-destination-label code,.preview-destination-folder code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-destination-meta{color:var(--color-mac-muted, #707070);font-size:10px}.preview-destination-size{color:var(--color-mac-muted, #707070);font-size:11px;white-space:nowrap}.preview-destination-indicator{font-size:10px;font-weight:600;white-space:nowrap}.preview-destination-indicator.new{color:#1e7e34}.preview-destination-indicator.found{color:#b56c00}.preview-destination-indicator.skipped{color:var(--color-mac-muted, #6b6b6b);font-style:italic}.preview-destination-skipped-row code,.preview-destination-skipped-row .preview-destination-meta,.preview-destination-skipped-row .preview-destination-size{opacity:.6}.preview-destination-strategy-summary{background:#0066cc0f;border-left:3px solid var(--color-mac-active, #0066cc);border-radius:4px;color:var(--color-mac-text-secondary, #4a4a4a);font-size:12.5px;margin:8px 0;padding:6px 10px}.preview-destination-skipped h5{color:var(--color-mac-warning, #b56c00)}.preview-modal-footer{border-top:1px solid var(--color-mac-border, rgba(0, 0, 0, .08));justify-content:flex-end;margin-top:12px;padding-top:12px}@media(max-width:1100px){.preview-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;height:auto;max-height:80vh}}.reports-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin:12px 0 16px}.reports-action-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.reports-filter-label{display:grid;font-size:12px;gap:4px}.reports-filter-label span{color:var(--color-mac-muted, #707070);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.reports-filter-label select{background:var(--color-mac-surface, #ffffff);border:1px solid var(--color-mac-border, rgba(0, 0, 0, .12));border-radius:6px;font-size:13px;min-width:320px;padding:6px 10px}.reports-filter-summary{color:var(--color-mac-text, #1d1d1f);font-size:13px;margin-left:auto}.reports-source-key{display:grid;gap:2px}.reports-source-key code{background:#f8f8faf2;border:1px solid var(--color-mac-border-soft, rgba(0, 0, 0, .08));border-radius:4px;font-size:12px;overflow-wrap:anywhere;padding:2px 6px;white-space:normal;word-break:break-all}.reports-source-bucket{color:var(--color-mac-muted, #707070);font-size:10px;letter-spacing:.02em;text-transform:lowercase}.reports-reason{color:var(--color-mac-text-secondary, #5f5f60);font-size:12px;max-width:360px}.mapping-kind-pill{border-radius:999px;display:inline-block;font-size:11px;font-weight:500;letter-spacing:.01em;line-height:1.4;padding:2px 10px;white-space:nowrap}.mapping-kind-pill-warning{background:#fff8e1;border:1px solid #ffe0a3;color:#8a5a00}.mapping-kind-pill-info{background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3}.mapping-kind-pill-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.data-table-pagination{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:12px;padding:8px 0}.data-table-pagination-page{color:var(--color-mac-muted, #707070);font-size:12px;margin:0 8px}.muted{color:var(--color-mac-muted, #707070)}.data-table .numeric{text-align:right;white-space:nowrap}.video-detail-back{align-self:flex-start}.video-detail-summary-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:12px}.video-detail-summary-card{background:#f8f8fa80;border:1px solid var(--color-mac-border-soft, rgba(0, 0, 0, .08));border-radius:10px;padding:16px}.video-detail-summary-card h4{color:var(--color-mac-muted, #707070);font-size:11px;letter-spacing:.04em;margin:0 0 8px;text-transform:uppercase}.video-detail-summary-card dl{display:grid;grid-template-columns:max-content 1fr;column-gap:12px;row-gap:4px;margin:0}.video-detail-summary-card dt{color:var(--color-mac-muted, #707070);font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding-top:4px}.video-detail-summary-card dd{font-size:13px;margin:0;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.rollback-preview{margin-top:12px}.rollback-preview-header{background:#f8f8fa80;border:1px solid var(--color-mac-border-soft, rgba(0, 0, 0, .08));border-radius:10px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:12px 16px}.rollback-preview-header code{font-size:12px}.rollback-form{border-top:1px solid var(--color-mac-border-soft, rgba(0, 0, 0, .08));margin-top:16px;padding-top:16px}.rollback-form textarea{background:var(--color-mac-surface, #ffffff);border:1px solid var(--color-mac-border, rgba(0, 0, 0, .12));border-radius:6px;font-family:inherit;font-size:13px;padding:8px 10px;resize:vertical;width:100%}.rollback-result{background:#f8f8fa80;border:1px solid var(--color-mac-border-soft, rgba(0, 0, 0, .08));border-radius:10px;margin-top:16px;padding:16px}.rollback-result h4{align-items:center;display:flex;gap:8px;margin:0 0 12px}.rollback-result-summary{display:grid;grid-template-columns:max-content 1fr;column-gap:12px;row-gap:6px;margin:0 0 12px}.rollback-result-summary dt{color:var(--color-mac-muted, #707070);font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.rollback-result-summary dd{font-size:13px;margin:0}.rollback-result-warning{background:#fff8e1;border:1px solid #ffe0a3;border-radius:6px;color:#8a5a00;font-size:12px;line-height:1.5;margin:12px 0 0;padding:10px 12px}
