:root{--bg:#0b1120;--bg-card:#111a2e;--bg-card-elevated:#16223b;--bg-muted:#17233d;--text:#f1f5f9;--text-muted:#94a3b8;--accent:#38bdf8;--accent-strong:#0284c7;--emerald:#10b981;--emerald-bg:#10b98124;--warn:#f59e0b;--warn-bg:#f59e0b24;--danger:#ef4444;--danger-bg:#ef444424;--border:#233252;--border-highlight:#38bdf873;--radius:12px;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 0%, #13203c 0%, var(--bg) 55%);color:var(--text);font-family:var(--font-sans);min-height:100vh;margin:0;line-height:1.55}.app-shell{max-width:1220px;margin:0 auto;padding:20px 18px 56px}.top-header{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(135deg,#16223beb,#111a2eeb);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:16px 20px;display:flex;box-shadow:0 8px 24px #00000038}.brand-block h1{letter-spacing:-.02em;color:#fff;margin:0;font-size:1.35rem;font-weight:800}.brand-block p{color:var(--text-muted);max-width:680px;margin:4px 0 0;font-size:.9rem}.privacy-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pill{background:var(--bg-muted);border:1px solid var(--border);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.pill-ok{color:#a7f3d0;background:#10b9811f;border-color:#10b98173}.pill-warn{color:#fde68a;background:#f59e0b1f;border-color:#f59e0b73}.welcome-hero{border-radius:var(--radius);background:linear-gradient(145deg,#10b9811a 0%,#111a2ef5 45%,#38bdf81a 100%);border:1px solid #38bdf861;margin-bottom:18px;padding:22px;box-shadow:0 12px 30px #00000040}.welcome-hero-header{margin-bottom:16px}.welcome-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:#38bdf824;border:1px solid #38bdf859;border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:.72rem;font-weight:800;display:inline-block}.welcome-hero-header h2{color:#fff;margin:0 0 6px;font-size:1.28rem}.welcome-hero-header p{color:var(--text-muted);margin:0;font-size:.92rem}.welcome-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (width<=920px){.welcome-grid{grid-template-columns:1fr}}.welcome-step-card{border:1px solid var(--border);background:#0f172ad1;border-radius:10px;flex-direction:column;justify-content:space-between;gap:10px;padding:16px;transition:transform .15s,border-color .15s;display:flex}.welcome-step-card:hover{border-color:var(--border-highlight);transform:translateY(-2px)}.welcome-step-highlight{background:linear-gradient(#10b9811a,#0f172ae6);border-color:#10b98173}.welcome-step-badge{letter-spacing:.06em;color:#cbd5e1;background:#94a3b829;border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:.68rem;font-weight:800}.badge-accent{color:#6ee7b7;background:#10b98133}.welcome-step-card h3{color:#fff;margin:0;font-size:1rem}.welcome-step-card p{color:var(--text-muted);flex-grow:1;margin:0;font-size:.85rem}.workspace-status-bar{border:1px solid var(--border);background:#16223bbf;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:11px 16px;font-size:.86rem;display:flex}.workspace-status-text{color:var(--text-muted)}.workspace-status-text strong{color:var(--text)}.workspace-bar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.banner{border-radius:var(--radius);border:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:13px 16px;font-size:.9rem;display:flex}.banner-info{background:#38bdf81f;border-color:#38bdf866}.banner-warn{background:var(--warn-bg);border-color:#f59e0b80}.banner-danger{background:var(--danger-bg);border-color:#ef44448c}.banner-ok{background:var(--emerald-bg);border-color:#10b98180}.nav-tabs{border:1px solid var(--border);border-radius:var(--radius);background:#111a2ed9;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:6px;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:10px 15px;font-size:.9rem;font-weight:700;transition:all .15s}.tab-btn:hover{color:var(--text);background:#ffffff0a}.tab-btn.active{background:linear-gradient(135deg, var(--accent-strong), #0369a1);color:#fff;border-color:#38bdf880;box-shadow:0 4px 12px #0284c759}.two-col{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=900px){.two-col{grid-template-columns:1fr}}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px;box-shadow:0 4px 16px #00000029}.card-highlight{border-color:var(--border-highlight);background:linear-gradient(#16223bf2,#111a2efa)}.card h2,.card h3{color:#fff;margin-top:0;margin-bottom:8px;font-size:1.08rem}.section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.section-desc{color:var(--text-muted);margin:0 0 14px;font-size:.88rem}.advanced-drawer,.help-drawer{padding:0;overflow:hidden}.help-drawer{border:1px solid var(--border);background:#0f172aa6;border-radius:10px;margin-top:14px}.drawer-summary{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;font-size:.92rem;font-weight:700;list-style:none;transition:background .15s;display:flex}.drawer-summary:hover{background:#ffffff08}.drawer-hint{color:var(--accent);white-space:nowrap;background:#38bdf81f;border-radius:999px;padding:3px 10px;font-size:.76rem;font-weight:600}.drawer-body{border-top:1px solid var(--border);padding:14px 18px 18px}.step-list{color:var(--text-muted);margin:0;padding-left:20px;font-size:.88rem}.step-list li{margin-bottom:6px}.dropzone-box{text-align:center;cursor:pointer;background:#0f172aa6;border:2px dashed #38bdf873;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:14px;padding:28px 20px;transition:all .18s;display:flex}.dropzone-box:hover,.dropzone-box.dropzone-active{border-color:var(--accent);background:#38bdf817}.dropzone-icon{margin-bottom:8px;font-size:2.1rem}.dropzone-title{color:#fff;margin-bottom:4px;font-size:1rem;font-weight:700}.dropzone-sub{color:var(--text-muted);margin:0 0 10px;font-size:.83rem}.dropzone-input{max-width:340px;font-size:.82rem}.status-hero{border-radius:var(--radius);border:1px solid var(--border);align-items:flex-start;gap:16px;margin-bottom:18px;padding:20px;display:flex}.status-hero-ok{background:linear-gradient(135deg,#10b98129,#111a2ef2);border-color:#10b98180}.status-hero-warn{background:linear-gradient(135deg,#f59e0b29,#111a2ef2);border-color:#f59e0b8c}.status-hero-icon{font-size:2rem;line-height:1}.status-hero-content h2{color:#fff;margin:0 0 6px;font-size:1.15rem}.status-hero-content p{color:var(--text-muted);margin:0;font-size:.9rem}.darf-summary-list{color:#fde68a;margin:10px 0 0;padding-left:18px;font-size:.9rem;font-weight:600}.form-grid{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:12px;margin-bottom:14px;display:grid}.field{flex-direction:column;gap:5px;display:flex}.field-submit{justify-content:flex-end}.field label{color:var(--text-muted);font-size:.8rem;font-weight:600}input,select,textarea{color:var(--text);border:1px solid var(--border);font-size:.9rem;font-family:var(--font-sans);background:#0b1325;border-radius:8px;padding:9px 11px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #38bdf82e}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn{background:var(--bg-muted);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:9px 14px;font-size:.88rem;font-weight:700;transition:all .15s}.btn:hover{border-color:var(--accent);background:#38bdf81f}.btn-primary{background:linear-gradient(135deg, var(--accent-strong), #0369a1);color:#fff;border-color:#38bdf873}.btn-primary:hover{background:linear-gradient(135deg, #0ea5e9, var(--accent-strong))}.btn-accent{color:#fff;background:linear-gradient(135deg,#059669,#047857);border-color:#10b98180}.btn-accent:hover{background:linear-gradient(135deg,#10b981,#059669)}.btn-danger{color:#fecaca;background:#ef44442e;border-color:#ef444480}.btn-danger-outline{color:#fca5a5;background:0 0;border-color:#ef444466}.btn-danger-outline:hover{border-color:var(--danger);background:#ef444426}.btn-sm{padding:6px 11px;font-size:.8rem}.btn-copy{white-space:nowrap;color:#bae6fd;border-color:#38bdf866}.btn-portal-back{color:var(--accent);background:#38bdf81f;border-color:#38bdf873;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.btn-portal-back:hover{background:var(--accent-strong);color:#fff}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;background:#0f172a8c;font-size:.78rem;font-weight:700}tr:hover td{background:#ffffff05}.discriminacao-cell{justify-content:space-between;align-items:center;gap:10px;display:flex}.mono{font-family:var(--font-mono)}.badge{border-radius:999px;padding:3px 8px;font-size:.74rem;font-weight:700;display:inline-block}.badge-ok{color:#6ee7b7;background:#10b9812e}.badge-warn{color:#fcd34d;background:#f59e0b33}.badge-danger{color:#fca5a5;background:#ef444433}.badge-info{color:#7dd3fc;background:#38bdf82e}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;margin-bottom:14px;display:grid}.kpi-box{border:1px solid var(--border);background:#0b1325;border-radius:10px;padding:12px 14px}.kpi-label{color:var(--text-muted);margin-bottom:4px;font-size:.76rem}.kpi-val{font-size:1.08rem;font-weight:800;font-family:var(--font-mono);color:#fff}.footer-disclaimer{border-top:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius);background:#0f172a80;margin-top:28px;padding:16px 18px;font-size:.8rem}.hidden{display:none!important}
