html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--font-sans: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", monospace;--app-bg: #f8fafc;--surface: #ffffff;--surface-muted: #f1f5f9;--surface-contrast: #0f172a;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e5e7eb;--border-strong: #d1d5db;--primary: #4285f4;--primary-strong: #3367d6;--primary-gradient: linear-gradient(135deg, #4285f4 0%, #34a853 100%);--gold-gradient: linear-gradient(135deg, #fff7cc 0%, #fef3c7 100%);--subtle-gradient: linear-gradient(180deg, #ffffff 0%, #fbfbff 100%);--success: #16a34a;--danger: #dc2626;--warning: #d97706;--info: #0ea5e9;--status-success-bg: #dcfce7;--status-success-text: #166534;--status-success-border: #bbf7d0;--status-danger-bg: #fee2e2;--status-danger-text: #991b1b;--status-danger-border: #fecaca;--status-warning-bg: #fef3c7;--status-warning-text: #92400e;--status-warning-border: #fde68a;--status-info-bg: #e0f2fe;--status-info-text: #0369a1;--status-neutral-bg: #e5e7eb;--status-neutral-text: #374151;--sh-slate-darkest: #111827;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 6px 18px rgba(15, 23, 42, .08);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow-x:hidden}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--app-bg)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.page{min-height:100vh;background:var(--app-bg)}.content{padding:32px 24px 48px;max-width:1280px;margin:0 auto;display:grid;gap:20px}.content--wide{max-width:1600px}.content--narrow{max-width:1100px}.content--form{max-width:960px}.stack{display:grid;gap:var(--stack-gap, 16px)}.cluster{display:flex;flex-wrap:wrap;gap:var(--cluster-gap, 12px);align-items:center}.badge--draft .mdc-evolution-chip__action{background-color:#e0e7ff!important}.badge--draft .mdc-evolution-chip__text-label{color:#4338ca!important}.badge--submitted .mdc-evolution-chip__action{background-color:var(--status-info-bg)!important}.badge--submitted .mdc-evolution-chip__text-label{color:var(--status-info-text)!important}.badge--pass .mdc-evolution-chip__action,.badge--success .mdc-evolution-chip__action{background-color:var(--status-success-bg)!important}.badge--pass .mdc-evolution-chip__text-label,.badge--success .mdc-evolution-chip__text-label{color:var(--status-success-text)!important}.badge--fail .mdc-evolution-chip__action,.badge--danger .mdc-evolution-chip__action{background-color:var(--status-danger-bg)!important}.badge--fail .mdc-evolution-chip__text-label,.badge--danger .mdc-evolution-chip__text-label{color:var(--status-danger-text)!important}.badge--new .mdc-evolution-chip__action{background-color:#dbeafe!important}.badge--new .mdc-evolution-chip__text-label{color:#1e40af!important}.badge--in-progress .mdc-evolution-chip__action{background-color:var(--status-warning-bg)!important}.badge--in-progress .mdc-evolution-chip__text-label{color:var(--status-warning-text)!important}.badge--awaiting-info .mdc-evolution-chip__action{background-color:#fce7f3!important}.badge--awaiting-info .mdc-evolution-chip__text-label{color:#9d174d!important}.badge--neutral .mdc-evolution-chip__action{background-color:var(--status-neutral-bg)!important}.badge--neutral .mdc-evolution-chip__text-label{color:var(--status-neutral-text)!important}.badge--info .mdc-evolution-chip__action{background-color:var(--status-info-bg)!important}.badge--info .mdc-evolution-chip__text-label{color:var(--status-info-text)!important}.badge--resubmitted{background-color:#e91e631a!important;color:#e91e63!important}.badge--resubmitted .mdc-evolution-chip__action{background-color:#e91e631a!important}.badge--resubmitted .mdc-evolution-chip__text-label{color:#e91e63!important}.loading-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);padding:20px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary);box-shadow:var(--shadow-sm)}.stat-card.highlight-pass:before{background-color:var(--success)!important}.stat-card.highlight-fail:before{background-color:var(--danger)!important}.stat-card.highlight-new:before{background-color:#3b82f6!important}.stat-card.highlight-submitted:before{background-color:#06b6d4!important}.stat-card.highlight-pending:before{background-color:var(--warning)!important}.stat-card.highlight-rework:before{background-color:#8b5cf6!important}.stat-card.highlight-time:before{background-color:var(--info)!important}.spinner{width:18px;height:18px;border:2px solid rgba(99,102,241,.2);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:40px;text-align:center;display:grid;gap:8px}.empty-state h2{margin:0;font-size:18px;color:var(--text-primary)}.empty-state p{margin:0;color:var(--text-secondary)}.mono{font-family:var(--font-mono);font-size:13px}.muted{color:var(--text-muted);font-size:12px}@media (max-width: 960px){.content{padding:24px 18px 36px}}@media (max-width: 720px){.content{padding:20px 16px 28px}}.photo-code-tooltip{max-width:300px!important}.photo-code-tooltip .mdc-tooltip__surface{white-space:normal!important;font-size:14px!important;line-height:1.4!important;padding:8px 12px!important}.table-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000008;overflow:auto;border:1px solid rgba(0,0,0,.03);margin-bottom:24px}.data-table{width:100%;border-collapse:separate;border-spacing:0}tr.mat-mdc-header-row{background:#f8f9fa;height:56px}th.mat-mdc-header-cell{font-size:13px;font-weight:600;color:#4a5568;padding:0 16px;white-space:nowrap;border-bottom:1px solid #e2e8f0}tr.mat-mdc-row{height:52px;transition:background-color .2s ease}tr.mat-mdc-row:hover{background-color:#4299e108}td.mat-mdc-cell{font-size:14px;color:#2d3748;padding:0 16px;border-bottom:1px solid #edf2f7;white-space:nowrap}.mat-mdc-snack-bar-container.snackbar-success .mdc-snackbar__surface{background-color:var(--status-success-bg)!important;border:1px solid var(--status-success-border)!important;border-radius:8px!important}.mat-mdc-snack-bar-container.snackbar-success .mat-mdc-snack-bar-label{color:var(--status-success-text)!important;font-weight:500}.mat-mdc-snack-bar-container.snackbar-success .mat-mdc-snack-bar-action{--mdc-text-button-label-text-color: var(--status-success-text) !important;color:var(--status-success-text)!important}.mat-mdc-snack-bar-container.snackbar-error .mdc-snackbar__surface{background-color:var(--status-danger-bg)!important;border:1px solid var(--status-danger-border)!important;border-radius:8px!important}.mat-mdc-snack-bar-container.snackbar-error .mat-mdc-snack-bar-label{color:var(--status-danger-text)!important;font-weight:500}.mat-mdc-snack-bar-container.snackbar-error .mat-mdc-snack-bar-action{--mdc-text-button-label-text-color: var(--status-danger-text) !important;color:var(--status-danger-text)!important}
