.tracking-content { max-width: 1440px; margin: 24px auto; padding: 0 20px; color: var(--text); }
.tracking-card { border: 1px solid var(--border); border-radius: 16px; padding: 24px; background: var(--card); box-shadow: none; }
.tracking-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.tracking-heading h1 { margin: 0; font-size: 1.5rem; }
.tracking-stats { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin: 20px 0; }
.tracking-stat { border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; background: var(--bg); }
.tracking-stat strong { display: block; font-size: 1.5rem; }
.tracking-stat span { font-size: .9rem; color: var(--muted); }
.tracking-filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-top: 18px; margin-bottom: 16px; }
.tracking-filters label { display: grid; gap: 6px; font-size: .9rem; font-weight: 700; color: var(--text); }
.tracking-filters input { width: 100%; min-width: 0; box-sizing: border-box; box-shadow: none; background: var(--bg); color: var(--text); border: 1px solid var(--border); }
.tracking-general { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-bottom: 16px; font-size: .9rem; }
.tracking-general progress { flex: 1; min-width: 120px; height: 12px; accent-color: var(--primary); }
.tracking-general strong { min-width: 52px; text-align: right; }
.tracking-sources, .tracking-updated { font-size: .875rem; color: var(--muted); overflow-wrap: anywhere; }
.tracking-sources { display: grid; gap: 5px; margin: 12px 0 18px; }
.tracking-updated { text-align: right; margin-top: 14px; }
.tracking-blocks { display: grid; gap: 10px; }
.tracking-block { min-width: 0; border: 1px solid var(--border); border-radius: 10px; background: var(--card); }
.tracking-block > summary { display: flex; align-items: center; gap: 12px; justify-content: space-between; padding: 16px; cursor: pointer; list-style: none; }
.tracking-block > summary::before { content: '▸'; font-size: 1rem; color: var(--muted); }
.tracking-block[open] > summary::before { content: '▾'; }
.tracking-block > summary::-webkit-details-marker { display: none; }
.tracking-block > summary:hover { background: var(--bg); color: var(--text); }
.tracking-block > summary:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.tracking-block-title { margin-right: auto; }
.tracking-block-counts { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; font-size: .875rem; }
.tracking-block-body { padding: 0 16px 16px; min-width: 0; }
.tracking-table-wrap { overflow: auto; border: 1px solid var(--border); border-radius: 8px; }
.area-tracking-page .tracking-table { width: 100%; min-width: 900px; table-layout: fixed; border-collapse: collapse; font-size: .875rem; }
.tracking-table .lot-col { width: 7%; }.tracking-table .edifica-col { width: 7%; }.tracking-table .unit-col { width: 9%; }
.tracking-table .state-col { width: 25%; }.tracking-table .observation-col { width: 28%; }.tracking-table .progress-col { width: 24%; }
.tracking-unit-count { text-align: center; font-weight: 700; }
.tracking-ua-count { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; padding: 4px 8px; border: 1px solid transparent; border-radius: 7px; }
.tracking-ua-multiple { color: #b91c1c; background: #fff1f2; border-color: #fecdd3; font-weight: 800; }
.tracking-row-progress { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.tracking-row-progress progress { flex: 1; min-width: 0; width: 80px; height: 10px; accent-color: var(--primary); }
.tracking-row-progress strong { min-width: 45px; }
.tracking-row-reasons { margin-top: 8px; }
.tracking-row-reasons > summary { cursor: pointer; color: var(--muted); }
.tracking-row-reasons > summary:hover { color: var(--text); }
.area-tracking-page .tracking-table th { background: var(--bg); color: var(--text); position: static; }
.area-tracking-page .tracking-table td { background: var(--card); color: var(--text); overflow-wrap: anywhere; }
.area-tracking-page .tracking-table tr:hover td { background: var(--bg); color: var(--text); }
.tracking-badge { display: inline-block; border: 1px solid var(--border); background: var(--bg); color: var(--text); border-radius: 6px; padding: 5px 8px; font-weight: 700; line-height: 1.4; }
.tracking-badge.completed { color: var(--success); }.tracking-badge.error,.tracking-badge.modified { color: var(--danger); }
.tracking-badge.manual,.tracking-badge.review,.tracking-badge.paused { color: var(--warning); }
.tracking-badge.in_progress,.tracking-badge.queued { color: var(--primary); }
.tracking-extra { display: block; margin-top: 6px; color: var(--muted); }
.tracking-multiple { color: var(--warning); font-weight: 700; }
.tracking-reasons { margin: 0; padding-left: 16px; }.tracking-reasons li + li { margin-top: 6px; }
.tracking-link { display: inline-flex; justify-content: center; align-items: center; padding: 8px; border: 1px solid var(--border); border-radius: 7px; color: var(--primary); font-weight: 700; text-decoration: none; }
.tracking-link:hover { background: var(--bg); color: var(--primary); }.tracking-link:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.tracking-pagination { display: flex; align-items: center; justify-content: flex-end; gap: 12px; flex-wrap: wrap; margin-top: 12px; font-size: .875rem; }
#tracking-message { padding: 12px; border: 1px solid var(--border); border-radius: 8px; color: var(--danger); overflow-wrap: anywhere; }
.area-tracking-page button { box-shadow: none; }
.area-tracking-page .table-pagination { background: var(--bg); border-color: var(--border); margin-top: 16px; }
.area-tracking-page .page-size-box label,.area-tracking-page .page-info { color: var(--text); font-size: .875rem; font-weight: 700; }
.area-tracking-page .custom-select-trigger,.area-tracking-page .custom-select-menu { box-shadow: none; background: var(--card); color: var(--text); border-color: var(--border); }
body.dark-theme .tracking-badge.completed { color: #86efac; }
body.dark-theme .tracking-badge.error,body.dark-theme .tracking-badge.modified,body.dark-theme #tracking-message { color: #fca5a5; }
body.dark-theme .tracking-badge.manual,body.dark-theme .tracking-badge.review,body.dark-theme .tracking-badge.paused,body.dark-theme .tracking-multiple { color: #fcd34d; }
body.dark-theme .tracking-badge.in_progress,body.dark-theme .tracking-badge.queued,body.dark-theme .tracking-link,body.dark-theme .tracking-link:hover { color: #93c5fd; }
@media(max-width: 1024px) { .tracking-content { padding: 0 14px; }.tracking-card { padding: 18px; }.tracking-block > summary { align-items: flex-start; }.tracking-block-counts { max-width: 55%; } }
@media(max-width: 640px) { .tracking-content { margin: 14px auto; padding: 0 10px; }.tracking-card { padding: 14px; }.tracking-stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.tracking-stat { padding: 10px; }.tracking-block > summary { gap: 8px; flex-wrap: wrap; padding: 12px; }.tracking-block-counts { max-width: none; width: 100%; justify-content: flex-start; padding-left: 18px; }.tracking-block-body { padding: 0 10px 10px; }.tracking-updated { text-align: left; } }
@media(max-width: 640px) { .tracking-filters { grid-template-columns: 1fr; gap: 8px; }.tracking-general { gap: 8px; }.tracking-general > span { width: 100%; } }

/* Validation's blue working surface, with state colors and no shadows. */
.area-tracking-page { --tracking-blue: #1d4ed8; --tracking-green: #166534; --tracking-amber: #92400e; --tracking-red: #b91c1c; }
.tracking-content { max-width: 1500px; margin-top: 24px; }
.tracking-card { border-radius: 18px; border-color: #cbdcf4; padding: 24px; }
.tracking-heading { padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.tracking-heading h1 { color: var(--text); border-left: 5px solid var(--tracking-blue); padding-left: 12px; line-height: 1.4; }
.area-tracking-page #tracking-refresh { background: var(--card); color: var(--tracking-blue); border: 1px solid #b8cff3; border-radius: 10px; min-height: 40px; font-weight: 700; }
.area-tracking-page #tracking-refresh:hover:not(:disabled) { background: #eff6ff; color: #1e40af; }
.tracking-stats { gap: 14px; }
.tracking-stat { border-radius: 12px; padding: 16px 18px; background: #eff6ff; border-color: #bfd5f5; border-top: 3px solid #2563eb; }
.tracking-stat strong { color: #1e40af; font-size: 1.7rem; line-height: 1.3; margin-bottom: 4px; }
.tracking-stat span { color: #334155; font-weight: 700; }
.tracking-stat:nth-child(2) { background: #ecfeff; border-color: #a5e3ec; border-top-color: #0891b2; }
.tracking-stat:nth-child(2) strong { color: #155e75; }
.tracking-stat:nth-child(3) { background: #f0fdf4; border-color: #bbdfc8; border-top-color: #16a34a; }
.tracking-stat:nth-child(3) strong { color: var(--tracking-green); }
.tracking-stat:nth-child(4) { background: #fffbeb; border-color: #efdba1; border-top-color: #d97706; }
.tracking-stat:nth-child(4) strong { color: var(--tracking-amber); }
.tracking-filters { background: #f5f8fd; padding: 16px; border: 1px solid #d3e0f3; border-radius: 12px; }
.tracking-filters input { background: var(--card); border-radius: 9px; min-height: 44px; margin: 0; padding: 10px 12px; font-size: 1rem; }
.tracking-filters input:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.area-tracking-page .tracking-general { display: block; padding: 18px 20px; border: 1px solid #bfd5f5; border-radius: 12px; background: #eff6ff; box-shadow: none; }
.tracking-general-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #1e3a8a; margin-bottom: 12px; font-size: 1rem; font-weight: 800; }
.tracking-general-head strong { color: #1e40af; font-size: 1.4rem; }
.area-tracking-page #tracking-general-progress { display: block; width: 100%; min-width: 0; height: 16px; overflow: hidden; border: 0; border-radius: 999px; background: #d5e4fc; accent-color: #2563eb; }
#tracking-general-progress::-webkit-progress-bar { background: #d5e4fc; border-radius: 999px; }
#tracking-general-progress::-webkit-progress-value { background: linear-gradient(90deg,#0284c7,#2563eb); border-radius: 999px; }
#tracking-general-progress::-moz-progress-bar { background: linear-gradient(90deg,#0284c7,#2563eb); border-radius: 999px; }
.tracking-sources { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.tracking-sources > span { background: var(--bg); padding: 7px 10px; border: 1px solid var(--border); border-radius: 8px; }
.tracking-block { border-color: #cbdcf4; border-radius: 12px; }
.tracking-block > summary { padding: 14px 16px; background: #f5f8ff; border-radius: 11px; }
.tracking-block[open] > summary { border-bottom: 1px solid var(--border); border-radius: 11px 11px 0 0; margin-bottom: 14px; }
.tracking-block > summary:hover { background: #edf4ff; }
.tracking-block > summary::before { color: var(--tracking-blue); }
.tracking-block-title { color: #1e3a8a; font-size: .95rem; }
.tracking-block-counts > span { padding: 5px 8px; border: 1px solid #d2e0f4; border-radius: 7px; background: var(--card); color: #334155; }
.tracking-block-counts > .tracking-count-lots { background: #e0edff; color: #1e40af; border-color: #bfd5f5; }
.tracking-block-counts > .tracking-count-completed { background: #dcfce7; color: #166534; border-color: #bbdfc8; }
.tracking-block-counts > span:nth-child(3) { color: var(--tracking-green); background: #f0fdf4; border-color: #bbdfc8; font-weight: 800; }
.area-tracking-page .tracking-table th { background: #edf4ff; border-bottom: 1px solid #bfd5f5; padding: 12px; font-size: .9rem; font-weight: 800; color: #1e3a8a; }
.area-tracking-page .tracking-table td { padding: 14px 12px; vertical-align: middle; text-align: center; border-bottom: 1px solid var(--border); line-height: 1.5; }
.area-tracking-page .tracking-table tbody tr:last-child td { border-bottom: 0; }
.tracking-badge.completed { color: var(--tracking-green); background: #f0fdf4; border-color: #bbdfc8; }
.tracking-badge.in_progress,.tracking-badge.queued { color: #1e40af; background: #eff6ff; border-color: #bfd5f5; }
.tracking-badge.manual,.tracking-badge.review,.tracking-badge.paused { color: var(--tracking-amber); background: #fffbeb; border-color: #efdba1; }
.tracking-badge.error,.tracking-badge.modified { color: var(--tracking-red); background: #fef2f2; border-color: #f5b8b8; }
.tracking-multiple { color: var(--tracking-amber); }
.area-tracking-page .tracking-link { margin: 0 0 10px; background: #f3e8ff; color: #6b21a8; border-color: #d8b4fe; padding: 8px 12px; }
.area-tracking-page .tracking-link:hover { background: #ede0fc; color: #581c87; }
.tracking-row-progress progress { accent-color: #2563eb; }
.tracking-row-progress strong { color: var(--tracking-blue); }
.tracking-block-counts > .tracking-badge.in_progress,.tracking-block-counts > .tracking-badge.queued { color: #1e40af; background: #eff6ff; }
.tracking-block-counts > .tracking-badge.manual,.tracking-block-counts > .tracking-badge.paused { color: var(--tracking-amber); background: #fffbeb; }
body.dark-theme.area-tracking-page { --tracking-blue: #93c5fd; --tracking-green: #86efac; --tracking-amber: #fcd34d; --tracking-red: #fca5a5; }
body.dark-theme .tracking-card,body.dark-theme .tracking-block { border-color: #334766; }
body.dark-theme .tracking-stat { background: #112440; border-color: #334766; border-top-color: #60a5fa; }
body.dark-theme .tracking-stat strong { color: #93c5fd; }
body.dark-theme .tracking-stat span { color: #dbeafe; }
body.dark-theme .tracking-stat:nth-child(2) { background: #102c38; border-top-color: #22d3ee; }
body.dark-theme .tracking-stat:nth-child(2) strong { color: #67e8f9; }
body.dark-theme .tracking-stat:nth-child(3) { background: #102d24; border-top-color: #4ade80; }
body.dark-theme .tracking-stat:nth-child(3) strong { color: #86efac; }
body.dark-theme .tracking-stat:nth-child(4) { background: #302716; border-top-color: #fbbf24; }
body.dark-theme .tracking-stat:nth-child(4) strong { color: #fcd34d; }
body.dark-theme .tracking-filters { background: #101b2c; border-color: #334766; }
body.dark-theme.area-tracking-page .tracking-general { background: #112440; border-color: #334766; }
body.dark-theme .tracking-general-head,body.dark-theme .tracking-general-head strong { color: #bfdbfe; }
body.dark-theme.area-tracking-page #tracking-general-progress,body.dark-theme #tracking-general-progress::-webkit-progress-bar { background: #253958; }
body.dark-theme .tracking-block > summary { background: #12213a; }
body.dark-theme .tracking-block > summary:hover { background: #172a47; }
body.dark-theme .tracking-block-title { color: #dbeafe; }
body.dark-theme .tracking-block-counts > span { background: #101b2c; border-color: #334766; color: #dbeafe; }
body.dark-theme .tracking-block-counts > .tracking-count-lots { background: #1a3152; color: #bfdbfe; border-color: #365783; }
body.dark-theme .tracking-block-counts > .tracking-count-completed { background: #173c2d; color: #bbf7d0; border-color: #365e48; }
body.dark-theme .tracking-ua-multiple { background: #351e27; color: #fda4af; border-color: #714050; }
body.dark-theme.area-tracking-page .tracking-table th { background: #12213a; color: #dbeafe; border-color: #334766; }
body.dark-theme .tracking-badge.completed,body.dark-theme .tracking-block-counts > span:nth-child(3) { background: #102d24; color: #86efac; border-color: #2b5947; }
body.dark-theme .tracking-badge.in_progress,body.dark-theme .tracking-badge.queued,body.dark-theme .tracking-block-counts > .tracking-badge.in_progress { background: #112440; color: #93c5fd; border-color: #334766; }
body.dark-theme .tracking-badge.manual,body.dark-theme .tracking-badge.review,body.dark-theme .tracking-badge.paused,body.dark-theme .tracking-block-counts > .tracking-badge.manual,body.dark-theme .tracking-block-counts > .tracking-badge.paused { background: #302716; color: #fcd34d; border-color: #635128; }
body.dark-theme .tracking-badge.error,body.dark-theme .tracking-badge.modified { background: #351e27; color: #fca5a5; border-color: #714050; }
body.dark-theme.area-tracking-page .tracking-link { background: #2d2141; color: #e9d5ff; border-color: #685080; }
body.dark-theme.area-tracking-page .tracking-link:hover { background: #38294e; color: #f3e8ff; }
body.dark-theme.area-tracking-page #tracking-refresh { border-color: #334766; }
body.dark-theme.area-tracking-page #tracking-refresh:hover:not(:disabled) { background: #172a47; color: #bfdbfe; }
@media(max-width: 1024px) { .tracking-card { padding: 18px; }.tracking-stat { padding: 14px; } }
@media(max-width: 640px) { .tracking-card { padding: 14px; }.tracking-heading { padding-bottom: 14px; }.tracking-stat { padding: 12px; }.tracking-stat strong { font-size: 1.45rem; }.tracking-filters { padding: 12px; }.area-tracking-page .tracking-general { padding: 14px; }.tracking-general-head { font-size: .9rem; }.tracking-general-head strong { font-size: 1.2rem; } }
.area-tracking-page .tracking-table td:nth-child(-n+3),.area-tracking-page .tracking-table th:nth-child(-n+3) { text-align: center; vertical-align: middle; }
.area-tracking-page .tracking-general[hidden] { display: none; }
.tracking-filters select { width: 100%; min-width: 0; box-sizing: border-box; min-height: 44px; margin: 0; padding: 10px 12px; font-size: 1rem; border-radius: 9px; border: 1px solid var(--border); background: var(--card); color: var(--text); box-shadow: none; }
.tracking-filters select:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.tracking-filters .custom-select { min-width: 0; width: 100%; }
.tracking-filters .custom-select-trigger { min-height: 44px; margin: 0; border-radius: 9px; font-size: 1rem; }
@media(min-width: 641px) and (max-width: 1024px) { .tracking-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } }
