@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap";*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif}.sb{width:var(--sidebar-w);border-right:1px solid var(--gray-100);background:#fff;flex-direction:column;flex-shrink:0;height:100vh;display:flex}.sb-logo{align-items:center;gap:10px;padding:22px 20px;display:flex}.sb-logo-mark{background:linear-gradient(135deg, var(--blue-400), var(--blue-700));color:#fff;width:34px;height:34px;box-shadow:var(--shadow-sm);border-radius:10px;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.sb-logo-name{color:var(--gray-900);letter-spacing:-.3px;font-size:15px;font-weight:700}.sb-logo-tag{color:var(--blue-400);font-size:11px;font-weight:500}.sb-nav{flex-direction:column;flex:1;gap:2px;padding:8px 12px;display:flex}.sb-section{color:var(--gray-300);letter-spacing:.8px;text-transform:uppercase;padding:16px 12px 6px;font-size:10px;font-weight:700}.sb-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--gray-400);text-align:left;width:100%;font-size:13px;font-weight:500;font-family:var(--font);background:0 0;border:none;align-items:center;gap:10px;padding:9px 12px;transition:background .15s,color .15s;display:flex}.sb-item:hover{background:var(--gray-50);color:var(--gray-600)}.sb-item.active{background:var(--blue-50);color:var(--blue-600);box-shadow:inset 2px 0 0 var(--blue-500);font-weight:600}.sb-badge{background:var(--blue-500);color:#fff;font-size:10px;font-weight:700;font-family:var(--mono);border-radius:20px;margin-left:auto;padding:2px 7px}.sb-footer{border-top:1px solid var(--gray-100);padding:14px}.sb-user{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:6px;display:flex}.sb-user:hover{background:var(--gray-50)}.sb-avatar{background:linear-gradient(135deg, var(--green-100), var(--green-500));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.sb-user-name{color:var(--gray-800);font-size:13px;font-weight:600}.sb-user-role{color:var(--gray-400);font-size:11px}.app-layout{background:var(--gray-50);height:100vh;display:flex}.app-layout-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.layout{height:100vh;display:flex}.layout-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}.cfg-page{height:100%;font-family:var(--font);color:var(--gray-800);background:var(--gray-50);flex-direction:column;font-size:14px;display:flex}.cfg-loading,.cfg-erro{color:var(--gray-600);padding:24px;font-size:13px}.cfg-erro{background:var(--red-50);color:var(--red-400);border-radius:var(--radius-sm);margin:16px 28px 0;padding:10px 14px}.cfg-topbar{border-bottom:1px solid var(--gray-100);background:#fff;flex-shrink:0;align-items:center;gap:12px;height:64px;padding:0 32px;display:flex}.cfg-topbar-title{color:var(--gray-900);letter-spacing:-.2px;flex:1;font-size:17px;font-weight:700}.btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--gray-200);color:var(--gray-600);font-size:13px;font-weight:600;font-family:var(--font);background:#fff;align-items:center;gap:7px;padding:9px 16px;transition:all .15s;display:inline-flex}.btn:hover{background:var(--gray-50);border-color:var(--gray-300)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{color:#fff;box-shadow:var(--shadow-sm);background:#001a6b;border:none}.btn-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.cfg-body{flex:1;display:flex;overflow:hidden}.page-nav{border-right:1px solid var(--gray-100);background:#fff;flex-direction:column;flex-shrink:0;gap:3px;width:220px;padding:24px 14px;display:flex;overflow-y:auto}.page-nav-item{border-radius:var(--radius-sm);color:var(--gray-400);cursor:pointer;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:flex}.page-nav-item:hover{background:var(--gray-50);color:var(--gray-600)}.page-nav-item.active{background:var(--blue-50);color:var(--blue-600);font-weight:600}.page-content{flex:1;padding:32px 40px;overflow-y:auto}.page-content-inner{max-width:920px}.cfg-card{border:1px solid var(--gray-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.cfg-card-header{border-bottom:1px solid var(--gray-50);background-color:#001a6b;padding:20px 24px}.cfg-card-title{color:#fff;font-size:15px;font-weight:700}.cfg-card-sub{color:#fff;margin-top:2px;font-size:12.5px}.cfg-card-body{padding:24px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-grid.cols3{grid-template-columns:1fr 1fr 1fr}.form-full{grid-column:1/-1}.field{flex-direction:column;gap:7px;display:flex}.field label{color:var(--gray-600);font-size:12.5px;font-weight:600}.field input,.field textarea{border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-size:13.5px;font-family:var(--font);color:var(--gray-800);background:var(--gray-25);outline:none;padding:10px 13px;transition:border-color .15s,background .15s}.field input:focus,.field textarea:focus{border-color:var(--blue-400);background:#fff}.field textarea{resize:vertical;line-height:1.55}.exame-item{border:1px solid var(--gray-100);border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.exame-item-head{align-items:flex-end;gap:8px;display:flex}.exame-item-head .field{flex:1}.exame-remove{color:var(--gray-400);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:8px;font-size:16px}.exame-remove:hover{color:var(--red-400)}.horario-grid{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.dia-col{border-radius:var(--radius-md);background:var(--gray-25);border:1.5px solid var(--gray-100);flex-direction:column;align-items:center;gap:8px;padding:14px 8px;display:flex}.dia-label{color:var(--gray-600);font-size:11.5px;font-weight:700}.dia-toggle{background:var(--gray-200);cursor:pointer;border:none;border-radius:11px;flex-shrink:0;width:38px;height:21px;transition:background .2s;position:relative}.dia-toggle.on{background:linear-gradient(135deg, #001a6b, var(--blue-600))}.dia-toggle:after{content:"";width:17px;height:17px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}.dia-toggle.on:after{transform:translate(17px)}.hora-input{border:1.5px solid var(--gray-200);text-align:center;width:100%;font-size:11px;font-family:var(--mono);background:#fff;border-radius:6px;outline:none;padding:5px}.hora-dash{color:var(--gray-300);font-size:10px}.conv-wrap{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.conv-tag{background:var(--blue-50);color:var(--blue-700);border:1px solid var(--blue-100);border-radius:20px;align-items:center;gap:8px;padding:6px 12px 6px 14px;font-size:12.5px;font-weight:600;display:inline-flex}.conv-tag button{cursor:pointer;color:var(--blue-500);background:#fff9;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.conv-tag button:hover{background:var(--red-50);color:var(--red-400)}.add-conv-row{gap:10px;display:flex}.add-conv-row input{border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);font-size:13.5px;font-family:var(--font);background:var(--gray-25);outline:none;flex:1;padding:10px 14px}.add-conv-row input:focus{border-color:var(--blue-400);background:#fff}.toggle-row{border-bottom:1px solid var(--gray-50);align-items:center;gap:14px;padding:16px 0;display:flex}.toggle-row:last-child{border-bottom:none}.toggle-info{flex:1}.toggle-label{color:var(--gray-800);font-size:13.5px;font-weight:600}.toggle-desc{color:var(--gray-400);margin-top:3px;font-size:12.5px;line-height:1.4}.toggle{background:var(--gray-200);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;width:42px;height:23px;transition:background .2s;position:relative}.toggle.on{background:linear-gradient(135deg, #001a6b, var(--blue-600))}.toggle:after{content:"";width:17px;height:17px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle.on:after{transform:translate(19px)}.save-bar{border-top:1px solid var(--gray-100);background:#fff;flex-shrink:0;align-items:center;gap:12px;padding:16px 40px;display:flex}.save-status{color:var(--green-500);opacity:0;flex:1;align-items:center;gap:6px;font-size:12.5px;font-weight:600;transition:opacity .25s;display:flex}.save-status.visible{opacity:1}.pacientes-page{background:var(--gray-50);flex-direction:column;flex:1;display:flex;overflow:hidden}.pacientes-topbar{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;height:52px;padding:0 24px;display:flex}.pacientes-topbar .topbar-title{color:var(--gray-800);font-size:15px;font-weight:600}.pacientes-search{border:1px solid var(--gray-200);color:var(--gray-400);background:#fff;border-radius:8px;align-items:center;gap:8px;margin:16px 24px 0;padding:8px 12px;display:flex}.pacientes-search input{font-size:13px;font-family:var(--font);color:var(--gray-800);border:none;outline:none;flex:1}.pacientes-list{flex-direction:column;flex:1;gap:8px;padding:16px 24px 24px;display:flex;overflow-y:auto}.pacientes-empty{color:var(--gray-400);text-align:center;padding:24px;font-size:13px}.paciente-row{border:1px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;transition:background .12s,border-color .12s;display:flex}.paciente-row:hover{background:var(--blue-50);border-color:var(--blue-100)}.paciente-avatar{background:var(--blue-100);width:38px;height:38px;color:var(--blue-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.paciente-info{flex:1;min-width:0}.paciente-nome{color:var(--gray-800);font-size:13px;font-weight:500}.paciente-sub{color:var(--gray-400);margin-top:1px;font-size:12px}.paciente-plano{color:var(--blue-700);background:var(--blue-50);border:1px solid var(--blue-100);border-radius:20px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:500}.historico-loading{text-align:center;color:var(--gray-400);padding:40px;font-size:13px}.historico-page{flex-direction:column;flex:1;display:flex;overflow:hidden}.historico-topbar{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;height:52px;padding:0 24px;display:flex}.breadcrumb{align-items:center;gap:6px;font-size:13px;display:flex}.bread-link{color:var(--blue-500);cursor:pointer;font-weight:500}.bread-sep{color:var(--gray-400)}.bread-cur{color:var(--gray-800);font-weight:500}.historico-body{flex:1;display:flex;overflow:hidden}.perfil-col{border-right:1px solid var(--gray-200);background:#fff;flex-direction:column;flex-shrink:0;width:260px;display:flex;overflow-y:auto}.perfil-hero{border-bottom:1px solid var(--gray-100);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px 20px;display:flex}.p-avatar{background:var(--blue-100);width:60px;height:60px;color:var(--blue-700);border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:600;display:flex}.p-nome{color:var(--gray-800);font-size:16px;font-weight:600}.p-sub{color:var(--gray-400);font-size:12px}.pbadge{border-radius:20px;padding:3px 9px;font-size:11px;font-weight:500}.pb-blue{background:var(--blue-50);color:var(--blue-500)}.perfil-section{border-bottom:1px solid var(--gray-100);padding:14px 18px}.ps-title{color:var(--gray-400);letter-spacing:.6px;text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:600}.ps-row{color:var(--gray-400);align-items:flex-start;gap:8px;margin-bottom:9px;font-size:12px;display:flex}.ps-row svg{flex-shrink:0;margin-top:1px}.ps-row strong{color:var(--gray-800);text-align:right;margin-left:auto;font-weight:500}.stats-grid{border-bottom:1px solid var(--gray-100);grid-template-columns:1fr 1fr;gap:8px;padding:14px 18px;display:grid}.stat-box{background:var(--gray-50);text-align:center;border-radius:8px;padding:10px}.stat-n{color:var(--gray-800);font-size:20px;font-weight:600;font-family:var(--mono);letter-spacing:-1px}.stat-l{color:var(--gray-400);margin-top:2px;font-size:10px;font-weight:500}.obs-box{color:var(--gray-600);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:6px;padding:10px;font-size:12px;line-height:1.6}.historico-main{flex-direction:column;flex:1;gap:20px;padding:20px 24px;display:flex;overflow-y:auto}.tabs{border-bottom:1px solid var(--gray-200);flex-shrink:0;display:flex}.tab{color:var(--gray-400);cursor:pointer;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 18px;font-size:13px;font-weight:500;transition:color .15s}.tab:hover{color:var(--gray-600)}.tab.on{color:var(--blue-500);border-bottom-color:var(--blue-500)}.sec-card{border:1px solid var(--gray-200);background:#fff;border-radius:10px;overflow:hidden}.sec-head{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sec-title{color:var(--gray-800);font-size:13px;font-weight:600}.sec-count{color:var(--gray-400);font-size:11px;font-weight:600;font-family:var(--mono)}.timeline{flex-direction:column;padding:18px 18px 6px;display:flex}.tl-item{gap:14px;padding-bottom:20px;display:flex}.tl-item:last-child{padding-bottom:0}.tl-left{flex-direction:column;flex-shrink:0;align-items:center;width:32px;display:flex}.tl-dot{width:32px;height:32px;box-shadow:0 0 0 1px var(--gray-200);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tl-blue{background:var(--blue-50);color:var(--blue-500)}.tl-green{background:var(--green-50);color:var(--green-500)}.tl-amber{background:var(--amber-bg);color:var(--amber)}.tl-gray{background:var(--gray-100);color:var(--gray-600)}.tl-red{background:var(--red-50);color:var(--red-400)}.tl-line{background:var(--gray-200);flex:1;width:1px;margin-top:6px}.tl-body{flex:1;padding-bottom:4px}.tl-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.tl-titulo{color:var(--gray-800);font-size:13px;font-weight:600}.tl-data{color:var(--gray-400);font-size:11px;font-family:var(--mono);white-space:nowrap;flex-shrink:0}.tl-detalhe{color:var(--gray-600);font-size:12px;line-height:1.6}.tl-tags{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.tl-tag{background:var(--gray-100);color:var(--gray-600);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.conv-table{border-collapse:collapse;width:100%}.conv-table th{color:var(--gray-400);text-align:left;letter-spacing:.3px;text-transform:uppercase;border-bottom:1px solid var(--gray-100);padding:10px 16px;font-size:11px;font-weight:600}.conv-table td{color:var(--gray-700);border-bottom:1px solid var(--gray-50);vertical-align:middle;padding:11px 16px;font-size:12px}.conv-table tr:last-child td{border-bottom:none}.conv-table tr:hover td{background:var(--gray-50)}.ct-status{border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.ct-bot{background:var(--blue-50);color:var(--blue-500)}.ct-human{background:var(--amber-bg);color:var(--amber)}.status-pill{text-transform:capitalize;border-radius:20px;padding:3px 8px;font-size:10px;font-weight:600}.status-agendada{background:var(--blue-50);color:var(--blue-500)}.status-realizada{background:var(--green-50);color:var(--green-500)}.status-a_remarcar{background:var(--amber-bg);color:var(--amber)}.status-nao_compareceu{background:var(--gray-100);color:var(--gray-600)}.status-cancelada{background:var(--red-50);color:var(--red-400)}.conversas-page{background:var(--gray-50);flex-direction:column;flex:1;display:flex;overflow:hidden}.conversas-topbar{border-bottom:1px solid var(--gray-100);background:#fff;flex-shrink:0;align-items:center;gap:12px;height:52px;padding:0 24px;display:flex}.conversas-topbar .topbar-title{color:var(--gray-800);flex:1;font-size:15px;font-weight:600}.btn{cursor:pointer;border:1px solid var(--gray-200);color:var(--gray-600);font-size:13px;font-weight:600;font-family:var(--font);background:#fff;border-radius:8px;align-items:center;gap:7px;padding:9px 16px;display:inline-flex}.btn-primary{color:#fff;background:#001a6b;border:none}.nova-conversa-form{border-bottom:1px solid var(--gray-100);background:#fff;align-items:center;gap:10px;padding:16px 24px;display:flex}.nova-conversa-form input{border:1.5px solid var(--gray-200);font-size:13.5px;font-family:var(--font);border-radius:8px;outline:none;flex:1;padding:9px 13px}.nova-conversa-form input:focus{border-color:var(--blue-400)}.conversas-erro{background:var(--red-50);color:var(--red-400);padding:10px 24px;font-size:13px}.conversas-search{border:1px solid var(--gray-200);color:var(--gray-400);background:#fff;border-radius:8px;align-items:center;gap:8px;margin:16px 24px 0;padding:8px 12px;display:flex}.conversas-search input{font-size:13px;font-family:var(--font);color:var(--gray-800);border:none;outline:none;flex:1}.conversas-list{flex-direction:column;flex:1;gap:8px;padding:16px 24px 24px;display:flex;overflow-y:auto}.conversas-empty{color:var(--gray-400);text-align:center;padding:24px;font-size:13px}.conversa-row{border:1px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:12px;padding:12px 16px;transition:background .12s;display:flex}.conversa-row:hover{background:var(--blue-50)}.conversa-avatar{background:var(--blue-100);width:38px;height:38px;color:var(--blue-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.conversa-info{flex:1;min-width:0}.conversa-nome{color:var(--gray-800);font-size:13px;font-weight:500}.conversa-preview{color:var(--gray-400);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:12px;overflow:hidden}.conversa-status{border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.status-ia{background:var(--blue-50);color:var(--blue-500)}.status-humano{background:var(--amber-bg);color:var(--amber)}.status-concluida{background:var(--green-50);color:var(--green-500)}.chat-loading{text-align:center;color:var(--gray-400);padding:40px;font-size:13px}.chat-page{background:var(--gray-50);flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-head{border-bottom:1px solid var(--gray-100);background:#fff;flex-shrink:0;align-items:center;gap:12px;height:60px;padding:0 20px;display:flex}.icon-btn{border:1px solid var(--gray-200);cursor:pointer;width:32px;height:32px;color:var(--gray-600);background:#fff;border-radius:8px;justify-content:center;align-items:center;display:flex}.icon-btn:hover{background:var(--gray-50)}.chat-avatar{background:var(--blue-100);width:36px;height:36px;color:var(--blue-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.chat-nome{color:var(--gray-800);font-size:14px;font-weight:600}.chat-sub{color:var(--gray-400);font-size:12px}.chat-msgs{flex-direction:column;flex:1;gap:10px;padding:20px 24px;display:flex;overflow-y:auto}.msg{flex-direction:column;gap:3px;max-width:65%;display:flex}.msg-paciente{align-self:flex-start}.msg-bot,.msg-humano{align-self:flex-end}.msg-bub{border-radius:14px;padding:10px 14px;font-size:13.5px;line-height:1.5}.msg-paciente .msg-bub{border:1px solid var(--gray-200);color:var(--gray-800);background:#fff;border-radius:3px 14px 14px}.msg-bot .msg-bub{color:#fff;background:#001a6b;border-radius:14px 3px 14px 14px}.msg-humano .msg-bub{background:var(--green-500);color:#fff;border-radius:14px 3px 14px 14px}.msg-time{color:var(--gray-400);font-size:10.5px}.msg-bot .msg-time,.msg-humano .msg-time{text-align:right}.chat-input-area{border-top:1px solid var(--gray-100);background:#fff;flex-shrink:0;gap:10px;padding:14px 20px;display:flex}.chat-input-area input{border:1.5px solid var(--gray-200);font-size:13.5px;font-family:var(--font);border-radius:10px;outline:none;flex:1;padding:10px 14px}.chat-input-area input:focus{border-color:var(--blue-400)}.send-btn{cursor:pointer;color:#fff;background:#001a6b;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.send-btn:disabled{opacity:.5;cursor:not-allowed}:root{--blue-50:#eef6ff;--blue-100:#d9ebfe;--blue-300:#7cb4ec;--blue-400:#4499e3;--blue-500:#1a78cc;--blue-600:#1466b0;--blue-700:#0d4e8a;--blue-900:#062d52;--green-50:#eaf8f1;--green-100:#cceeda;--green-500:#1c8c58;--green-600:#167348;--amber:#e8850a;--amber-bg:#fef3e2;--red-400:#e05252;--red-50:#fef0f0;--gray-25:#fbfcfe;--gray-50:#f6f8fb;--gray-100:#eef1f6;--gray-200:#dde3ec;--gray-300:#c2cad8;--gray-400:#8a94a6;--gray-600:#4a5568;--gray-800:#1e2530;--gray-900:#10151d;--font:"DM Sans", sans-serif;--mono:"DM Mono", monospace;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #10151d0a;--shadow-md:0 4px 16px #10151d0f;--shadow-lg:0 12px 32px #10151d1a;--sidebar-w:248px}
