.app-header{position:fixed;top:0;left:0;right:0;z-index:50;height:56px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 24px;background:#fff;border-bottom:1px solid #e2e8f0}.app-header__brand{display:flex;align-items:center;justify-self:start}.app-header__brand-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.app-header__logo{width:28px;height:28px;border-radius:8px;background:#2563eb;display:flex;align-items:center;justify-content:center}.app-header__title{font-size:14px;font-weight:600;color:#0f172a}.app-header__config{display:flex;justify-content:center;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;font-size:14px;justify-self:center}.app-header__config-label{color:#94a3b8}.app-header__config-value{font-weight:500;color:#0f172a}.app-header__actions{display:flex;align-items:center;gap:12px;justify-self:end}.app-header__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#475569;text-decoration:none;transition:background .15s,color .15s}.app-header__icon-btn:hover,.app-header__icon-btn.is-active{background:#f1f5f9;color:#0f172a}.app-header__avatar{width:28px;height:28px;border-radius:50%;background:#2563eb;color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:9999px;font-size:12px;font-weight:500;white-space:nowrap;border:1px solid transparent;line-height:1.4}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-completed{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.status-completed .status-dot{background:#059669}.status-running{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.status-running .status-dot{background:#2563eb}.status-failed{background:#fef2f2;color:#dc2626;border-color:#fecaca}.status-failed .status-dot{background:#dc2626}.status-pending{background:#fffbeb;color:#d97706;border-color:#fde68a}.status-pending .status-dot{background:#d97706}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.35}}.is-pulse{animation:status-pulse 1.2s ease-in-out infinite}.page-title-bar{padding:20px 24px;border-bottom:1px solid #f1f5f9;background:#fff}.page-title-bar__inner{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.page-title-bar__left{display:flex;align-items:center;gap:16px;min-width:0}.page-title-bar__back{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;font-size:13px;font-weight:500;color:#475569;background:#fff;border:1px solid #e2e8f0;text-decoration:none;flex-shrink:0}.page-title-bar__back:hover{background:#f1f5f9;color:#0f172a}.page-title-bar__title{margin:0;font-size:18px;font-weight:600;color:#0f172a;line-height:1.3}.page-title-bar__subtitle{margin:2px 0 0;font-size:12px;color:#94a3b8;word-break:break-all}.page-title-bar__subtitle.is-mono{font-family:JetBrains Mono,SF Mono,Fira Code,monospace}.page-title-bar__right{display:flex;align-items:center;gap:8px;flex-shrink:0}.stat-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:18px 20px;display:flex;align-items:center;gap:14px;transition:border-color .15s,box-shadow .15s}.stat-card.is-clickable{cursor:pointer}.stat-card.is-clickable:hover,.stat-card.is-active{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb33}.stat-card__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#eff6ff}.stat-card--info .stat-card__icon{background:#eff6ff}.stat-card--success .stat-card__icon{background:#ecfdf5}.stat-card--warning .stat-card__icon{background:#fffbeb}.stat-card--error .stat-card__icon{background:#fef2f2}.stat-card__value{font-size:26px;font-weight:700;line-height:1;color:#0f172a}.stat-card--info .stat-card__value{color:#2563eb}.stat-card--success .stat-card__value{color:#059669}.stat-card--warning .stat-card__value{color:#d97706}.stat-card--error .stat-card__value{color:#dc2626}.stat-card__label{font-size:12px;color:#94a3b8;margin-top:4px}@media(max-width:960px){.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.stat-cards{grid-template-columns:1fr}}.overview__main{padding-top:56px;min-height:100vh}.overview__content{padding:20px 24px}.overview__stack{max-width:1440px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.process-detail__main{padding-top:56px;min-height:100vh}.process-detail__content{padding:20px 24px}.process-detail__stack{max-width:1440px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.entity-tabs{display:flex;flex-wrap:wrap;gap:8px}.entity-tabs__btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:13px;font-weight:500;cursor:pointer}.entity-tabs__btn:hover{background:#f1f5f9;color:#0f172a}.entity-tabs__btn.is-active{border-color:#2563eb;color:#2563eb;background:#eff6ff}.entity-tabs__badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:0 6px;height:20px;border-radius:9999px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:600}.entity-tabs__btn.is-active .entity-tabs__badge{background:#2563eb26;color:#2563eb}.section-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.section-card .ant-pagination{padding:0 16px;margin:16px 0!important}.section-header{padding:14px 20px;border-bottom:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between}.section-header__title-wrap{display:flex;align-items:center;gap:8px}.section-title{font-size:14px;font-weight:600;color:#0f172a}.section-hint{font-size:12px;color:#94a3b8}.company-select-wrap{display:inline-flex;align-items:center;gap:8px}.company-select-label{font-size:12px;font-weight:500;color:#475569;white-space:nowrap}.company-select{min-width:180px}.id-link{font-family:JetBrains Mono,SF Mono,Fira Code,monospace;font-size:12px;color:#2563eb;text-decoration:none;display:inline-flex;align-items:center;gap:4px}.id-link:hover{color:#1d4ed8;text-decoration:underline}.id-cell,.time-cell,.s3-path{color:#000;font-family:JetBrains Mono,SF Mono,Fira Code,monospace;font-size:12px}.s3-path{max-width:320px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.entity-name{font-weight:500;color:#0f172a}.records-cell{font-weight:600;color:#0f172a}.section-card .ant-pro-card{border:none;box-shadow:none}.section-card .ant-pro-table-list-toolbar{padding:8px 16px 0}.section-card .ant-table{font-size:13px}.section-card .ant-table-thead>tr>th{font-size:12px;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;background:#fff!important}.section-card .ant-table-tbody>tr>td{border-bottom-color:#f1f5f9}.sync-config__main{padding-top:56px;min-height:100vh}.sync-config__content{padding:20px 24px}.sync-config__stack{max-width:1440px;margin:0 auto}.company-cell{display:flex;align-items:center;gap:10px}.company-avatar{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;background:#eff6ff;color:#2563eb;flex-shrink:0}.company-name{font-weight:500;color:#0f172a}.section-footer{padding:14px 20px;border-top:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between;gap:16px}.sync-config__table .ant-table-thead>tr>th{font-size:12px;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;background:#fff!important}.sync-config__table .ant-table-tbody>tr>td{border-bottom-color:#f1f5f9}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-subtle: #eff6ff;--bg-page: #f8fafc;--bg-surface: #ffffff;--bg-surface-hover: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--border-default: #e2e8f0;--border-light: #f1f5f9;--neutral-50: #f8fafc;--neutral-100: #f1f5f9;--state-success: #059669;--state-success-bg: #ecfdf5;--state-success-border: #a7f3d0;--state-warning: #d97706;--state-warning-bg: #fffbeb;--state-warning-border: #fde68a;--state-error: #dc2626;--state-error-bg: #fef2f2;--state-error-border: #fecaca;--state-info: #2563eb;--state-info-bg: #eff6ff;--state-info-border: #bfdbfe;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f8fafc;color:#0f172a;-webkit-font-smoothing:antialiased}.font-mono{font-family:JetBrains Mono,SF Mono,Fira Code,monospace}
