:root{--paper: #f7f4ef;--card: #ffffff;--ink: #2b2a28;--ink-2: #6e6a63;--ink-3: #a39e95;--sage: #8a9b8e;--sage-deep: #5f7265;--sand: #e9e3d8;--line: #e5e0d6;--bubble-t: #edf0ec;--bubble-p: #5f7265;--danger: #a05252;--serif: "Cormorant Garamond", Georgia, serif;--sans: -apple-system, "Segoe UI", Helvetica, Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans)}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:14px;color:var(--ink)}.login{height:100%;display:flex;align-items:center;justify-content:center}.login-box{width:360px;text-align:center;padding:24px}.mono{width:74px;height:74px;border:1px solid var(--sage-deep);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto;font-family:var(--serif);font-size:22px;letter-spacing:2px;color:var(--sage-deep)}.login h1{font-family:var(--serif);font-weight:500;font-size:28px;margin-top:28px}.login .sub{color:var(--ink-2);font-size:13.5px;margin-top:8px}.login form{margin-top:32px;display:flex;flex-direction:column;gap:12px}.field{width:100%;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:13px 16px;outline:none}.field:focus{border-color:var(--sage)}.btn{background:var(--sage-deep);color:#fff;border-radius:14px;padding:13px 16px;font-size:14px;letter-spacing:.4px}.btn:disabled{opacity:.6;cursor:default}.btn-ghost{color:var(--sage-deep);border:1px solid var(--sage);border-radius:12px;padding:8px 14px;font-size:12.5px;background:var(--card)}.error{color:var(--danger);font-size:13px;margin-top:12px}.notice{color:var(--sage-deep);font-size:13px;line-height:1.5;margin-top:12px}.login .forgot{margin:14px 0 0;font-size:12.5px}.layout{display:flex;height:100%;overflow:hidden}@supports (height: 100dvh){.layout{height:100dvh}}.side{width:320px;min-width:320px;border-right:1px solid var(--line);background:#fcfbf8;display:flex;flex-direction:column}.side-head{padding:22px 22px 16px;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:19px}.brand em{color:var(--sage-deep);font-style:normal}.brand{text-align:left;color:var(--ink);padding:0}.side-nav{display:flex;flex-direction:column;gap:2px;margin-top:18px}.side-nav button{text-align:left;font-size:14.5px;color:var(--ink-2);padding:9px 12px;border-radius:10px}.side-nav button:hover{background:#f4f2ea;color:var(--ink)}.side-nav button.on{background:#efeee6;color:var(--sage-deep);font-weight:600}.pat-head{display:flex;align-items:baseline;justify-content:space-between;padding:16px 22px 0}.pat-head span{font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-3)}.pat-head .link-btn{font-size:12.5px;margin-left:0}.pat-search{padding:0 22px 12px;border-bottom:1px solid var(--line)}.show-inactive{display:block;width:100%;padding:14px 20px;font-size:12.5px;color:var(--ink-3);text-align:left}.show-inactive:hover{color:var(--sage-deep);text-decoration:underline}.search{width:100%;margin-top:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:9px 13px;outline:none;font-size:13px}.search:focus{border-color:var(--sage)}.pat-list{flex:1;overflow-y:auto}.pat{display:flex;gap:12px;padding:14px 20px;border-bottom:1px solid #f0ede5;align-items:center;width:100%;text-align:left}.pat:hover{background:#f4f2ea}.pat.on{background:#f1f0e9;box-shadow:inset 3px 0 0 var(--sage-deep)}.ava{width:40px;height:40px;min-width:40px;border-radius:50%;background:var(--sand);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:15px;color:var(--sage-deep)}.pat .nm{font-size:13.5px;font-weight:600}.pat .pv{font-size:12px;color:var(--ink-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.pat .meta{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:10.5px;color:var(--ink-3)}.dot{width:8px;height:8px;border-radius:50%;background:var(--sage-deep)}.side-foot{display:flex;justify-content:space-between;padding:12px 22px;border-top:1px solid var(--line)}.side-foot button{color:var(--ink-2);font-size:13px;padding:4px 0}.side-foot button:hover,.side-foot button.on{color:var(--sage-deep)}.side-foot button.on{font-weight:600}.side-foot .sair{color:var(--ink-3)}.side-foot .sair:hover{color:var(--danger)}.main{flex:1;display:flex;flex-direction:column;min-width:0}.main-head{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--line);background:var(--card)}.main-head .nm{font-size:15px;font-weight:600}.main-head .nx{font-size:12px;color:var(--ink-2);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.head-left{display:flex;align-items:center;gap:8px;min-width:0}.head-names{min-width:0}.back,.panel-toggle,.panel-close{display:none}.main-body{flex:1;display:flex;min-height:0}.thread-col{flex:1;display:flex;flex-direction:column;min-width:0}.thread{flex:1;overflow-y:auto;padding:22px 26px;display:flex;flex-direction:column;gap:10px}.b{max-width:66%;padding:11px 15px;font-size:13.5px;line-height:1.55;border-radius:18px;white-space:pre-wrap;word-break:break-word}.b.p{background:var(--bubble-t);align-self:flex-start;border-bottom-left-radius:5px}.b.t{background:var(--bubble-p);color:#fbfaf7;align-self:flex-end;border-bottom-right-radius:5px}.stamp{font-size:10px;color:var(--ink-3)}.stamp.l{align-self:flex-start;padding-left:5px}.stamp.r{align-self:flex-end;padding-right:5px}.composer{display:flex;gap:10px;padding:14px 20px;background:var(--card);border-top:1px solid var(--line);align-items:flex-end}.composer textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:18px;padding:11px 16px;background:var(--paper);outline:none;min-height:42px;max-height:140px}.composer textarea:focus{border-color:var(--sage)}.send{width:40px;height:40px;min-width:40px;border-radius:50%;background:var(--sage-deep);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center}.send:disabled{opacity:.4;cursor:default}.panel{width:380px;min-width:380px;border-left:1px solid var(--line);background:#fcfbf8;display:flex;flex-direction:column}.tabs{display:flex;border-bottom:1px solid var(--line)}.tabs button{flex:1;padding:13px 8px;font-size:11.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);border-bottom:2px solid transparent}.tabs button.on{color:var(--sage-deep);border-bottom-color:var(--sage-deep)}.panel-body{flex:1;overflow-y:auto;padding:20px}.panel h3{font-family:var(--serif);font-weight:500;font-size:19px;margin-bottom:14px}.frow{margin-bottom:14px}.frow label{display:block;font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.frow input,.frow select,.frow textarea{width:100%;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 13px;outline:none}.frow input:focus,.frow textarea:focus{border-color:var(--sage)}.frow textarea{resize:vertical;min-height:110px;line-height:1.55}.panel .actions{display:flex;gap:8px;margin-top:6px}.saved-hint{font-size:12px;color:var(--sage-deep);margin-top:10px}.frow label.check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);text-transform:none;letter-spacing:0;margin-bottom:0}.frow label.check input{width:auto}.appt{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 3px 12px -6px #2b2a281f}.appt:hover{border-color:var(--sage)}.appt .d{font-size:14px;font-weight:600;text-transform:capitalize}.appt .m{font-size:12px;color:var(--ink-2);margin-top:4px}.appt .del{color:var(--ink-3);font-size:12px}.appt .del:hover{color:var(--danger)}.appt.past{opacity:.55}.note{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:12px;box-shadow:0 3px 12px -6px #2b2a281f}.note .nb{font-size:13px;line-height:1.6;color:var(--ink);white-space:pre-wrap}.note .nh{font-size:11px;color:var(--ink-3);margin-top:8px}.private-hint{font-size:11.5px;color:var(--ink-3);margin-bottom:14px;line-height:1.5}.caderno{display:flex;flex-direction:column;height:100%;min-height:0}.cad-lista{flex:1;min-height:120px;overflow-y:auto;margin-bottom:12px}.cad-nota{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:10px;box-shadow:0 3px 12px -6px #2b2a281f}.cad-txt{font-size:13px;line-height:1.6;color:var(--ink);white-space:pre-wrap}.cad-pe{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}.cad-hora,.cad-pe button{font-size:11px;color:var(--ink-3)}.cad-nota:hover .cad-pe button{color:var(--ink-2)}.cad-pe button:hover{color:var(--danger)}.cad-confirma{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--danger)}.cad-confirma button.sim{color:var(--danger);font-weight:600}.caderno-col{flex:1;min-width:0;display:flex;flex-direction:column;padding:22px 26px 18px}.caderno-col .caderno{width:100%;max-width:820px;margin:0 auto}.caderno-col .caderno h3{font-family:var(--serif);font-weight:500;font-size:21px;margin-bottom:6px}.caderno-col .cad-txt{font-size:17px;line-height:1.65}.caderno-col .cad-hora{font-size:13.5px}.caderno-col .cad-pe button,.caderno-col .cad-confirma,.caderno-col .cad-confirma-edicao button{font-size:15px}.caderno-col .cad-botoes,.caderno-col .cad-confirma-edicao{gap:18px}.caderno-col .cad-pe button{padding:6px 2px;color:var(--ink-2)}.caderno-col .cad-nota{padding:18px 20px}.caderno-col .cad-escrever textarea,.caderno-col .cad-editar{font-size:17px;line-height:1.65;padding:16px 18px}.caderno-col .cad-escrever textarea{min-height:200px;max-height:50vh}.caderno-col .cad-editar{min-height:220px}.caderno-col .cad-accoes .btn,.caderno-col .cad-accoes .mic{font-size:15.5px;padding:12px 22px}.caderno-col .private-hint{font-size:13px}.caderno-col .cad-lista{min-height:160px}.cad-botoes{display:inline-flex;gap:12px}.cad-pe button.editar:hover{color:var(--sage-deep)}.cad-editada{font-style:italic}.cad-nota.a-editar{border-color:var(--sage)}.cad-editar{width:100%;min-height:120px;resize:vertical;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13.5px;line-height:1.6;color:var(--ink);outline:none}.cad-editar:focus{border-color:var(--sage)}.cad-confirma-edicao{display:inline-flex;align-items:center;gap:12px}.cad-confirma-edicao button{font-size:12px}.cad-confirma-edicao button.sim{color:var(--sage-deep);font-weight:600}.cad-pe .cad-confirma-edicao button:hover{color:var(--sage-deep)}.cad-escrever textarea{width:100%;min-height:90px;resize:vertical;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--ink);outline:none}.cad-escrever textarea:focus{border-color:var(--sage)}.cad-accoes{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}.agenda{flex:1;overflow-y:auto;padding:30px 30px 60px;width:100%;max-width:1000px;margin:0 auto}.agenda h3{font-family:var(--serif);font-weight:500;font-size:19px;margin-bottom:14px}.agenda-form{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px 18px;margin-bottom:30px;box-shadow:0 3px 12px -6px #2b2a281f}.nova-paciente{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 14px 4px;margin-bottom:14px}.nova-paciente .hint{font-size:12px;color:var(--ink-3);line-height:1.5;margin:2px 0 10px}.modal.agenda-form{margin-bottom:0;width:520px;max-width:calc(100vw - 28px);max-height:90vh;overflow-y:auto}.head-btn{padding:10px 16px;font-size:13.5px;white-space:nowrap}.agenda-foot{margin-top:18px}.appt-actions{display:flex;align-items:center}.menu-wrap{position:relative}.more-btn{width:32px;height:32px;border-radius:50%;font-size:18px;line-height:1;color:var(--ink-2);letter-spacing:1px}.more-btn:hover{background:#f1f0e9;color:var(--sage-deep)}.appt-menu{position:absolute;right:0;top:36px;z-index:20;min-width:220px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 10px 30px -10px #2b2a2840}.appt-menu button{display:block;width:100%;text-align:left;font-size:13.5px;padding:9px 12px;border-radius:8px;color:var(--ink)}.appt-menu button:hover{background:#f4f2ea}.appt-menu button.danger{color:var(--danger)}.confirm-cancel{display:flex;align-items:center;gap:14px;font-size:13px;white-space:nowrap}.confirm-cancel .del{color:var(--danger);font-weight:600}.agenda-form .grid2{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.agenda-form .actions{margin-bottom:6px}.agenda-day{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--sage-deep);margin:20px 0 8px}.appt-open{flex:1;text-align:left;min-width:0}.appt-open:hover .d{color:var(--sage-deep)}.appt .notes-btn{color:var(--sage-deep);font-size:12px;margin-right:14px;white-space:nowrap}.appt .notes-btn:hover{text-decoration:underline}.agenda-notes{margin:-4px 0 14px;padding:10px 12px 2px;border-left:3px solid var(--sage);background:#f4f2ea;border-radius:0 12px 12px 0}.agenda-notes .note{margin-bottom:10px}.agenda-notes .private-hint{margin:4px 2px 10px}.empty-state{color:var(--ink-3);font-family:var(--serif);font-style:italic;font-size:16px;text-align:center;margin-top:60px;line-height:1.6}.center-col{flex:1;display:flex;align-items:center;justify-content:center}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b2a2859;display:flex;align-items:center;justify-content:center;z-index:10}.modal{width:420px;background:var(--card);border-radius:20px;padding:26px;box-shadow:0 24px 60px -20px #2b2a2859}.modal h2{font-family:var(--serif);font-weight:500;font-size:23px;margin-bottom:18px}.modal .actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.modal .hint{font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:12px}.frow .hint{font-size:11.5px;color:var(--ink-3);line-height:1.5;margin-top:6px}.docs-input{display:none}.doc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 17px;margin-bottom:11px;display:flex;justify-content:space-between;align-items:center;gap:10px;box-shadow:0 3px 12px -6px #2b2a281f}.doc:hover{border-color:var(--sage)}.doc-open{flex:1;text-align:left;min-width:0}.doc .dn{font-size:13.5px;font-weight:600;overflow-wrap:anywhere}.doc-open:hover .dn{color:var(--sage-deep)}.doc .dm{font-size:11.5px;color:var(--ink-3);margin-top:3px}.doc .del{color:var(--ink-3);font-size:12px;white-space:nowrap}.doc .del:hover{color:var(--danger)}.bdays{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.bday{display:block;width:100%;text-align:left;font-size:12.5px;color:var(--sage-deep);line-height:1.5;padding:3px 0}.bday:hover{text-decoration:underline}.booked{display:flex;align-items:center;gap:12px;margin:-18px 0 26px;background:var(--card);border:1px solid var(--sage);border-radius:14px;padding:13px 15px}.booked div{flex:1;min-width:0}.booked strong{display:block;font-size:13.5px}.booked span{display:block;font-size:12px;color:var(--ink-2);margin-top:2px}.booked-close{color:var(--ink-3);font-size:17px;line-height:1;padding:0 2px}.booked-close:hover{color:var(--danger)}.sess-head{display:flex;align-items:center;justify-content:space-between;margin:26px 0 14px}.link-btn{color:var(--sage-deep);font-size:12px;white-space:nowrap;margin-left:10px}.link-btn:hover{text-decoration:underline}.board{flex:1;overflow-y:auto;padding:34px 34px 60px;width:100%;max-width:860px;margin:0 auto}.board-head{margin-bottom:26px}.board-head .hoje{font-size:10.5px;letter-spacing:2.2px;color:var(--sage-deep)}.board-head h1{font-family:var(--serif);font-weight:500;font-size:32px;margin-top:8px}.card-block{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin-bottom:18px}.card-block h3{font-family:var(--serif);font-weight:500;font-size:18px;margin-bottom:14px}.block-head{display:flex;align-items:baseline;justify-content:space-between}.block-head h3{margin-bottom:14px}.timeline{display:flex;gap:10px;flex-wrap:wrap}.slot{flex:1 1 150px;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:13px 15px}.slot:hover{border-color:var(--sage)}.slot.done{opacity:.5}.slot .t{display:block;font-family:var(--serif);font-size:21px;color:var(--sage-deep)}.slot .n{display:block;font-size:13.5px;font-weight:600;margin-top:4px}.slot .m{display:block;font-size:11.5px;color:var(--ink-3);margin-top:2px}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.stats>*{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-align:left}.stats button:hover{border-color:var(--sage)}.stats span{display:block;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.stats strong{display:block;font-family:var(--serif);font-size:27px;font-weight:500;margin-top:8px}.stats strong.aviso{color:var(--danger)}.todo{display:flex;align-items:center;gap:11px;width:100%;text-align:left;font-size:13.5px;color:var(--ink);padding:11px 0;border-bottom:1px solid #f0ede5}.todo:last-child{border-bottom:none}.todo-main{flex:1;min-width:0;display:flex;align-items:center;gap:11px;text-align:left;font-size:13.5px;color:var(--ink)}.todo-main:hover{color:var(--sage-deep)}.todo-acts{display:flex;align-items:center;gap:14px;white-space:nowrap}.todo-acts .link-btn{margin-left:0;font-size:12.5px}.todo-x{color:var(--ink-3);font-size:18px;line-height:1;padding:0 4px}.todo-x:hover{color:var(--danger)}@media (max-width: 720px){.todo{flex-wrap:wrap}.todo-acts{padding-left:35px}}.pill{min-width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;padding:0 8px}.pill.unread{background:var(--bubble-p);color:#fff}.pill.warn{background:#f3e3e3;color:var(--danger)}@media (max-width: 720px){.board{padding:22px 16px 50px}.board-head h1{font-size:26px}.stats{grid-template-columns:1fr 1fr}}.stat{font-size:11.5px}.stat.held{color:var(--sage-deep)}.stat.no_show,.stat.owed{color:var(--danger)}.stat.cancelled_patient,.stat.cancelled_therapist{color:var(--ink-3)}.appt .mark{display:flex;gap:10px;margin-right:12px;white-space:nowrap}.mark-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-6px 0 12px;padding-left:4px;font-size:11.5px;color:var(--ink-3)}.edit-appt{background:var(--card);border:1px solid var(--sage);border-radius:14px;padding:16px 16px 12px;margin:-4px 0 14px}.edit-appt .grid2{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.edit-appt .frow{margin-bottom:12px}.edit-appt .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.pay-form{background:var(--card);border:1px solid var(--sage);border-radius:14px;padding:14px 16px 10px;margin:-4px 0 14px}.pay-form .frow{margin-bottom:10px}.def-campo{margin-bottom:22px}.def-campo:last-child{margin-bottom:4px}.def-acoes{display:flex;align-items:center;gap:12px;margin-top:8px}.hint.aviso-sms{color:var(--danger)}.tag-publico{margin-left:10px;font-size:9.5px;letter-spacing:.6px;text-transform:none;background:var(--bubble-t);color:var(--sage-deep);padding:3px 9px;border-radius:999px}.vista-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.vista-botoes{display:flex;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:3px}.vista-botoes button{font-size:12.5px;color:var(--ink-3);padding:6px 16px;border-radius:999px}.vista-botoes button.on{background:var(--paper);color:var(--sage-deep)}.semana-nav{display:flex;align-items:center;gap:12px}.semana-rotulo{font-size:12.5px;color:var(--ink-2);min-width:150px;text-align:center}.cal{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:10px 12px 14px;overflow-x:auto;box-shadow:0 3px 12px -6px #2b2a281f}.cal-grelha{display:grid;grid-template-columns:46px repeat(7,minmax(78px,1fr));position:relative}.cal-horas{position:relative}.cal-hora{position:absolute;right:8px;font-size:10px;color:var(--ink-3);transform:translateY(-6px)}.cal-dia{border-left:1px solid #f0ede5}.cal-dia.hoje{background:#fbfaf6}.cal-cabeca{height:34px;text-align:center;padding-top:4px}.cal-cabeca .dn{display:block;font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-3)}.cal-cabeca .dd{display:block;font-family:var(--serif);font-size:16px;color:var(--ink)}.cal-dia.hoje .dd{color:var(--sage-deep)}.cal-coluna{position:relative}.cal-trabalho{position:absolute;left:0;right:0;background:#f6f4ee}.cal-ausencia{position:absolute;left:0;right:0;top:0;background:repeating-linear-gradient(45deg,#f4f2ea,#f4f2ea 6px,#efece2 6px,#efece2 12px);display:flex;align-items:center;justify-content:center}.cal-ausencia span{font-size:10px;color:var(--ink-3);transform:rotate(-90deg);white-space:nowrap}.cal-faixa{position:absolute;left:0;right:0;border-top:1px solid #f4f2ea}.cal-faixa:hover{background:#8a9b8e24}.cal-agora{position:absolute;left:0;right:0;height:2px;background:var(--danger);z-index:3}.cal-sessao{position:absolute;left:3px;right:3px;z-index:2;text-align:left;overflow:hidden;background:var(--bubble-p);color:#fbfaf7;border-radius:8px;padding:4px 7px}.cal-sessao:hover{filter:brightness(1.12)}.cal-sessao .ch{display:block;font-size:10px;opacity:.85}.cal-sessao .cn{display:block;font-size:11.5px;font-weight:600}.cal-sessao.held{background:var(--sage)}.cal-sessao.no_show{background:var(--danger)}.cal-sessao.cancelled_patient{background:var(--ink-3)}@media (max-width: 720px){.cal-grelha{grid-template-columns:38px repeat(7,minmax(58px,1fr))}.semana-rotulo{min-width:0}}.pill-fee{color:var(--sage-deep)}.prep-preview{font-size:11.5px;color:var(--ink-2);margin-top:6px;white-space:pre-wrap;padding-left:9px;border-left:2px solid var(--sage)}.evento{align-self:center;display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:11.5px;color:var(--ink-2);max-width:90%}.evento.bom{border-color:var(--sage);color:var(--sage-deep)}.evento.mau{border-color:var(--danger);color:var(--danger)}.month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.month-label{font-family:var(--serif);font-size:19px;text-transform:capitalize}.totals{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}.totals div,.totals button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:13px 15px}.totals span{display:block;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.totals strong{display:block;font-family:var(--serif);font-size:21px;margin-top:6px;font-weight:500}.totals strong.owed{color:var(--danger)}.receipt{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 15px;margin-bottom:10px;display:flex;align-items:center;gap:10px}.receipt .d{font-size:13.5px;font-weight:600}.receipt .m{font-size:11.5px;color:var(--ink-2);margin-top:3px}.receipt-num{width:130px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 11px;outline:none;font-size:12.5px}.receipt-num:focus{border-color:var(--sage)}.avail{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px;margin-bottom:18px}.avail-row{display:flex;align-items:baseline;gap:12px;padding:6px 0;border-bottom:1px solid #f0ede5}.avail-row .wd{font-size:13px;min-width:130px;text-transform:capitalize}.avail-row .slots{display:flex;gap:8px;flex-wrap:wrap}.slot{font-size:12px;color:var(--sage-deep);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:4px 11px}.slot:hover{color:var(--danger);border-color:var(--danger)}.avail-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.avail-form input,.avail-form select{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 11px;outline:none;font-size:13px}.doc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#2b2a2873;display:flex;flex-direction:column}.doc-actions{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:14px 20px;background:var(--card);border-bottom:1px solid var(--line)}.doc-actions-end{margin-left:auto;display:flex;gap:10px;align-items:center}.doc-field{font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-3)}.doc-field input,.doc-field select{display:block;margin-top:5px;min-width:240px;text-transform:none;letter-spacing:0;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 11px;outline:none}.doc-check{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2);padding-bottom:9px}.doc-scroll{flex:1;overflow-y:auto;padding:26px 16px 60px}.doc-sheet{width:100%;max-width:760px;margin:0 auto;background:#fff;padding:54px 62px 46px;border-radius:4px;box-shadow:0 20px 60px -24px #2b2a288c;font-size:14px;line-height:1.7;color:var(--ink)}.doc-so-ecra{margin-bottom:18px}.decl{font-family:Arial,Helvetica Neue,Helvetica,sans-serif;color:#111;display:flex;flex-direction:column;min-height:980px}.decl-cabecalho{font-size:12px;line-height:1.25;border-bottom:1px dashed #777;padding-bottom:6px}.decl-credenciais{font-size:7.5px;line-height:1.35;margin-top:2px}.decl-titulo{font-size:19px;font-weight:700;text-align:center;text-transform:uppercase;margin:110px 0 60px}.decl .doc-para,.decl .doc-editavel{font-family:inherit;font-size:14.5px;line-height:1.75}.decl .doc-editavel{font-size:17px}.decl-marca{display:block;width:52%;margin:18px auto 30px;opacity:.14}.decl-assinatura{text-align:center;margin-top:40px;break-inside:avoid}.decl-traco{width:290px;border-top:1px solid #111;margin:56px auto 10px}.decl-nome{font-weight:700;font-size:14.5px}.decl-cedula{font-size:11.5px;margin-top:4px}.decl-linha{text-align:center;margin:6px auto 0;width:70%;resize:none;padding:6px 10px}.decl-linha-papel{font-size:14.5px;margin-top:4px}.decl-rodape{margin-top:auto;padding-top:6px;border-top:1px dashed #777;font-size:8px;text-align:right}.doc-title{font-family:var(--serif);font-weight:500;font-size:26px;text-align:center;letter-spacing:1px;text-transform:uppercase;margin-bottom:34px}.doc-h2{font-family:var(--serif);font-weight:500;font-size:18px;margin:30px 0 10px}.doc-para{margin-bottom:16px;text-align:justify}.doc-editavel{display:block;width:100%;resize:none;overflow:hidden;font:inherit;font-size:17px;line-height:1.7;color:var(--ink);text-align:justify;background:#fffdf6;border:1px dashed var(--sage);border-radius:8px;padding:10px 12px;margin:0 -12px 16px;width:calc(100% + 24px);outline:none}.doc-editavel:focus{border-style:solid;background:#fff}.doc-imprimir{display:none;white-space:pre-wrap}.doc-texto-ctl{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:4px}.doc-texto-dica{font-size:14px;color:var(--ink-2);max-width:420px}.doc-list{margin:0 0 8px 20px}.doc-list li{margin-bottom:6px}.doc-id{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:8px}.doc-id div{display:flex;gap:12px;font-size:13.5px;padding:3px 0}.doc-id span{min-width:210px;color:var(--ink-3);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;padding-top:3px}.doc-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:6px}.doc-table th{text-align:left;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);font-weight:500;padding:6px 8px 6px 0;border-bottom:1px solid var(--line)}.doc-table td{padding:6px 8px 6px 0;border-bottom:1px solid #f0ede5}.doc-table th:nth-child(1){width:26%}.doc-table th:nth-child(2){width:14%}.doc-table th:nth-child(3){width:16%}.doc-warn{font-size:12px;color:var(--danger);margin-bottom:12px;line-height:1.5}.doc-note{margin-bottom:14px;break-inside:avoid}.doc-note p{white-space:pre-wrap;font-size:13.5px}.doc-sign{margin-top:54px;break-inside:avoid}.doc-rule{width:280px;border-top:1px solid var(--ink);margin:46px 0 8px}.doc-sign-name{font-size:14px}.doc-sign-role{font-size:12.5px;color:var(--ink-2)}@page{size:A4;margin:16mm 18mm}@media print{body{background:#fff}body>:not(.doc-overlay){display:none!important}.doc-overlay{position:static;background:none;display:block}.doc-actions,.demo-badge{display:none}.doc-scroll{overflow:visible;padding:0}.doc-sheet{position:static;width:100%;max-width:none;padding:0;box-shadow:none;border-radius:0}.doc-editavel,.doc-so-ecra{display:none}.decl{min-height:262mm}.decl-titulo{margin:60px 0 44px}.decl-marca{width:42%;margin:12px auto 22px}.decl-traco{margin-top:44px}.decl-rodape{break-inside:avoid}.doc-imprimir{display:block}}.mic{margin-top:8px;font-size:12px;color:var(--sage-deep);border:1px solid var(--sage);border-radius:999px;padding:6px 13px;background:var(--card)}.mic.on{color:#fff;background:var(--danger);border-color:var(--danger);animation:mic-pulse 1.2s infinite}.mic-round{width:40px;height:40px;min-width:40px;border-radius:50%;border:1px solid var(--line);background:var(--card);font-size:15px;display:flex;align-items:center;justify-content:center}.mic-round.on{background:var(--danger);border-color:var(--danger);animation:mic-pulse 1.2s infinite}@keyframes mic-pulse{50%{opacity:.55}}.demo-hint{font-size:12px;color:var(--ink-3);line-height:1.6;margin-top:18px}.demo-badge{position:fixed;right:16px;bottom:16px;z-index:20;pointer-events:none;background:var(--ink);color:var(--paper);opacity:.85;font-size:11px;letter-spacing:.6px;padding:7px 13px;border-radius:999px}@media (max-width: 980px){.side{width:260px;min-width:260px}}@media (max-width: 1100px){.panel-toggle{display:inline-block}.panel{position:fixed;top:0;right:0;bottom:0;z-index:30;width:min(400px,94vw);min-width:0;transform:translate(105%);transition:transform .22s ease;box-shadow:-18px 0 44px #2b2a2838}.panel.open{transform:none}.panel-close{display:flex;align-items:center;justify-content:center;position:absolute;top:10px;right:12px;z-index:1;width:32px;height:32px;border-radius:50%;font-size:14px;color:var(--ink-3)}.panel-close:hover{color:var(--danger)}.panel .tabs{padding-right:48px}.panel-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b2a2847;z-index:25}}@media (max-width: 720px){.side{width:100%;min-width:0;border-right:none}.layout.has-sel .side{display:none}.layout:not(.has-sel) .main{display:none}.side-nav .nav-inicio{display:none}.pat .pv{max-width:56vw}.back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;border-radius:50%;font-size:22px;line-height:1;color:var(--sage-deep);background:var(--paper)}.main-head{padding:10px 14px;gap:10px}.thread{padding:16px 14px}.caderno-col{padding:14px 14px 12px}.b{max-width:84%}.composer{padding:10px 12px}input,textarea,select,.composer textarea{font-size:16px}.login-box{width:100%;max-width:380px}.modal{width:calc(100vw - 28px);max-width:420px;max-height:90vh;overflow-y:auto}.demo-badge{display:none}.doc-actions{padding:12px 14px;gap:12px}.doc-field input,.doc-field select{min-width:0;width:100%}.doc-actions-end{margin-left:0;width:100%}.doc-scroll{padding:14px 10px 40px}.doc-sheet{padding:30px 22px 26px}.doc-title{font-size:21px;margin-bottom:24px}.doc-id div{flex-direction:column;gap:0}.doc-id span{min-width:0}}.anexo{font-size:12px;color:var(--sage-deep);white-space:nowrap;cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:6px 12px}.anexo:hover{border-color:var(--sage)}.anexo input{display:none}.recibo-dados{flex:1;min-width:0}.copiaveis{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}.copiavel{font-size:11.5px;color:var(--ink-2);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:4px 9px}.copiavel:hover,.copiavel.copiado{border-color:var(--sage);color:var(--sage-deep)}.copiavel .cr{font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-3);margin-right:6px}.copiaveis .meio{font-size:11.5px;color:var(--ink-3)}.thread-erro{margin:0 16px 8px}
