:root{--color-primary:#1976d2;--color-primary-light:#e3f2fd;--color-secondary:#4caf50;--color-accent:#42a5f5;--color-primary-pressed:#1565c0;--color-primary-hover:#1e88e5;--color-error:#e53935;--color-error-light:rgba(229,57,53,0.1);--color-warning:#ffc107;--color-warning-light:rgba(255,193,7,0.1);--color-success:#4caf50;--color-success-light:rgba(76,175,80,0.1);--color-info:#2196f3;--color-info-light:#e3f2fd;--color-text:#212121;--color-text-secondary:#757575;--color-background:#f5f5f5;--color-background-secondary:#e0e0e0;--color-surface:#ffffff;--color-border:#e0e0e0;--color-border-light:#f0f0f0;--color-outline-variant:#bdbdbd;--color-disabled:#bdbdbd;--color-on-primary:#ffffff;--shadow-card:0 2px 4px rgba(0,0,0,0.08);--shadow-button:0 4px 6px rgba(0,0,0,0.15);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--font-size-xs:13px;--font-size-sm:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:22px;--font-size-2xl:28px;--font-size-3xl:40px;--altura-controle:44px}*{box-sizing:border-box}body,html{margin:0;padding:0}html{color-scheme:light}body{background:var(--color-background);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;font-size:var(--font-size-md);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;letter-spacing:inherit}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{line-height:1.25;color:var(--color-text);text-wrap:balance}h1{font-size:var(--font-size-2xl);letter-spacing:-.02em}h1,h2{font-weight:600}h2{font-size:var(--font-size-xl);letter-spacing:-.01em}h3{font-size:var(--font-size-lg)}h3,h4{font-weight:600}h4{font-size:var(--font-size-md)}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 var(--space-lg)}.card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:8px;box-shadow:var(--shadow-card);padding:var(--space-lg)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);min-height:var(--altura-controle);background:var(--color-primary);color:var(--color-on-primary);border:1px solid transparent;border-radius:6px;padding:10px 20px;font-size:var(--font-size-md);font-weight:600;line-height:1.2;text-align:center;cursor:pointer;box-shadow:var(--shadow-button);transition:background-color .12s ease,box-shadow .12s ease;touch-action:manipulation}.button:hover{background:var(--color-primary-hover);text-decoration:none}.button:active{background:var(--color-primary-pressed)}.button:focus-visible,.campo:focus-visible,.etapa:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.button:disabled,.button[aria-disabled=true]{background:var(--color-disabled);color:var(--color-on-primary);box-shadow:none;cursor:not-allowed}.button-secondary{background:var(--color-secondary)}.button-ghost{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);box-shadow:none}.button-ghost:hover{background:var(--color-background);border-color:var(--color-outline-variant)}.button-ghost:active{background:var(--color-background-secondary)}.rotulo{font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--space-xs)}.campo,.rotulo{display:block;color:var(--color-text)}.campo{width:100%;min-height:var(--altura-controle);padding:10px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-size-md);transition:border-color .12s ease,box-shadow .12s ease}.campo:hover:not(:disabled){border-color:var(--color-outline-variant)}.campo:disabled{background:var(--color-background);color:var(--color-text-secondary);cursor:not-allowed}textarea.campo{min-height:calc(var(--altura-controle) * 2);resize:vertical}.campo[aria-invalid=true]{border-color:var(--color-error)}.campo-erro{color:var(--color-error);font-size:var(--font-size-sm)}.campo-erro,.campo-hint{display:block;margin-top:var(--space-xs)}.campo-hint{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.opcao{display:flex;align-items:flex-start;gap:var(--space-sm);min-height:32px;padding:var(--space-xs) 0;cursor:pointer}.opcao input{margin:0;width:18px;height:18px;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.grupo-campos{border:1px solid var(--color-border-light);border-radius:6px;padding:var(--space-md);margin:0}.grupo-campos>legend{padding:0 var(--space-xs);font-size:var(--font-size-sm);font-weight:600}.muted{color:var(--color-text-secondary)}.visualmente-oculto{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.etapas{margin:0;padding:0;list-style:none;display:flex;gap:var(--space-xs)}.etapas>li{flex:1 1;min-width:0}.etapa{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:40px;padding:var(--space-sm) var(--space-xs);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-size-sm);font-weight:500;line-height:1.2;cursor:pointer;touch-action:manipulation;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.etapa:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.etapa[aria-current=step]{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);font-weight:600}.etapa-concluida{background:var(--color-primary-light);color:var(--color-primary-pressed);border-color:var(--color-accent);font-weight:600}.etapa:disabled{cursor:not-allowed;background:var(--color-background);border-color:var(--color-border-light)}.etapa-numero{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.etapa-nome{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:560px){.etapa-nome{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}}.numeros-tabulares{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.selo-frescor{display:inline-block;background:var(--color-success-light);color:#2e7d32;border-radius:4px;padding:2px 8px;font-size:13px;font-weight:600}