:root{--color-primary: #050766;--color-primary-mid: #252cb7;--color-accent: #dd9e00;--color-accent-light: #f6bc43;--color-gain: #1a7a4a;--color-neutral: #8a6d00;--color-risk: #9b1c1c;--color-gain-bg: #ecfdf5;--color-neutral-bg: #fffbeb;--color-risk-bg: #fef2f2;--color-surface: #ffffff;--color-surface-2: #f8f9fc;--color-border: #e2e6f0;--color-border-light: #f0f2f8;--color-text-primary: #0d1137;--color-text-secondary: #4a5080;--color-text-muted: #8a90b8;--font-display: "Guanabara Sans", system-ui, sans-serif;--font-body: system-ui, -apple-system, sans-serif;--font-mono: "Courier New", "Consolas", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.875rem;--font-size-3xl: 2.25rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--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;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-card: 0 2px 8px rgba(5, 7, 102, .08);--shadow-elevated: 0 8px 24px rgba(5, 7, 102, .12);--shadow-modal: 0 24px 64px rgba(5, 7, 102, .2);--container-max: 1200px;--container-md: 768px;--container-sm: 480px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-primary);margin:0 0 var(--space-4)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-md)}h6{font-size:var(--font-size-base)}p{margin:0 0 var(--space-4);line-height:var(--line-height-relaxed)}a{color:var(--color-primary-mid);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary);text-decoration:underline}strong,b{font-weight:var(--font-weight-semibold)}small{font-size:var(--font-size-sm);color:var(--color-text-secondary)}code,pre{font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--color-surface-2);border-radius:var(--radius-sm)}code{padding:2px 6px}pre{padding:var(--space-4);overflow-x:auto}.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-text-secondary)!important}.text-muted{color:var(--color-text-muted)!important}.text-gain{color:var(--color-gain)!important}.text-risk{color:var(--color-risk)!important}.text-neutral{color:var(--color-neutral)!important}.text-accent{color:var(--color-accent)!important}.text-xs{font-size:var(--font-size-xs)!important}.text-sm{font-size:var(--font-size-sm)!important}.text-base{font-size:var(--font-size-base)!important}.text-lg{font-size:var(--font-size-lg)!important}.text-xl{font-size:var(--font-size-xl)!important}.text-2xl{font-size:var(--font-size-2xl)!important}.font-medium{font-weight:var(--font-weight-medium)!important}.font-semibold{font-weight:var(--font-weight-semibold)!important}.font-bold{font-weight:var(--font-weight-bold)!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;border:none;outline:none;transition:all var(--transition-base);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--primary{background:var(--color-primary);color:#fff}.btn--primary:hover{background:var(--color-primary-mid)}.btn--secondary{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn--secondary:hover{background:var(--color-primary);color:#fff}.btn--accent{background:var(--color-accent);color:var(--color-primary)}.btn--accent:hover{background:var(--color-accent-light)}.btn--ghost{background:transparent;color:var(--color-text-secondary)}.btn--ghost:hover{background:var(--color-surface-2)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg)}.btn--full{width:100%}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-6)}.card--elevated{box-shadow:var(--shadow-elevated)}.card--gain{background:var(--color-gain-bg);border-left:4px solid var(--color-gain)}.card--neutral{background:var(--color-neutral-bg);border-left:4px solid var(--color-neutral)}.card--risk{background:var(--color-risk-bg);border-left:4px solid var(--color-risk)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.badge--gain{background:var(--color-gain-bg);color:var(--color-gain)}.badge--neutral{background:var(--color-neutral-bg);color:var(--color-neutral)}.badge--risk{background:var(--color-risk-bg);color:var(--color-risk)}.badge--normativa{background:#eff6ff;color:#1e40af}.badge--estimativa{background:#fef3c7;color:#92400e}.badge--premissa{background:#f5f3ff;color:#5b21b6}.legal-disclaimer{display:flex;gap:var(--space-3);align-items:flex-start;background:#fff8e1;border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);font-size:var(--font-size-sm);color:#5c4400;line-height:var(--line-height-relaxed)}.legal-disclaimer__icon{flex-shrink:0;font-size:var(--font-size-md)}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.form-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.form-field input,.form-field select,.form-field textarea{padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-body);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-fast);width:100%;box-sizing:border-box}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary-mid);box-shadow:0 0 0 3px #252cb71f}.form-field input.ng-invalid.ng-touched,.form-field select.ng-invalid.ng-touched,.form-field textarea.ng-invalid.ng-touched{border-color:var(--color-risk)}.form-error{font-size:var(--font-size-xs);color:var(--color-risk);margin-top:calc(var(--space-1) * -1)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table th{text-align:left;padding:var(--space-3) var(--space-4);background:var(--color-surface-2);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border)}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--color-surface-2)}.data-table .td--numeric{text-align:right;font-variant-numeric:tabular-nums}.data-table .td--gain{color:var(--color-gain);font-weight:var(--font-weight-semibold)}.data-table .td--risk{color:var(--color-risk);font-weight:var(--font-weight-semibold)}.data-table .td--neutral{color:var(--color-neutral)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}@media (max-width: 640px){.container{padding:0 var(--space-4)}}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}@media (max-width: 768px){.grid-2{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}@media (max-width: 1024px){.grid-3{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.grid-3{grid-template-columns:1fr}}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}@media (max-width: 1024px){.grid-4{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.grid-4{grid-template-columns:1fr}}.stepper{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8)}.stepper__step{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}.stepper__step--active{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.stepper__step--active .stepper__number{background:var(--color-primary);color:#fff}.stepper__step--completed{color:var(--color-gain)}.stepper__step--completed .stepper__number{background:var(--color-gain);color:#fff}.stepper__number{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background:var(--color-border);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);flex-shrink:0}.stepper__divider{flex:1;height:1px;background:var(--color-border);max-width:60px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-surface-2);min-height:100vh}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}ul,ol{list-style:none}
