@charset "UTF-8";h1{font-size:var(--text-xl);line-height:var(--leading-tight);margin:0 0 var(--space-5)}h2{font-size:var(--text-lg);line-height:var(--leading-tight)}h3{font-size:var(--text-md);line-height:var(--leading-tight)}.page-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-5)}.page-head h1{margin:0;font-size:var(--text-xl);line-height:var(--leading-tight)}.page-head h2{margin:0;font-size:var(--text-lg)}.page-head .subtitle,.page-subtitle{margin:var(--space-1) 0 0;color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.page-head .actions,.head-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.back{display:inline-block;margin-bottom:var(--space-2);color:var(--muted);text-decoration:none;font-size:var(--text-sm)}.back:hover{color:var(--brand)}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.card+.card{margin-top:var(--space-5)}.card>h2,.card>h3{margin:0 0 var(--space-4);font-size:var(--text-md)}.filters,.toolbar,.search{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-5)}.filters input,.filters select,.filters button,.toolbar input,.toolbar select,.toolbar button,.search input,.search select,.search button{min-height:44px}.filters input,.filters select,.toolbar input,.toolbar select,.search input,.search select{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-sm);color:var(--text);background:var(--surface);font-family:inherit}.filters input:focus,.toolbar input:focus,.search input:focus{border-color:var(--brand)}.filters input[type=text],.filters input[type=search],.toolbar input[type=text],.search input[type=text]{flex:1;min-width:220px}.table-wrap{overflow-x:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--surface)}.table-wrap .data-table{box-shadow:none;border-radius:0}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;font-size:var(--text-sm)}.data-table th,.data-table td{padding:var(--cell-y) var(--cell-x);text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.data-table thead th{background:var(--surface);color:var(--muted);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:2px solid var(--border)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--surface-2)}.data-table .right{text-align:right}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table .empty,.data-table td.empty{text-align:center;color:var(--muted);padding:var(--space-7) var(--space-4)}.actions-cell,.row-actions{display:flex;gap:var(--space-2);justify-content:flex-end;flex-wrap:wrap}.actions-cell a,.actions-cell button,.row-actions a,.row-actions button{background:transparent;color:var(--brand);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:500;text-decoration:none;white-space:nowrap}.actions-cell a:hover,.actions-cell button:hover:not(:disabled),.row-actions a:hover,.row-actions button:hover:not(:disabled){background:var(--brand-50);border-color:var(--brand-100)}.actions-cell button.danger,.row-actions button.danger{color:var(--danger);border-color:var(--danger-border)}.actions-cell button.danger:hover:not(:disabled),.row-actions button.danger:hover:not(:disabled){background:var(--danger-bg)}.actions-cell .acao-duvidas,.row-actions .acao-duvidas{background:var(--danger-bg);border-color:#d32f2f;color:var(--danger);font-weight:600}.actions-cell .acao-duvidas:hover,.row-actions .acao-duvidas:hover{background:#f9d7d3;border-color:#d32f2f}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.15rem .6rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--muted)}.badge.on,.badge.is-success{background:var(--success-bg);color:var(--success)}.badge.off,.badge.is-danger{background:var(--danger-bg);color:var(--danger)}.badge.is-warn{background:var(--warn-bg);color:var(--warn-text)}.badge.is-brand{background:var(--brand-50);color:var(--brand-dark)}.btn,.btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:var(--space-2);background:var(--brand);color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s ease}.btn:hover,.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--surface);color:var(--brand);border:1px solid var(--brand-100);border-radius:var(--radius);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:600;text-decoration:none;cursor:pointer}.btn-secondary:hover{background:var(--brand-50)}.ghost,.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.ghost:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}button.danger,.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger-border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}button.danger:hover:not(:disabled),.btn-danger:hover:not(:disabled){background:var(--danger-bg)}.mini{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);white-space:nowrap}.form-card{display:flex;flex-direction:column;gap:var(--space-4);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.form-card label,.field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);color:var(--muted)}.form-card label.checkbox,.field.checkbox{flex-direction:row;align-items:center;gap:var(--space-2)}.form-card input,.form-card select,.form-card textarea,.field input,.field select,.field textarea{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-md);color:var(--text);background:var(--surface);font-family:inherit}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--brand)}.form-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.span-full{grid-column:1/-1}.row{display:flex;gap:var(--space-4);flex-wrap:wrap}.row>label,.row>.field{flex:1;min-width:240px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-2)}.form-actions .cancel{color:var(--muted);text-decoration:none;font-size:var(--text-sm)}.form-actions .cancel:hover{color:var(--text)}.err,.field-error{color:var(--danger);font-size:var(--text-xs)}.hint{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-normal)}.lbl{font-size:var(--text-xs);color:var(--muted)}.stat-grid,.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm)}.kpi .lbl,.kpi .label{display:block;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.kpi .num,.kpi strong{display:block;margin-top:var(--space-1);font-size:var(--text-2xl);font-weight:700;line-height:1.1;color:var(--text);font-variant-numeric:tabular-nums}.pager{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-5);color:var(--muted);font-size:var(--text-sm)}.pager div{display:flex;align-items:center;gap:var(--space-3)}.pager button{background:var(--surface);color:var(--brand);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.pager button:hover:not(:disabled){background:var(--brand-50)}.pager button:disabled{opacity:.45;cursor:not-allowed}.muted{color:var(--muted)}.meta{color:var(--muted);font-size:var(--text-xs)}.subtitle{color:var(--muted);font-size:var(--text-sm)}.empty{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.link{display:inline-flex;align-items:center;min-height:44px;color:var(--brand);text-decoration:none;font-size:var(--text-sm);font-weight:500}.link:hover{text-decoration:underline}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.section-head h2,.section-head h3{margin:0;font-size:var(--text-lg)}:root{--brand: #15506b;--brand-dark: #0f3a4d;--bg: #f4f6f8;--surface: #ffffff;--text: #1f2933;--muted: #6b7280;--border: #d8dee5;--danger: #b3261e;--success: #1e7a34;--radius: 4px;--surface-2: #eef2f5;--brand-50: #eaf2f6;--brand-100: #cfe2ec;--brand-contrast: #ffffff;--font-sans: "Segoe UI", Roboto, system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--leading-tight: 1.2;--leading-normal: 1.55;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--radius-sm: 3px;--radius-lg: 4px;--radius-pill: 999px;--shadow-sm: 0 1px 3px rgba(24, 28, 33, .16), 0 1px 2px rgba(24, 28, 33, .08);--shadow-md: 0 3px 8px rgba(24, 28, 33, .14), 0 1px 3px rgba(24, 28, 33, .1);--shadow-lg: 0 8px 24px rgba(24, 28, 33, .16), 0 2px 6px rgba(24, 28, 33, .08);--cell-y: .6875rem;--cell-x: .875rem;--danger-bg: #fdecea;--danger-border: #f0c4c0;--success-bg: #e7f4ea;--success-border: #bfe3c8;--warn-bg: #fdf3e0;--warn-border: #f2ddb8;--warn-text: #8a5a12;--ring: #2f80a8;--header-h: 60px}*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:var(--font-sans);color:var(--text);background:var(--bg)}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{position:absolute;left:var(--space-4);top:-3rem;z-index:40;background:var(--surface);color:var(--brand);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);text-decoration:none;font-size:var(--text-sm);font-weight:600;transition:top .15s ease}.skip-link:focus{top:var(--space-3)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}button{cursor:pointer;border:none;border-radius:var(--radius);background:var(--brand);color:#fff;padding:.65rem 1rem;font-size:1rem;transition:background .15s ease}button:hover:not(:disabled){background:var(--brand-dark)}button:disabled{opacity:.6;cursor:progress}.auth-screen{min-height:100vh;width:100%;display:grid;grid-template-columns:1.1fr 1fr}.auth-brand{position:relative;display:flex;align-items:center;justify-content:center;padding:3rem;color:#fff;background:linear-gradient(150deg,var(--brand) 0%,var(--brand-dark) 100%);overflow:hidden}.auth-brand:after{content:"";position:absolute;width:480px;height:480px;right:-160px;bottom:-160px;background:#ffffff0f;border-radius:50%}.auth-brand .brand-content{position:relative;max-width:420px}.auth-brand .logo{font-size:2.4rem;font-weight:700;letter-spacing:3px;margin:0}.logo .brand-img{max-height:64px;max-width:260px;object-fit:contain;display:block}.mobile-logo .brand-img{max-height:44px;max-width:200px;object-fit:contain;margin:0 auto}.auth-brand .tagline{font-size:1.1rem;opacity:.9;margin:.5rem 0 2rem}.auth-brand ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.85rem}.auth-brand li{display:flex;align-items:center;gap:.65rem;font-size:.98rem;opacity:.95}.auth-brand li:before{content:"\2713";display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;background:#ffffff2e;border-radius:50%;font-size:.8rem}.auth-panel{display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg)}.auth-box{width:100%;max-width:380px}.auth-box .mobile-logo{display:none}.auth-box h2{margin:0;color:var(--text);font-size:1.5rem}.auth-box .subtitle{margin:.35rem 0 1.75rem;color:var(--muted);font-size:.95rem}.auth-box form{display:flex;flex-direction:column;gap:1rem}.auth-box label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;color:var(--muted)}.auth-box label.checkbox{flex-direction:row;align-items:center;gap:.5rem}.auth-box input[type=email],.auth-box input[type=password],.auth-box input[type=text]{padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--radius);font-size:1rem;color:var(--text);background:var(--surface)}.auth-box input:focus{outline:2px solid var(--brand);outline-offset:0;border-color:var(--brand)}.auth-box button[type=submit]{padding:.75rem;font-size:1rem;margin-top:.25rem}.auth-box .link{display:inline-block;margin-top:1.25rem;color:var(--brand);font-size:.9rem;text-decoration:none}.auth-box .link:hover{text-decoration:underline}.auth-box .link.legal-link{color:var(--muted);margin-left:1rem}.auth-box .dica{display:block;margin-top:.3rem;color:var(--muted);font-size:.78rem}.auth-box .dica.erro{color:var(--danger)}.auth-box .botao-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:1.25rem;background:var(--brand);color:var(--brand-contrast);border-radius:var(--radius);font-weight:600;text-decoration:none}.auth-box .botao-link:hover{background:var(--brand-dark)}.auth-box button.secundario{width:100%;min-height:48px;margin-top:1.25rem;background:transparent;color:var(--brand-dark);border:1px solid var(--border);border-radius:var(--radius);font-weight:600;cursor:pointer}.auth-box button.secundario:hover{background:var(--brand-50);border-color:var(--brand-100)}.auth-box .alert .link-inline{display:inline-block;margin-top:.4rem;color:var(--danger);font-weight:600;text-decoration:underline}.pass-wrap{position:relative;display:block}.pass-wrap input{width:100%;padding-right:4.2rem!important}.pass-toggle{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--brand);font-size:.78rem;cursor:pointer;padding:.2rem .4rem;border-radius:var(--radius-sm)}.pass-toggle:hover{background:#0000000d}@media(max-width:800px){.auth-screen{grid-template-columns:1fr}.auth-brand{display:none}.auth-box .mobile-logo{display:block;color:var(--brand);font-size:1.8rem;font-weight:700;letter-spacing:2px;margin:0 0 1.5rem;text-align:center}}.alert{background:#fdecea;color:var(--danger);border:1px solid #f5c6c2;border-radius:var(--radius);padding:.6rem .75rem;font-size:.9rem;margin-bottom:1rem}.notice{background:#e7f4ea;color:var(--success);border:1px solid #bfe3c8;border-radius:var(--radius);padding:.6rem .75rem;font-size:.9rem;margin-bottom:1rem}.btn-solid{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--brand);color:#fff;border-radius:var(--radius);padding:var(--space-3) var(--space-4);text-decoration:none;text-align:center;font-size:var(--text-sm);font-weight:600;transition:background .15s ease}.btn-solid:hover{background:var(--brand-dark)}.btn-outline{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:transparent;color:var(--brand);border:1px solid var(--brand-100);border-radius:var(--radius);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600}.btn-outline:hover:not(:disabled){background:var(--brand-50)}.btn-on-brand{display:inline-block;background:var(--brand-contrast);color:var(--brand-dark);border-radius:var(--radius);padding:var(--space-3) var(--space-5);text-decoration:none;font-weight:600;white-space:nowrap;box-shadow:var(--shadow-sm);transition:transform .15s ease}.btn-on-brand:hover{transform:translateY(-1px)}.empty-state{display:grid;justify-items:center;gap:var(--space-3);text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-8) var(--space-5)}.empty-icon{font-size:2.5rem}.empty-state h3{margin:0;font-size:var(--text-lg)}.empty-state p{margin:0;max-width:42ch;color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal)}.empty-state .btn-solid{margin-top:var(--space-2);padding-inline:var(--space-6)}.sk{background:linear-gradient(90deg,var(--surface-2) 25%,#e6ebef 37%,var(--surface-2) 63%);background-size:400% 100%;border-radius:var(--radius);animation:sk-shimmer 1.4s ease infinite}@keyframes sk-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}
