:root{--bg:#f5f6f4;--ink:#1c2b33;--ink-soft:#4b5a61;--live:#3a7d66;--live-soft:#e4efec;--alert:#9c3d2e;--alert-soft:#f3e5e1;--mist:#aeb8be;--card:#fff;--card-border:#e2e6e4}*{box-sizing:border-box}html,body,#root{min-height:100vh}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Space Grotesk,sans-serif}button{cursor:pointer;border:none;font-family:Space Grotesk,sans-serif}input{font-family:Space Grotesk,sans-serif}.field{margin-bottom:14px}.field label{color:var(--ink-soft);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.field input,.field textarea{border:1px solid var(--card-border);width:100%;color:var(--ink);background:#fff;border-radius:9px;padding:12px 14px;font-size:14px}.field textarea{resize:vertical;font-family:Space Grotesk,sans-serif}.field input:focus,.field textarea:focus{outline:2px solid var(--live);outline-offset:1px}.mark{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:8px;margin-bottom:22px;font-size:12px;font-weight:600;display:flex}.mark:before{content:"";background:var(--live);border-radius:50%;width:8px;height:8px;display:inline-block}.btn-primary{background:var(--live);color:#fff;border-radius:9px;padding:12px 18px;font-size:14px;font-weight:600}.btn-primary:disabled{background:var(--mist);cursor:not-allowed}.btn-ghost{color:var(--ink-soft);border:1px solid var(--card-border);background:0 0;border-radius:100px;padding:8px 14px;font-size:12.5px}.error-msg{color:var(--alert);min-height:16px;margin-top:10px;font-size:13px}.status-msg{color:var(--ink-soft);min-height:16px;margin-top:10px;font-size:13px}.status-msg.error{color:var(--alert)}#login-screen{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{width:100%;max-width:360px}.login-card h1{margin:0 0 24px;font-family:"Source Serif 4",serif;font-size:24px;font-weight:500;line-height:1.3}.login-card .btn-primary{width:100%;margin-top:6px;padding:14px;font-size:14.5px}#app{max-width:880px;margin:0 auto;padding:22px 20px 60px;display:none}#app.show{display:block}header.top .greet{font-size:15px}header.top .greet span{color:var(--ink-soft)}.header-actions{align-items:center;gap:10px;display:flex}.header-actions .btn-ghost{text-decoration:none}#btn-logout{color:var(--ink-soft);border:1px solid var(--card-border);background:0 0;border-radius:100px;padding:8px 14px;font-size:12.5px}.actions-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.actions-row h2{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:13px;font-weight:600}#btn-nova{background:var(--live);color:#fff;border-radius:9px;padding:11px 18px;font-size:13.5px;font-weight:600}.consulta-card .pname{font-size:15px;font-weight:500}a.pname-link{color:var(--ink);text-decoration:none}a.pname-link:hover{color:var(--live);text-decoration:underline}.consulta-card .meta{color:var(--ink-soft);margin-top:3px;font-family:IBM Plex Mono,monospace;font-size:12px}#btn-criar-consulta{background:var(--live);color:#fff}#btn-criar-consulta:disabled{background:var(--mist);cursor:not-allowed}.consent-page{justify-content:center;align-items:center;min-height:100vh;padding:28px 20px;display:flex}.wrap{width:100%;max-width:520px}.who{color:var(--ink-soft);margin-bottom:6px;font-size:13px}.who b{color:var(--ink);font-weight:600}.wrap h1{margin:8px 0 20px;font-family:"Source Serif 4",serif;font-size:28px;font-weight:500;line-height:1.3}.points{margin:0 0 26px;padding:0;list-style:none}.points li{border-top:1px solid var(--card-border);color:var(--ink-soft);align-items:flex-start;gap:12px;padding:14px 0;font-size:14.5px;line-height:1.55;display:flex}.points li:last-child{border-bottom:1px solid var(--card-border)}.points li .ico{background:var(--live-soft);width:22px;height:22px;color:var(--live);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:700;display:flex}.points li b{color:var(--ink);font-weight:600}.legal{color:var(--ink-soft);background:var(--card);border:1px solid var(--card-border);border-radius:10px;margin-bottom:26px;padding:14px 16px;font-size:12px;line-height:1.6}.wrap button{border-radius:10px;width:100%;padding:16px;font-size:15px;font-weight:600}#btn-agree{background:var(--live);color:#fff;margin-bottom:10px}#btn-agree:disabled{background:var(--mist);cursor:not-allowed}#btn-decline{color:var(--ink-soft);border:1px solid var(--card-border);background:0 0}#btn-decline:disabled{cursor:not-allowed}.result{text-align:center;width:100%;max-width:460px;padding:36px 20px}.result .badge{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 18px;font-size:22px;display:flex}.result.ok .badge{background:var(--live-soft);color:var(--live)}.result.no .badge{background:var(--alert-soft);color:var(--alert)}.result h2{margin:0 0 10px;font-family:"Source Serif 4",serif;font-size:21px;font-weight:500}.result p{color:var(--ink-soft);margin:0 0 24px;font-size:14px;line-height:1.6}.result button{background:var(--ink);color:#fff;border-radius:10px;width:100%;padding:16px;font-size:15px;font-weight:600}.grav-page{max-width:1080px;margin:0 auto;padding:20px 20px 60px}header.top .who{font-size:15px;font-weight:500}header.top .who span{color:var(--ink-soft);font-weight:400}.grav-header-right{align-items:center;gap:10px;display:flex}.grav-header-right .btn-ghost{text-decoration:none}.status-pill{letter-spacing:.08em;text-transform:uppercase;border-radius:100px;align-items:center;gap:7px;padding:6px 12px;font-size:11px;font-weight:600;display:inline-flex}.status-pill.idle{color:var(--ink-soft);background:#edeeea}.status-pill.live{background:var(--live-soft);color:var(--live)}.status-pill.live .dot{background:var(--live);border-radius:50%;width:7px;height:7px;animation:1.4s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.recorder{background:var(--card);border:1px solid var(--card-border);border-radius:16px;flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:22px;padding:26px 24px;display:flex}canvas#wave{background:linear-gradient(#fafbfa,#f2f4f3);border-radius:8px;flex:280px;min-width:220px;height:64px}.timer{letter-spacing:.02em;text-align:center;min-width:110px;font-family:IBM Plex Mono,monospace;font-size:34px;font-weight:500}.controls{gap:10px;display:flex}.ctrl-btn{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;display:flex}.ctrl-btn.rec{background:var(--live);color:#fff}.ctrl-btn.pause{background:var(--mist);color:#1c2b33}.ctrl-btn.stop{background:var(--alert);color:#fff}.ctrl-btn:disabled{opacity:.35;cursor:not-allowed}.grid{grid-template-columns:1fr;gap:18px;display:grid}@media (width>=820px){.grid{grid-template-columns:1fr 1fr}}.panel{background:var(--card);border:1px solid var(--card-border);border-radius:16px;padding:20px}.panel h2{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 14px;font-size:13px;font-weight:600}#transcript{color:#33424a;max-height:340px;padding-right:4px;font-family:"Source Serif 4",serif;font-size:15px;font-style:italic;line-height:1.7;overflow-y:auto}#transcript p{margin:0 0 10px}#transcript .empty,#fields .empty{color:var(--mist);font-family:Space Grotesk,sans-serif;font-size:13.5px;font-style:normal}.field-card{border:1px solid var(--card-border);background:#fbfcfb;border-radius:10px;margin-bottom:10px;padding:12px 14px}.field-card:last-child{margin-bottom:0}.field-card-alerta{background:var(--alert-soft);border-color:var(--alert)}.field-card-alerta .label{color:var(--alert)}.field-card .val{width:100%;color:var(--ink);background:0 0;border:none;padding:0;font-size:14px;line-height:1.5}.field-card .val:focus{outline:none}#fields{max-height:340px;padding-right:4px;overflow-y:auto}.btn-finalizar{border-radius:10px;width:100%;margin-top:22px;padding:16px;font-size:15px}.no-support{background:var(--alert-soft);color:var(--alert);border-radius:10px;margin-bottom:18px;padding:12px 14px;font-size:13px}.anamnese-page{max-width:880px;margin:0 auto;padding:20px 20px 60px}.anamnese-page header.top{border-bottom:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;padding-bottom:18px;display:flex}.voltar{color:var(--ink-soft);margin-bottom:10px;font-size:12.5px;text-decoration:none;display:inline-block}.voltar:hover{color:var(--ink)}.anamnese-page h1{margin:0;font-family:"Source Serif 4",serif;font-size:22px;font-weight:500}.anamnese-page h1 span{color:var(--ink-soft);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:400}.anamnese-page .meta{color:var(--ink-soft);margin-top:4px;font-family:IBM Plex Mono,monospace;font-size:12px}.grid{grid-template-columns:1fr;gap:14px;margin-bottom:18px;display:grid}@media (width>=720px){.grid{grid-template-columns:1fr 1fr}}.field-card{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:14px 16px}.alerta-seguranca{background:var(--alert-soft);border:1px solid var(--alert);border-radius:12px;margin-bottom:18px;padding:14px 16px}.alerta-seguranca .label{letter-spacing:.04em;text-transform:uppercase;color:var(--alert);align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.alerta-seguranca .val{color:var(--ink);font-size:14.5px;line-height:1.5}.alerta-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--alert);color:#fff;border-radius:100px;padding:2px 7px;font-size:9.5px;font-weight:700}.field-card .label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.field-card textarea{width:100%;color:var(--ink);resize:vertical;background:0 0;border:none;padding:0;font-family:Space Grotesk,sans-serif;font-size:14px;line-height:1.5}.field-card textarea:focus{outline:none}.field-card.readonly{background:#fbfcfb}.field-card .val{color:var(--ink);font-size:14px;line-height:1.5}.ai-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--live-soft);color:var(--live);border-radius:100px;padding:2px 7px;font-size:9.5px;font-weight:700}.panel{background:var(--card);border:1px solid var(--card-border);border-radius:14px;margin-bottom:18px;padding:18px}.panel h2{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:8px;margin:0 0 14px;font-size:13px;font-weight:600;display:flex}.ia-panel .field-card{margin-bottom:10px}.ia-panel .field-card:last-child{margin-bottom:0}.doc-tipos{flex-wrap:wrap;gap:8px;margin-bottom:4px;display:flex}.rascunho-doc{margin-top:14px}.rascunho-doc textarea{width:100%;color:var(--ink);resize:vertical;border:none;margin-top:6px;padding:0;font-family:Space Grotesk,sans-serif;font-size:14px;line-height:1.5}.rascunho-doc textarea:focus{outline:none}.doc-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.doc-actions .btn-primary,.doc-actions .btn-ghost{padding:9px 16px;font-size:13px}.doc-lista{flex-direction:column;gap:8px;margin-top:14px;display:flex}.doc-lista summary{cursor:pointer;color:var(--ink-soft);font-size:13px;font-weight:600}.doc-conteudo{white-space:pre-wrap;margin-top:10px;font-size:13.5px;line-height:1.6}.link-btn{color:var(--live);background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.transcricao-original{color:#33424a;max-height:300px;margin-top:14px;font-family:"Source Serif 4",serif;font-size:14.5px;font-style:italic;line-height:1.7;overflow-y:auto}.btn-salvar{border-radius:10px;width:100%;padding:15px;font-size:14.5px}.footnote{color:var(--ink-soft);border-top:1px solid var(--card-border);margin-top:22px;padding-top:16px;font-size:12px;line-height:1.6}.paciente-page{max-width:880px;margin:0 auto;padding:20px 20px 60px}.paciente-page .voltar{color:var(--ink-soft);margin-bottom:14px;font-size:12.5px;text-decoration:none;display:inline-block}.paciente-page .voltar:hover{color:var(--ink)}.paciente-page header.top{border-bottom:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;padding-bottom:18px;display:flex}.paciente-page h1{margin:0 0 6px;font-family:"Source Serif 4",serif;font-size:24px;font-weight:500}.paciente-page header.top .meta{color:var(--ink-soft);flex-wrap:wrap;gap:12px;font-family:IBM Plex Mono,monospace;font-size:12px;display:flex}.consulta-card{background:var(--card);border:1px solid var(--card-border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding:16px 18px;display:flex}.consulta-card .meta{color:var(--ink-soft);margin-bottom:4px;font-family:IBM Plex Mono,monospace;font-size:12px}.consulta-card .resumo{font-size:14.5px;font-weight:500}.consulta-card .resumo-sub{color:var(--ink-soft);margin-top:2px;font-size:13px}.status-tag.em_andamento{background:var(--live-soft);color:var(--live)}.status-tag.finalizada{color:var(--ink-soft);background:#edeeea}.status-tag.cancelada{background:var(--alert-soft);color:var(--alert)}.protocolos-page{max-width:720px;margin:0 auto;padding:20px 20px 60px}.protocolos-page .voltar{color:var(--ink-soft);margin-bottom:14px;font-size:12.5px;text-decoration:none;display:inline-block}.protocolos-page .voltar:hover{color:var(--ink)}.protocolos-page h1{margin:0 0 8px;font-family:"Source Serif 4",serif;font-size:24px;font-weight:500}.form-protocolo{background:var(--card);border:1px solid var(--card-border);border-radius:14px;margin-bottom:26px;padding:20px}.form-protocolo .btn-primary{width:100%;padding:12px}.section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 14px;font-size:13px;font-weight:600}.protocolo-card{background:var(--card);border:1px solid var(--card-border);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px;padding:14px 16px;display:flex}.protocolo-card .condicao{margin-bottom:4px;font-size:14.5px;font-weight:600}.protocolo-card .conteudo{color:var(--ink-soft);font-size:13.5px;line-height:1.5}.scores-page{max-width:760px;margin:0 auto;padding:20px 20px 60px}.scores-page .voltar{color:var(--ink-soft);margin-bottom:14px;font-size:12.5px;text-decoration:none;display:inline-block}.scores-page .voltar:hover{color:var(--ink)}.scores-page h1{margin:0 0 8px;font-family:"Source Serif 4",serif;font-size:24px;font-weight:500}.descricao{color:var(--ink-soft);margin:0 0 22px;font-size:14px;line-height:1.6}.lista-scores{flex-direction:column;gap:10px;display:flex}.score-card{background:var(--card);border:1px solid var(--card-border);border-radius:14px;overflow:hidden}.score-header{text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:16px 18px;display:flex}.score-nome{color:var(--ink);font-size:15px;font-weight:600}.score-descricao{color:var(--ink-soft);margin-top:3px;font-size:13px}.score-toggle{color:var(--ink-soft);flex-shrink:0;font-size:20px}.score-body{border-top:1px solid var(--card-border);padding:0 18px 18px}.score-campo{padding-top:16px}.score-campo label{color:var(--ink-soft);margin-bottom:8px;font-size:12.5px;font-weight:600;display:block}.score-opcoes{flex-wrap:wrap;gap:8px;display:flex}.score-opcao{background:var(--bg);border:1px solid var(--card-border);color:var(--ink);border-radius:100px;padding:7px 14px;font-size:13px}.score-opcao.selecionada{background:var(--live);border-color:var(--live);color:#fff;font-weight:600}.score-resultado{border-top:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding-top:16px;display:flex}.score-total{font-family:IBM Plex Mono,monospace;font-size:20px;font-weight:500}.score-interpretacao{color:var(--live);text-align:right;font-size:13.5px;font-weight:600}.agenda-page{max-width:880px;margin:0 auto;padding:20px 20px 60px}.agenda-page .voltar{color:var(--ink-soft);margin-bottom:8px;font-size:12.5px;text-decoration:none;display:inline-block}.agenda-page .voltar:hover{color:var(--ink)}header.top{border-bottom:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;padding-bottom:18px;display:flex}.agenda-page h1{margin:0;font-family:"Source Serif 4",serif;font-size:24px;font-weight:500}.empty-state{text-align:center;color:var(--mist);border:1px dashed var(--card-border);border-radius:14px;padding:50px 20px;font-size:14px}.agendamento-card{background:var(--card);border:1px solid var(--card-border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding:16px 18px;display:flex}.agendamento-card .data-hora{color:var(--ink-soft);text-transform:capitalize;margin-bottom:3px;font-family:IBM Plex Mono,monospace;font-size:12px}.agendamento-card .pname-link{color:var(--ink);font-size:15px;font-weight:500;text-decoration:none}.agendamento-card .pname-link:hover{color:var(--live);text-decoration:underline}.agendamento-card .observacoes{color:var(--ink-soft);margin-top:3px;font-size:13px}.agendamento-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.agendamento-actions .btn-primary,.agendamento-actions .btn-ghost{padding:8px 14px;font-size:12.5px}.status-tag{letter-spacing:.06em;text-transform:uppercase;border-radius:100px;padding:5px 11px;font-size:10.5px;font-weight:700}.status-tag.agendado{background:var(--live-soft);color:var(--live)}.status-tag.realizado{color:var(--ink-soft);background:#edeeea}.status-tag.cancelado{background:var(--alert-soft);color:var(--alert)}#modal-overlay{z-index:50;background:#1c2b338c;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}#modal-overlay.show{display:flex}.modal{background:#fff;border-radius:16px;width:100%;max-width:420px;padding:24px}.modal h2{margin:0 0 18px;font-family:"Source Serif 4",serif;font-size:19px;font-weight:500}#patient-results{max-height:160px;margin-top:8px;overflow-y:auto}.patient-opt{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:10px 12px;font-size:13.5px}.patient-opt:hover{background:var(--bg);border-color:var(--card-border)}.modal-actions{gap:10px;margin-top:20px;display:flex}.modal-actions button{border-radius:9px;flex:1;padding:12px;font-size:13.5px;font-weight:600}#btn-cancel-modal{border:1px solid var(--card-border);color:var(--ink-soft);background:0 0}.modal-actions button:last-child{background:var(--live);color:#fff}.modal-actions button:last-child:disabled{background:var(--mist);cursor:not-allowed}.modal-status{color:var(--ink-soft);min-height:16px;margin-top:8px;font-size:12.5px}.modal-status.error{color:var(--alert)}
