:root{--yellow-500:#ffc400;--yellow-600:#e0a800;--yellow-50:#fff8e1;--yellow-text:#8a6400;--black-900:#121212;--black-800:#1f1f1f;--on-yellow:#121212;--blue-600:#2563eb;--blue-500:#3b82f6;--green-600:#16a34a;--green-50:#f0fdf4;--red-600:#dc2626;--red-50:#fef2f2;--orange-600:#d97706;--orange-50:#fffbeb;--purple-600:#7c3aed;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-500:#64748b;--gray-700:#334155;--gray-900:#0f172a;--radius:10px;--shadow:0 1px 2px #0f172a0f, 0 1px 3px #0f172a14}*{box-sizing:border-box}body{background:var(--gray-50);color:var(--gray-900);margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}a{color:var(--yellow-text)}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:700}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--black-900);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 28px;display:flex}.brand{align-items:baseline;display:flex}.brand-title{color:#fff;font-size:17px;font-weight:700}.brand-accent{color:var(--blue-500)}.topbar-user{align-items:center;gap:14px;display:flex}.topbar-user-info{flex-direction:column;align-items:flex-end;font-size:13px;line-height:1.3;display:flex}.topbar-user-info strong{color:#fff}.topbar-user-info span{color:#a3a3a3}.topbar-user-trigger{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px}.topbar-user-trigger:hover,.topbar-user-trigger:focus-visible{background:var(--black-800)}.topbar-user-trigger:focus-visible{outline:2px solid var(--yellow-500);outline-offset:2px}.topbar .btn-ghost{color:#e5e5e5}.topbar .btn-ghost:hover:not(:disabled){background:var(--black-800)}.main-nav{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:stretch;padding:0 16px;display:flex;overflow-x:auto}.nav-link{color:var(--gray-500);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-bottom:3px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:10px 16px 8px;font-size:11px;font-weight:700;text-decoration:none;transition:color .15s,border-color .15s;display:flex}.nav-link:hover{color:var(--gray-900)}.nav-link.active{color:var(--gray-900);border-bottom-color:var(--yellow-500)}.content{width:100%;max-width:1200px;margin:0 auto;padding:28px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-header h1{font-size:24px}.card{border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:20px;padding:20px}.card h3{margin-bottom:14px;font-size:15px}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=900px){.grid-2{grid-template-columns:1fr}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px;display:grid}.stat-card{border:1px solid var(--gray-200);border-left:4px solid var(--blue-500);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.stat-card.tone-blue{border-left-color:var(--blue-500)}.stat-card.tone-green{border-left-color:var(--green-600)}.stat-card.tone-orange{border-left-color:var(--orange-600)}.stat-card.tone-purple{border-left-color:var(--purple-600)}.stat-card-label{color:var(--gray-500);font-size:13px;font-weight:500}.stat-card-value{font-size:26px;font-weight:700}.stat-card-hint{color:var(--gray-500);font-size:12px}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;color:var(--gray-500);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--gray-200);padding:10px 12px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--gray-100);vertical-align:top;padding:12px}.table tbody tr:hover{background:var(--gray-50)}.table-actions{white-space:nowrap;text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.empty-cell{text-align:center;color:var(--gray-500);padding:24px!important}.btn{cursor:pointer;border:none;border-radius:8px;padding:9px 16px;font-size:14px;font-weight:600;transition:background .15s,opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--yellow-500);color:var(--on-yellow)}.btn-primary:hover:not(:disabled){background:var(--yellow-600)}.btn-ghost{color:var(--gray-700);background:0 0;padding:6px 10px}.btn-ghost:hover:not(:disabled){background:var(--gray-100)}.btn-danger{color:var(--red-600)}.btn-danger-solid{background:var(--red-600);color:#fff}.btn-danger-solid:hover:not(:disabled){background:#b91c1c}.btn-block{width:100%}.btn-icon{padding:4px 8px;font-size:18px;line-height:1}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;flex:1;gap:6px;display:flex}.field span{color:var(--gray-700);font-size:13px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--gray-300);color:var(--gray-900);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--yellow-600);box-shadow:0 0 0 3px var(--yellow-50);outline:none}.field-row{gap:14px;display:flex}.password-field{display:flex;position:relative}.password-field input{flex:1;padding-right:38px!important}.password-toggle{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:5px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.lgpd-consent{color:var(--gray-500);cursor:pointer;align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;display:flex}.lgpd-consent input{width:16px;height:16px;accent-color:var(--yellow-500);flex-shrink:0;margin:1px 0 0}.password-toggle:hover{color:var(--gray-700);background:var(--gray-100)}.pergunta-item{align-items:center;gap:8px;display:flex}.pergunta-item input{border:1px solid var(--gray-300);color:var(--gray-900);border-radius:8px;flex:1;padding:9px 12px;font-family:inherit;font-size:14px}.pergunta-item input:focus{border-color:var(--yellow-600);box-shadow:0 0 0 3px var(--yellow-50);outline:none}.search-input{border:1px solid var(--gray-300);border-radius:8px;width:100%;margin-bottom:14px;padding:9px 12px;font-size:14px}.search-input:focus{border-color:var(--yellow-600);outline:none}.form-error{color:var(--red-600);margin:-4px 0 0;font-size:13px}.form-hint{color:var(--gray-500);margin:-4px 0 0;font-size:13px}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.badge.tone-neutral{background:var(--gray-100);color:var(--gray-700)}.badge.tone-green{background:var(--green-50);color:var(--green-600)}.badge.tone-red{background:var(--red-50);color:var(--red-600)}.badge.tone-orange{background:var(--orange-50);color:var(--orange-600)}.modal-backdrop{z-index:50;background:#0f172a80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius);background:#fff;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0f172a40}.modal-wide{max-width:720px}.modal-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-body{padding:20px}.modal-footer{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.profile-details{gap:14px;display:grid}.profile-detail{border-bottom:1px solid var(--gray-100);flex-direction:column;gap:4px;padding-bottom:12px;display:flex}.profile-detail:last-child{border-bottom:0;padding-bottom:0}.profile-detail span{color:var(--gray-500);font-size:12px;font-weight:600}.profile-detail strong{color:var(--gray-900);overflow-wrap:anywhere;font-size:14px}.profile-note{margin:18px 0 0}.simple-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.simple-list-item{border-radius:8px;padding:10px 12px}.simple-list-item.clickable{cursor:pointer}.simple-list-item.clickable:hover{background:var(--gray-50)}.simple-list-item.selected{background:var(--yellow-50)}.simple-list-item-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.certificate{text-align:center;border:1px solid var(--gray-100);border-radius:8px;padding:24px 16px}.certificate h2{margin:8px 0}.simple-list li:not(.simple-list-item){border-bottom:1px solid var(--gray-100);padding:10px 12px}.simple-list li:last-child{border-bottom:none}.simple-list-title{font-size:14px;font-weight:600}.simple-list-sub{color:var(--gray-500);margin-top:2px;font-size:12px}.agenda-list{margin:0;padding:0;list-style:none}.agenda-item{border-bottom:1px solid var(--gray-100);gap:16px;padding:12px 0;display:flex}.agenda-item:last-child{border-bottom:none}.agenda-time{width:56px;color:var(--yellow-text);flex-shrink:0;font-size:14px;font-weight:700}.login-screen{background:radial-gradient(circle at 20% 20%, #2a2a2a, var(--black-900) 60%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{border-top:4px solid var(--yellow-500);background:#fff;border-radius:16px;width:100%;max-width:380px;padding:36px;box-shadow:0 24px 48px #00000059}.login-brand{text-align:center;margin-bottom:26px}.login-brand p{color:var(--black-900);margin:0;font-size:19px;font-weight:700}.login-links{justify-content:center;gap:20px;margin-top:14px;font-size:13px;display:flex}.login-links a{color:var(--yellow-text);font-weight:600;text-decoration:none}.login-links a:hover{text-decoration:underline}.cadastro-login-link{border-top:1px solid var(--gray-200);margin-top:18px;padding-top:16px}.cadastro-login-link a{border:1px solid var(--yellow-500);min-height:38px;color:var(--yellow-text);background:var(--yellow-50);border-radius:8px;justify-content:center;align-items:center;padding:0 18px;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.cadastro-login-link a:hover{background:var(--yellow-500);color:var(--on-yellow);text-decoration:none;box-shadow:0 3px 8px #f59e0b38}.login-hint{border-top:1px solid var(--gray-200);color:var(--gray-500);flex-direction:column;gap:4px;margin-top:16px;padding-top:14px;font-size:12px;display:flex}.login-hint strong{color:var(--gray-700);font-size:12px}.toast-viewport{z-index:100;flex-direction:column;gap:10px;max-width:360px;display:flex;position:fixed;top:20px;right:20px}.toast{color:#fff;border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;font-weight:500;animation:.15s ease-out toast-in;display:flex;box-shadow:0 10px 24px #0f172a2e}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.toast span{flex:1}.toast-success{background:var(--green-600)}.toast-error{background:var(--red-600)}.toast-info{background:var(--black-800)}.toast-close{color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.toast-close:hover{opacity:1}.questionario-builder{flex-direction:column;gap:16px;display:flex}.questionario-pergunta{border:1px solid var(--gray-200);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}.questionario-pergunta-titulo{text-transform:uppercase;letter-spacing:.03em;color:var(--gray-500);font-size:12px;font-weight:700}.questionario-alternativa{align-items:center;gap:8px;display:flex}.questionario-alternativa input[type=text]{border:1px solid var(--gray-300);border-radius:8px;flex:1;padding:8px 10px;font-family:inherit;font-size:14px}.questionario-alternativa input[type=radio]{width:16px;height:16px;accent-color:var(--yellow-600)}.questionario-resposta{border-bottom:1px solid var(--gray-100);padding:14px 0}.questionario-resposta:last-child{border-bottom:none}.questionario-resposta-opcao{align-items:center;gap:8px;padding:4px 0;font-size:14px;display:flex}.questionario-resultado{text-align:center;padding:20px 16px}.questionario-resultado-percentual{margin:8px 0;font-size:42px;font-weight:700}.legal-card{max-width:720px;max-height:85vh;overflow-y:auto}.legal-card h1{margin:0 0 4px;font-size:24px}.legal-card h2{margin:22px 0 8px;font-size:16px}.legal-card p,.legal-card li{color:var(--gray-700);font-size:14px;line-height:1.6}.legal-versao{color:var(--gray-500);margin-bottom:18px;font-size:12px}.legal-tabela{border-collapse:collapse;width:100%;margin:8px 0 16px;font-size:13px}.legal-tabela th,.legal-tabela td{border:1px solid var(--gray-200);text-align:left;vertical-align:top;padding:8px 10px}.legal-tabela th{background:var(--gray-100)}
