@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";@media print{@page{size:A4;margin:20mm 25mm 25mm}@page :first{margin-top:0}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}html{font-size:11pt}body{background:#fff!important;color:#000;line-height:1.4}.no-print,.report-nav,button:not(.print-include),nav{display:none!important}.report-layout{display:block}.report-content{margin-left:0!important;background:#fff!important}section{page-break-inside:avoid}.cover-page{page-break-after:always;height:100vh}.executive-summary,.health-dashboard,.priority-findings,.security-section,.code-quality-section,.automation-section,.architecture-section,.tech-debt-section,.roadmap-section,.appendix-section{page-break-after:always}.finding-card,.metric-card,.score-badge,.card,table,tr{page-break-inside:avoid}table{width:100%;border-collapse:collapse}th,td{border:1px solid #ccc;padding:6pt 8pt}thead{display:table-header-group}.card,.finding-card,[class*=__card],[class*=-card]{box-shadow:none!important;border:1px solid #ccc!important}a{color:inherit!important;text-decoration:none!important}img{max-width:100%;page-break-inside:avoid}.score-badge{border-width:2pt!important}.severity-badge,.effort-badge{border:1px solid currentColor!important}h1,h2,h3,h4,h5,h6{page-break-after:avoid;page-break-inside:avoid}.report-footer{position:fixed;bottom:0;left:0;right:0;padding:10pt;font-size:8pt;border-top:.5pt solid #ccc;background:#fff}.print-header{position:running(header)}@page{@top-right{content:"Polaris Health Assessment";font-size:8pt;color:#666}@bottom-center{content:counter(page) " of " counter(pages);font-size:8pt;color:#666}@bottom-right{content:"CONFIDENTIAL";font-size:8pt;color:#999}}.score-badge,.severity-badge,.effort-badge,.category-badge,[class*=--critical],[class*=--high],[class*=--medium],[class*=--low],[class*=__metrics],[class*=__stats],[class*=__card],[class*=__rec-item],[class*=__table],[class*=__quick-win]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}section{padding:20pt!important}[class*=__grid],[class*=__metrics],[class*=__stats]{gap:10pt!important}code{font-size:9pt!important;background:#f5f5f5!important;border:.5pt solid #ccc!important}.roadmap-section__phase-line{background:#000!important}.roadmap-section__phase-number{background:#333!important;color:#fff!important}}:root{--navy: #1a2b4a;--slate: #475569;--mist: #f8fafc;--arctic: #0ea5e9;--arctic-light: #e0f2fe;--arctic-dark: #0284c7;--score-excellent: #059669;--score-good: #10b981;--score-fair: #f59e0b;--score-poor: #ef4444;--score-critical: #991b1b;--severity-critical: #991b1b;--severity-critical-bg: #fef2f2;--severity-critical-border: #fecaca;--severity-high: #dc2626;--severity-high-bg: #fff7ed;--severity-high-border: #fed7aa;--severity-medium: #f59e0b;--severity-medium-bg: #fffbeb;--severity-medium-border: #fde68a;--severity-low: #6b7280;--severity-low-bg: #f9fafb;--severity-low-border: #e5e7eb;--effort-small: #065f46;--effort-small-bg: #ecfdf5;--effort-medium: #92400e;--effort-medium-bg: #fef3c7;--effort-large: #991b1b;--effort-large-bg: #fee2e2;--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0em;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--border-width: 1px;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-tooltip: 1070;--content-max-width: 1200px;--sidebar-width: 280px;--page-padding: var(--space-6)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--slate);background-color:var(--mist);min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--navy);font-weight:var(--font-semibold);line-height:var(--leading-tight)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}a{color:var(--arctic);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--arctic-dark)}strong,b{font-weight:var(--font-semibold)}code,pre{font-family:var(--font-mono);font-size:.875em}code{background-color:var(--gray-100);padding:.125em .375em;border-radius:var(--radius-sm);color:var(--navy)}pre{background-color:var(--gray-100);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto}pre code{background:none;padding:0}.text-navy{color:var(--navy)}.text-slate{color:var(--slate)}.text-arctic{color:var(--arctic)}.text-muted{color:var(--gray-500)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.tracking-wide{letter-spacing:var(--tracking-wide)}.tracking-wider{letter-spacing:var(--tracking-wider)}.tracking-widest{letter-spacing:var(--tracking-widest)}.card{background:var(--white);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow)}.section-header{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--navy);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--navy)}.divider{height:1px;background-color:var(--border-color);margin:var(--space-6) 0}@media print{:root{--mist: #ffffff}body{background:#fff;color:#000;font-size:11pt;line-height:1.4}@page{size:A4;margin:20mm 25mm 25mm}@page :first{margin-top:0}.card,.finding-card,.metric-card,.score-badge{break-inside:avoid}.page-break-before{break-before:page}.page-break-after{break-after:page}.no-print,.navigation,.sidebar,button:not(.print-include){display:none!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}a[href]:after{content:none}.card,.finding-card{box-shadow:none;border:1px solid #ccc}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--transition-base)}.animate-slide-up{animation:slideInUp var(--transition-slow)}
