/* Consultório — primeira página, sem dependências externas. */
:root{--primary:#137b98;--primary-dark:#08617c;--ink:#243c4c;--muted:#73838f;--line:#e6edf0;--canvas:#f4f7f9;--radius:12px;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary,select{cursor:pointer}button:disabled{cursor:not-allowed}button:disabled:not(.nav-item){opacity:.55}button{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}:focus-visible{outline:3px solid #e3b750;outline-offset:4px}.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:12px;z-index:20}.skip-link:focus{top:10px}
.topbar{background:#fff;min-height:84px;padding:0 4%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:44px}.brand{font-size:27px;font-weight:750;letter-spacing:-1.2px;display:flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:var(--primary);border-radius:10px;box-shadow:0 3px 8px #137b9820}.brand-mark svg{width:24px;height:24px;stroke-width:2.7}.brand-dot{color:var(--primary);margin-left:-7px}.topbar nav{display:flex;gap:6px;align-self:stretch}.nav-item{display:flex;align-items:center;gap:8px;padding:0 13px;border:0;background:none;color:#74818c;font-weight:550;position:relative;font-size:14px}.nav-item.active{color:var(--primary)}.nav-item.active:after{content:"";height:3px;position:absolute;bottom:0;left:12px;right:12px;background:var(--primary);border-radius:4px 4px 0 0}.account{margin-left:auto;display:flex;align-items:center;gap:12px}.avatar,.patient-avatar,.tiny-avatar{display:grid;place-items:center;flex-shrink:0}.avatar{width:38px;height:38px;background:#e8f2f5;color:#3b788d;border-radius:50%;font-weight:650;font-size:13px}.account-name strong,.account-name small{display:block;white-space:nowrap}.account-name strong{font-size:13px;font-weight:600}.account-name small{font-size:12px;color:var(--muted)}.account-divider{height:28px;border-left:1px solid var(--line);margin:0 4px}.popover{position:relative}.popover summary{display:flex;list-style:none;padding:7px;color:#7b8b96}.popover summary::-webkit-details-marker{display:none}.popover-content{position:absolute;z-index:5;right:0;top:40px;width:250px;padding:20px;border:1px solid var(--line);background:white;border-radius:10px;box-shadow:0 10px 35px #243c4c15}.popover-content p{color:var(--muted);margin-bottom:0}
main{max-width:1390px;margin:auto;padding:34px 4% 18px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px;gap:20px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:var(--primary);margin:0 0 6px}h1{font-size:29px;line-height:1.25;letter-spacing:-.8px;font-weight:650;margin:0 0 8px}.page-heading p:last-child{margin:0;color:var(--muted);font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:white;border:1px solid #dce5e9;border-radius:7px;padding:11px 17px;font-weight:600;white-space:nowrap;min-height:43px}.primary{background:var(--primary);border-color:var(--primary);color:white;box-shadow:0 3px 5px #137b9810}.primary:hover:not(:disabled){background:var(--primary-dark)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px}.stat{display:flex;align-items:center;gap:15px;padding:19px 21px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.stat-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px}.stat-icon svg{width:22px;height:22px}.blue{background:#eaf4fa;color:#4682a6}.green{background:#e9f7f1;color:#40a17d}.purple{background:#f0edfa;color:#8e79be}.neutral{background:#eff3f5;color:#8494a0}.stat div>span{font-size:13px;color:var(--muted)}.stat strong{display:block;font-size:26px;line-height:1.4;font-weight:650}.stat strong small{font-size:12px;font-weight:400;color:#94a0a9;margin-left:5px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:24px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius)}.agenda{overflow:hidden;scroll-margin-top:20px}.agenda-toolbar{padding:22px 23px;display:flex;align-items:center;justify-content:space-between;gap:15px}.date-heading{display:flex;gap:12px;align-items:center}.day-number{font-size:26px;font-weight:600;color:var(--primary);background:#eef6f9;width:51px;height:54px;display:grid;place-items:center;border-radius:8px}.date-heading h2{font-size:17px;margin:0 0 3px;font-weight:650}.date-heading div>span{font-size:12px;color:var(--muted)}.today-tag{color:var(--primary);font-size:11px;margin-left:6px;background:#eef7fa;border-radius:4px;padding:2px 5px}.date-controls{display:flex;gap:5px;align-items:center}.icon-button{width:30px;height:32px;padding:5px;border:0;background:transparent;display:inline-grid;place-items:center}.icon-button svg{width:16px;height:16px}.rotate{transform:rotate(180deg)}.compact{padding:5px 11px;min-height:32px;font-size:12px}.view-toggle{display:flex;align-items:center;background:#f3f6f8;border-radius:6px;padding:3px;margin-left:11px}.view-toggle>*{padding:5px 11px;font-size:12px;border:0;background:none}.view-toggle .selected{background:white;color:var(--primary);border-radius:4px;box-shadow:0 1px 4px #253e4e10;font-weight:600}.schedule-label{background:#f9fbfc;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:80px 1fr;align-items:center;padding:11px 22px;gap:12px}.schedule-label>span:first-child{font-size:10px;letter-spacing:1px;color:#8d9aa4}.schedule-label>span:last-child{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600}.schedule-label small{margin-left:auto;font-size:12px;color:#8a99a3;font-weight:400}.tiny-avatar{width:25px;height:25px;background:#e8f0f5;color:#668a9f;border-radius:50%;font-size:9px}.schedule{padding:8px 22px 12px}.time-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;min-height:76px;align-items:center}.time-row>time{font-size:13px;font-weight:550;color:#6d8190;align-self:start;padding-top:22px}.appointment,.free-slot{min-height:64px;border-radius:7px;display:flex;align-items:center;padding:10px 13px;gap:12px}.appointment{border-left:3px solid var(--status);background:var(--surface)}.completed{--status:#9981c1;--surface:#f5f2fa;--badge:#ece5f6;--text:#78619f}.confirmed{--status:#45ad92;--surface:#eff8f5;--badge:#dcf1e9;--text:#28856e}.scheduled{--status:#4c98cf;--surface:#eff6fc;--badge:#deedf9;--text:#3f80af}.canceled{--status:#adb7bf;--surface:#f5f6f7;--badge:#e9edf0;--text:#78858f}.missed{--status:#d8967e;--surface:#fcf5f1;--badge:#f8e8de;--text:#b17659}.patient-avatar{width:34px;height:34px;border-radius:50%;background:var(--badge);color:var(--text);font-size:11px;font-weight:600}.appointment-info{min-width:0}.appointment-info strong{font-size:13px;font-weight:600;display:block}.appointment-info>span{font-size:11px;color:#8a97a0}.badge{margin-left:auto;padding:3px 9px;background:var(--badge);color:var(--text);font-size:11px;font-weight:600;border-radius:5px;white-space:nowrap}.duration{font-size:11px;color:#8b9ba5;white-space:nowrap;margin-left:3px}.free-slot{border:1px dashed #d9e6ec;color:#85a1af;background:#fdfefe}.free-slot svg{width:18px;height:18px;color:#7aa8b9}.free-slot strong{font-weight:400;font-size:12px}.free-slot>span{font-size:11px;margin-left:auto;color:var(--primary);opacity:0;transition:opacity .15s}.free-slot:hover,.free-slot:focus-visible{background:#f0f8fb;border-color:#90bfce}.free-slot:hover>span,.free-slot:focus-visible>span{opacity:1}.break-row{display:grid;grid-template-columns:80px 1fr;gap:12px;padding:9px 0}.break-row>div{display:flex;justify-content:center;align-items:center;gap:7px;color:#9ca6ae;font-size:11px}.break-row svg{width:13px;height:13px}.break-row>div:before,.break-row>div:after{content:"";flex:1;height:1px;background:#edf1f3}.break-row span{font-size:10px}.agenda-footer{padding:15px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#8b99a3;font-size:11px}.separator{padding:0 7px;color:#bdc8ce}
.sidebar{display:flex;flex-direction:column;gap:18px}.professional-panel{padding:20px}.professional-panel label{display:block;font-weight:600;font-size:13px;margin-bottom:10px}select,input,textarea{border:1px solid #dce5e9;background:white;border-radius:6px;padding:10px 11px;color:var(--ink);width:100%;min-height:41px}select{font-size:13px}.professional-meta{display:flex;align-items:center;gap:6px;font-size:11px;color:#7d8f9c;margin-top:11px}.professional-meta>span:last-child{margin-left:auto;font-size:10px;color:#9ba8b1}.dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:var(--status,var(--primary));flex-shrink:0}.calendar-panel{padding:17px 20px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.calendar-heading h2{margin:0;font-size:14px;font-weight:650}.calendar-heading h2 span{color:#8d9aa3;font-weight:400;margin-left:3px}.calendar-heading>div{display:flex}.calendar-heading .icon-button{width:24px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px 0;text-align:center}.calendar-grid>span{height:29px;width:29px;display:grid;place-items:center;font-size:12px;border-radius:7px;justify-self:center;color:#70828f}.calendar-grid .weekday{font-size:10px;color:#a0adb5;height:24px}.calendar-grid .outside{color:#c5cdd3}.calendar-grid .chosen{color:white;background:var(--primary);box-shadow:0 3px 6px #137b9825}.calendar-note{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;font-size:11px;color:#8b9aa5;display:flex;gap:8px;align-items:center}.legend-panel{padding:20px}.legend-panel h2{font-size:13px;margin:0 0 16px;font-weight:600}.legend{list-style:none;margin:0;padding:0;display:grid;gap:12px}.legend li{display:flex;align-items:center;gap:10px;font-size:12px;color:#7d8e9b}.legend li>span:last-child{margin-left:auto;font-size:11px;color:#9ba9b3}.free{background:white;border:1px solid #a3b7c2}.helper{padding:6px 20px;color:#7795a5}.helper-icon{display:block;margin-bottom:10px;color:#7fa7b9}.helper strong{display:block;font-size:13px;line-height:1.6;font-weight:550;max-width:210px}.helper p{font-size:12px;line-height:1.7;margin-top:6px;color:#97a6af}.page-footer{display:flex;justify-content:space-between;align-items:center;padding:22px 0 0;font-size:11px;color:#a3afb8}.page-footer>span:first-child{font-weight:700;font-size:15px;letter-spacing:-.5px}.page-footer .brand-dot{margin-left:0}.footer-caption{font-size:11px;font-weight:400;letter-spacing:0;margin-left:15px}
.modal{display:none;position:fixed;inset:0;z-index:10;padding:30px 20px;overflow-y:auto;overscroll-behavior:contain}.modal:target{display:flex;align-items:flex-start;justify-content:center}.modal-backdrop{position:fixed;inset:0;background:#142c42a6;backdrop-filter:blur(4px)}.modal-card{position:relative;max-width:620px;width:100%;background:white;border-radius:16px;padding:27px;box-shadow:0 25px 90px #112b4b44;margin:auto}.modal-heading{display:flex;align-items:center;justify-content:space-between}.modal-heading h2{font-size:24px;margin:0}.close{font-size:30px;color:#8c9da7;padding:0 10px}.prototype-note{padding:11px;background:#eff6fa;color:#60869c;border-radius:6px;font-size:13px;margin:20px 0}.modal form>label,.form-grid label{font-size:13px;font-weight:550;display:block}.search-input{position:relative;margin-top:6px}.search-input svg{position:absolute;left:12px;top:12px;color:#91a2ae}.search-input input{padding-left:40px}.new-patient{margin:13px 0 20px}.new-patient summary{color:var(--primary);font-size:13px;cursor:pointer;list-style:none}.new-patient[open]{padding-bottom:20px;border-bottom:1px solid var(--line)}.new-patient .form-grid{margin-top:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid input,.form-grid select,.form-grid textarea{margin-top:6px;font-weight:400}.full{grid-column:1/-1}textarea{resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
@media(min-width:1600px){main{padding-left:0;padding-right:0}.topbar{padding-left:max(4%,calc((100% - 1390px)/2));padding-right:max(4%,calc((100% - 1390px)/2))}}
@media(max-width:1200px){.topbar{gap:25px;padding:0 3%}.nav-item{padding:0 8px;font-size:13px}.nav-item svg{display:none}.account-name{display:none}main{padding:28px 3%}.stat{padding:16px 14px;gap:10px}.stat strong small{display:none}.workspace{gap:18px;grid-template-columns:minmax(0,1fr) 265px}.agenda-toolbar{padding:18px}.schedule{padding:8px 16px}.time-row,.schedule-label{grid-template-columns:54px minmax(0,1fr)}.break-row{grid-template-columns:54px 1fr}.duration{display:none}.appointment{gap:9px}.view-toggle{margin-left:5px}.date-controls{gap:0}.date-heading div>span{font-size:11px}}
@media(max-width:940px){.workspace{grid-template-columns:minmax(0,1fr) 235px}.agenda-toolbar{align-items:flex-start;flex-direction:column}.date-controls{width:100%}.view-toggle{margin-left:auto}.stat-icon{width:34px;height:38px}.stat div>span{font-size:11px}.account-divider{display:none}.topbar{gap:15px}.brand{font-size:23px}.sidebar .panel{padding:16px}.calendar-grid>span{width:25px}.appointment-info strong{font-size:12px}.patient-avatar{display:none}.badge{font-size:10px;padding:3px 6px}.schedule-label small{display:none}.agenda-footer>span:last-child{display:none}}
@media(max-width:720px){.topbar{flex-wrap:wrap;min-height:110px;padding:14px 5% 0;gap:12px}.topbar nav{order:3;flex-basis:100%;justify-content:space-between;min-height:43px;gap:0;overflow-x:auto}.nav-item{font-size:12px;padding:0 6px}.account{gap:8px}.brand{font-size:25px}.account .avatar{width:31px;height:31px}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:17px;margin-bottom:20px}h1{font-size:26px}.page-heading p:last-child{max-width:290px}.page-heading .button{font-size:13px;padding:9px 13px;min-height:40px}main{padding:26px 5% 18px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.stat{padding:13px;gap:13px}.stat strong{font-size:24px}.stat div>span{font-size:12px}.workspace{display:flex;flex-direction:column}.agenda{width:100%}.sidebar{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px}.professional-panel{grid-column:1/-1}.helper{display:none}.calendar-panel,.legend-panel{height:100%}.time-row{min-height:78px;grid-template-columns:42px minmax(0,1fr);gap:8px}.schedule{padding:8px 12px}.appointment,.free-slot{padding:10px;gap:7px}.appointment-info>span{font-size:10px}.badge{font-size:10px}.schedule-label{padding:10px 12px;grid-template-columns:42px 1fr;gap:8px}.schedule-label>span:first-child{font-size:8px;letter-spacing:.2px}.schedule-label>span:last-child{font-size:11px}.break-row{grid-template-columns:42px 1fr;gap:8px}.free-slot>span{display:none}.free-slot strong{font-size:11px}.footer-caption{display:none}.page-footer{font-size:10px}.calendar-grid>span{width:23px;height:27px;font-size:11px}.calendar-grid{gap:4px 0}.sidebar .panel{padding:13px}.calendar-heading h2{font-size:12px}.calendar-heading .icon-button{width:20px}.calendar-note{font-size:10px}.legend-panel h2{font-size:12px}.legend li{font-size:11px}.modal{padding:16px 10px}.modal-card{padding:22px 17px}.form-grid{gap:13px}.form-actions{flex-wrap:wrap}}
@media(max-width:380px){.sidebar{grid-template-columns:1fr}.badge{padding:2px 4px;font-size:9px}.appointment-info strong{font-size:11px}.appointment-info>span{font-size:9px}.stat{gap:8px}.stat div>span{font-size:11px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Legibilidade dos dados de atendimento em todas as telas. */
.appointment-info strong,.badge,.time-row>time,.free-slot strong,.legend li,.professional-panel label,.modal form>label,.form-grid label{font-size:14px}
.appointment-info>span,.duration,.calendar-grid>span,.calendar-note,.stat div>span,.agenda-footer,.schedule-label>span:last-child,.professional-meta,.helper p,.page-footer,.footer-caption{font-size:12px}
.appointment-info strong{overflow-wrap:anywhere}.appointment-info>span{display:block}.badge{font-weight:500}.appointment{min-height:68px}.time-row{min-height:80px}
@media(max-width:720px){.appointment{flex-wrap:wrap;gap:4px 8px}.appointment-info{flex:1 1 140px}.badge{font-size:12px}.time-row{min-height:88px}.appointment-info strong{font-size:14px}.calendar-grid>span{font-size:12px}.sidebar{grid-template-columns:1fr}.legend{grid-template-columns:1fr 1fr;column-gap:22px}.calendar-grid>span{height:32px;width:32px}.calendar-note{font-size:12px}}
/* Versão compacta: título e resumo na mesma linha, agenda com menos altura. */
:root{--radius:8px;--canvas:#fff}
.topbar{min-height:64px;gap:28px}.brand{font-size:23px}.brand-mark{width:26px;height:26px;border-radius:7px}.brand-mark svg{width:18px;height:18px}.nav-item svg,.popover svg{width:15px;height:15px}.avatar{width:30px;height:30px;font-size:11px}
main{max-width:1200px;padding-top:42px}.overview{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;margin-bottom:14px;align-items:stretch}.page-heading{margin:0;gap:0;padding:8px 0}.page-heading h1{font-size:21px;letter-spacing:-.5px;margin-bottom:4px}.page-heading p:last-child{font-size:12px}.eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:4px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.stat{padding:10px;gap:8px;border-radius:6px}.stat-icon{width:27px;height:27px;border-radius:6px;flex-shrink:0}.stat-icon svg{width:14px;height:14px}.stat strong{font-size:20px;line-height:1.25}.stat strong small{display:none}.stat div>span{font-size:12px}.red{background:#fdecec;color:#c95454}
.workspace{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.agenda-toolbar{padding:12px 16px;flex-direction:row;align-items:center}.day-number{width:36px;height:40px;font-size:21px;border-radius:5px}.date-heading{gap:9px}.date-heading h2{font-size:14px}.date-controls{width:auto}.schedule-label{grid-template-columns:52px minmax(0,1fr);padding:7px 14px;gap:8px}.tiny-avatar{width:19px;height:19px;font-size:8px}.schedule{padding:4px 14px 6px}.time-row{grid-template-columns:52px minmax(0,1fr);gap:8px;min-height:56px}.time-row>time{align-self:center;padding-top:0;font-size:12px}.appointment,.free-slot{min-height:48px;padding:5px 10px;gap:8px;border-radius:5px}.patient-avatar{width:25px;height:25px;font-size:9px}.appointment-info strong{font-size:14px;line-height:1.35}.appointment-info>span{font-size:12px;line-height:1.35}.badge{font-size:12px;padding:2px 6px}.duration{font-size:12px}.free-slot svg{width:13px;height:13px}.free-slot strong{font-size:13px}.break-row{grid-template-columns:52px 1fr;padding:5px 0;gap:8px}.agenda-footer{padding:9px 14px;font-size:12px}.normal{--status:#aab5bf;--surface:#f5f7f9;--badge:#e9eef2;--text:#617586}.canceled{--status:#d56c6c;--surface:#fff3f3;--badge:#fbe2e2;--text:#b44343}.sidebar{gap:14px}.professional-panel{padding:17px}.page-footer{padding-top:16px}
@media(max-width:1050px){.overview{grid-template-columns:220px minmax(0,1fr)}.stat{gap:6px;padding:8px}.stat-icon{width:22px;height:22px}.workspace{grid-template-columns:minmax(0,1fr) 245px}.agenda-toolbar{flex-wrap:wrap}.topbar{gap:18px}.stat div>span{font-size:12px}}
@media(max-width:800px){.overview{grid-template-columns:1fr}.page-heading{padding:0 0 4px}.workspace{grid-template-columns:minmax(0,1fr) 220px}.stats{gap:8px}.date-controls{flex-wrap:wrap}.duration{display:none}.calendar-grid>span{width:24px}.agenda-footer>span:last-child{display:none}}
@media(max-width:720px){.topbar{min-height:98px;padding-top:12px;gap:8px}.topbar nav{min-height:38px}.topbar .brand{font-size:23px}main{padding:23px 4% 16px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:9px 12px}.stat-icon{width:25px;height:25px}.workspace{display:flex}.appointment{flex-wrap:wrap;gap:3px 6px}.appointment-info{flex:1 1 140px}.time-row{min-height:65px}.appointment,.free-slot{min-height:57px}.time-row,.schedule-label,.break-row{grid-template-columns:39px minmax(0,1fr)}.schedule{padding-left:10px;padding-right:10px}.agenda-toolbar{gap:8px;padding:11px}.date-heading{gap:7px}.date-controls{gap:0}.view-toggle{margin-left:4px}.view-toggle>*{padding:5px 7px}.sidebar{display:grid;grid-template-columns:1fr}.calendar-grid>span{width:30px}.page-footer{gap:12px;flex-wrap:wrap}.badge{font-size:12px}}
/* Resumo discreto e sequência contínua de horários. */
.stats .stat-icon{width:16px;height:16px;min-width:16px;border-radius:0;background:transparent;box-shadow:none}
.stats .stat-icon svg{width:12px;height:12px;stroke-width:1.5}
.stats .stat{gap:7px;padding:8px 10px}
.stats .stat strong{font-size:18px}
.closing-row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:center;min-height:39px;color:var(--muted);font-size:12px}
.closing-row>span{border-top:1px solid var(--line);padding:10px;text-align:center}
.closing-row time{font-weight:550}
@media(max-width:720px){.closing-row{grid-template-columns:39px minmax(0,1fr)}.agenda-footer{flex-wrap:wrap;gap:5px}}
/* Contraste e cor para organizar a agenda visualmente. */
:root{--primary:#147f9b;--primary-dark:#0c6078;--canvas:#f0f5f8;--line:#dfe9ee}
.topbar{background:#126b83;border-bottom:1px solid #0f5e74;box-shadow:0 2px 8px #17465a12}
.topbar .brand,.topbar .brand-dot{color:#fff}
.brand-mark{background:#ffffff22;box-shadow:none}
.nav-item{color:#d3e8ee}.nav-item.active{color:white;background:#ffffff0d}
.nav-item.active:after{background:#84d8e6}
.topbar .popover summary{color:#e2f3f7}
.topbar .account-divider{border-color:#ffffff30}
.topbar .avatar{background:#e3f2f6;color:#17677d}
.account-name strong{color:white}.account-name small{color:#cee4eb}
.panel{box-shadow:0 2px 7px #254d6510}
.professional-panel{background:#eaf4f8;border-color:#cbdfe8}
.professional-panel label{color:#22677e}
.professional-panel select{border-color:#a9ccd9;background:#fafdff;color:#24586d}
.professional-meta,.professional-meta>span:last-child{color:#547d8f}
.stat:has(.green){background:#eaf7f0;border-color:#c8e6d6}
.stat:has(.green) div>span,.stat:has(.green) strong,.stat-icon.green{color:#28714f}
.stat:has(.red){background:#fff0ef;border-color:#f0d0ce}
.stat:has(.red) div>span,.stat:has(.red) strong,.stat-icon.red{color:#a54444}
.stat:has(use[href="#calendar"]){background:#eaf3fc;border-color:#cadfee}
.stat:has(use[href="#calendar"]) div>span,.stat:has(use[href="#calendar"]) strong,.stat:has(use[href="#calendar"]) .stat-icon{color:#346c9b}
.stat:has(use[href="#clock"]){background:#fff;border-color:#dce7ec}
.stat:has(use[href="#clock"]) div>span{color:#637f8f}
.agenda-toolbar{background:#fbfdfe}
.schedule-label{background:#eaf3f7;border-color:#dbe8ef}
.schedule-label>span:first-child,.schedule-label small{color:#617c8c}
.free-slot{background:#f0f7fb;border-color:#c0d9e5;color:#537c92}
.free-slot svg{color:#4588a5}
.free-slot:hover,.free-slot:focus-visible{background:#e2f1f8;border-color:#6eabc3}
.normal{--status:#639bc2;--surface:#edf4fb;--badge:#dceaf7;--text:#396e98}
.appointment-info>span{color:#657c8c}
.calendar-grid>span{color:#587386}.calendar-grid .weekday{color:#728b9a}
.calendar-grid .outside{color:#a8b9c3}.calendar-grid .chosen{color:white}
.calendar-note{color:#587b8d}.page-footer{color:#738b99}
/* Resumos compactos, alinhados somente à coluna da agenda. */
.overview{width:calc(100% - 298px);grid-template-columns:225px minmax(0,1fr);gap:12px;align-items:end;margin-bottom:10px}
.overview .page-heading{padding:0 0 4px}
.overview .stats{gap:6px;align-items:end}
.overview .stat{min-height:52px;padding:7px 8px;gap:5px;border-radius:4px;box-shadow:none}
.overview .stat-icon{width:12px;height:12px;min-width:12px}
.overview .stat-icon svg{width:10px;height:10px}
.overview .stat div>span{font-size:11px;line-height:1.2;display:block}
.overview .stat strong{font-size:15px;line-height:1.25;margin-top:2px}
@media(max-width:1200px){.overview{grid-template-columns:190px minmax(0,1fr)}.overview .page-heading h1{font-size:19px}.overview .page-heading p:last-child{font-size:11px}}
@media(max-width:1050px){.overview{width:calc(100% - 263px);grid-template-columns:1fr}.overview .page-heading{padding-bottom:4px}}
@media(max-width:800px){.overview{width:calc(100% - 238px)}}
@media(max-width:720px){.overview{width:100%;grid-template-columns:1fr}.overview .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.overview .stat{padding:6px 4px;gap:3px;min-height:48px}.overview .stat div>span{font-size:10px}.overview .stat-icon{min-width:10px;width:10px}.overview .page-heading h1{font-size:21px}}
@media(max-width:380px){.overview .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Disposição da referência: resumo e agenda à esquerda, painel lateral no topo. */
main{max-width:1120px;display:grid;grid-template-columns:minmax(0,1fr) 260px;column-gap:18px;align-items:start;padding-top:48px}
.workspace{display:contents}
.overview{grid-column:1;grid-row:1;width:100%;grid-template-columns:155px minmax(0,1fr) 106px;gap:8px;margin-bottom:10px;align-items:center}
.overview .page-heading{padding:0}.overview .page-heading h1{font-size:16px;letter-spacing:-.3px;margin-bottom:3px}.overview .page-heading p:last-child{font-size:10px;line-height:1.3}
.overview .stats{gap:5px}.overview .stat{min-height:44px;padding:5px;gap:4px}.overview .stat div>span{font-size:10px}.overview .stat strong{font-size:13px}
.daily-earnings{height:40px;border:1px solid #52616b;border-radius:4px;background:white;color:#344955;font-size:12px;padding:5px 8px}
.daily-earnings:disabled{opacity:1;cursor:not-allowed}
.agenda{grid-column:1;grid-row:2}.sidebar{grid-column:2;grid-row:1 / span 2;width:100%}.page-footer{grid-column:1 / -1}
@media(max-width:1100px){main{grid-template-columns:minmax(0,1fr) 235px;column-gap:14px}.overview{grid-template-columns:1fr 100px}.overview .page-heading{grid-column:1 / -1}.overview .stats{grid-column:1}.daily-earnings{grid-column:2}}
@media(max-width:720px){main{display:block;padding-top:24px}.overview{display:grid;width:100%;grid-template-columns:1fr 92px}.overview .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.overview .page-heading h1{font-size:19px}.overview .stat-icon{display:none}.overview .stat{padding:5px 3px}.overview .stat div>span{font-size:9px}.daily-earnings{font-size:11px}.sidebar{margin-top:16px}.page-footer{display:flex}}
/* Agenda interativa e indicadores com mais espaço. */
main{max-width:1400px;grid-template-columns:minmax(0,1fr) 275px}.overview{grid-template-columns:1fr 155px}.overview .page-heading{grid-column:1/-1;margin-bottom:8px}.overview .page-heading h1{font-size:24px}.overview .page-heading p:last-child{font-size:13px}.overview .stat{min-height:66px;padding:10px 12px;gap:8px;cursor:pointer}.overview .stat div>span{font-size:13px}.overview .stat strong{font-size:22px}.overview .stat-icon svg{width:13px;height:13px}.daily-earnings{height:66px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;padding:9px 14px;background:#126b83;border:1px solid #126b83;color:white;box-shadow:0 3px 10px #126b8320}.daily-earnings span{font-size:12px}.daily-earnings strong{font-size:20px}.daily-earnings small{font-size:11px;color:#c6e6ee}.daily-earnings:hover{background:#0c5c73}.time-row{min-height:70px}.appointment,.free-slot{min-height:61px;width:100%;text-align:left}.appointment{border-top:0;border-right:0;border-bottom:0}.appointment-info strong{font-size:15px}.badge{font-size:13px}.slot-content{display:grid;gap:5px;padding:4px 0}.calendar-grid button{border:0;background:none;width:29px;height:29px;border-radius:6px;color:#587386}.calendar-grid button:hover{background:#e2f0f6}.calendar-grid .chosen{background:var(--primary);color:white}.calendar-grid .outside{color:#a0b2bd}.week-strip{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0}.week-strip button,.filter-reset{border:1px solid #d2e3ec;border-radius:5px;background:#f0f7fb;color:#316d85;padding:7px;font-size:12px}.week-strip .selected{background:var(--primary);color:white}.filter-reset{margin:5px 0}.editor{border:0;border-radius:12px;max-width:600px;width:calc(100% - 32px);padding:25px;color:var(--ink);max-height:90vh;overflow:auto;box-shadow:0 20px 80px #193f4e40}.editor::backdrop{background:#17374690;backdrop-filter:blur(3px)}.editor .close{border:0;background:transparent;cursor:pointer}.editor h2{margin:0;font-size:23px}.paid-field{display:flex!important;align-items:center;gap:8px}.paid-field input{width:18px;min-height:18px}.notice{position:fixed;bottom:16px;left:16px;max-width:420px;padding:14px;background:#fff4d8;color:#5a431d;border:1px solid #d9c28f;border-radius:8px;z-index:30}#form-error{color:#ae3939}.view-toggle .selected{background:white}.stat:hover{outline:1px solid #8cb5c7}
@media(max-width:1100px){main{grid-template-columns:minmax(0,1fr) 235px}.overview{grid-template-columns:1fr 135px}.overview .stat{padding:8px;gap:4px}.overview .stat div>span{font-size:12px}.overview .stat-icon{display:none}}
@media(max-width:720px){main{display:block}.overview{grid-template-columns:1fr}.overview .stats{grid-column:1;grid-template-columns:repeat(2,1fr)}.daily-earnings{grid-column:1;width:100%;margin-top:5px}.overview .stat div>span{font-size:13px}.overview .stat strong{font-size:22px}.time-row{min-height:74px}.appointment{flex-wrap:wrap}.editor{padding:18px}.editor .form-grid{grid-template-columns:1fr}.editor .full{grid-column:1}.editor .form-actions{justify-content:stretch}.editor .button{flex:1}}
/* O valor recebido aparece apenas ao abrir o resumo. */
.daily-earnings{align-items:center;justify-content:center}
.daily-earnings span{font-size:14px;font-weight:600}
.month-picker-toggle{border:0;background:transparent;color:var(--ink);font:inherit;font-weight:650;text-align:left;padding:5px 0;text-decoration:underline;text-decoration-color:#b4d2df;text-underline-offset:5px}
.month-picker-toggle:hover{color:var(--primary)}
.calendar-grid.month-selection{grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 0}
.calendar-grid.month-selection button{width:100%;height:43px;border:1px solid #dce9f0;text-transform:capitalize}
#professional-error{color:#ae3939}
.schedule-label>span:last-child>span{overflow-wrap:anywhere}
[hidden]{display:none!important}.module-page{display:block;max-width:1280px;padding-top:34px}.module-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.module-heading h1{font-size:28px}.module-heading p{color:var(--muted);margin:6px 0}.module-filters{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:24px}.module-filters label{display:grid;gap:6px;min-width:240px;font-size:13px;color:#526d7d}.module-filters input,.module-filters select{min-height:44px}.patients-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:20px}.patient-list{padding:8px;align-self:start}.patient-choice{display:flex;flex-direction:column;gap:5px;width:100%;padding:15px;text-align:left;border:0;border-bottom:1px solid var(--line);background:white;border-radius:6px}.patient-choice span{font-size:12px;color:var(--muted)}.patient-choice.selected,.patient-choice:hover{background:#eaf5fa;color:var(--primary)}.patient-detail{padding:24px}.patient-detail h2{margin-top:0}.action-row{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.action-row .button{font-size:12px;min-height:34px;padding:6px 10px}.visit{border:1px solid var(--line);border-left:3px solid #5d9cb5;border-radius:7px;padding:15px;margin-top:13px}.visit>span{display:block;color:var(--muted);font-size:13px;margin:4px 0}.visit .action-row{margin-bottom:0}.professionals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.professional-card{padding:23px}.professional-card h2{font-size:19px;overflow-wrap:anywhere}.professional-card p{color:var(--muted)}.professional-monogram{display:grid;place-items:center;background:#e3f2f7;color:#26728b;border-radius:12px;width:45px;height:45px;font-weight:650}.finance-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric{padding:22px}.metric span{color:var(--muted)}.metric strong{display:block;font-size:26px;margin-top:8px}.metric:last-child{background:#126b83;color:white}.metric:last-child span{color:#d4eaf1}.muted{color:var(--muted);font-size:13px}.finance-controls{display:flex;align-items:end;justify-content:space-between;padding:20px;margin:22px 0;gap:16px}.inline-form{display:flex;gap:12px;align-items:end}.inline-form label{display:grid;gap:6px}.module-list{padding:24px;margin-top:20px}.module-list h2{font-size:19px;margin-top:0}.list-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.list-row>:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.list-row p{font-size:12px;color:var(--muted);margin:3px 0}.list-row .button{font-size:12px;padding:6px 10px;min-height:34px}.upload-form{display:flex;align-items:end;gap:15px;margin-top:20px}.upload-form label{flex:1;display:grid;gap:7px}.empty-state{color:#8398a4;padding:22px;text-align:center}.module-dialog>p{color:var(--muted)}.module-dialog .form-grid{margin-top:22px}.area-error{color:#ab3636}.area-error:empty{display:none}.print-document{display:none}.notice{cursor:pointer}.module-dialog label textarea{display:block;width:100%;margin-top:6px}.module-page label{font-size:14px}.module-dialog .button{margin-top:8px}
@media(max-width:950px){.professionals-grid{grid-template-columns:repeat(2,1fr)}.finance-metrics{grid-template-columns:repeat(2,1fr)}.patients-layout{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:720px){.module-heading{align-items:start;flex-direction:column}.patients-layout,.professionals-grid{grid-template-columns:1fr}.module-filters{flex-direction:column}.module-filters label{min-width:0}.patient-list{max-height:260px;overflow:auto}.finance-controls,.inline-form,.upload-form{align-items:stretch;flex-direction:column}.metric{padding:15px}.metric strong{font-size:21px}.list-row{flex-wrap:wrap}.list-row>:first-child{flex-basis:100%}.module-dialog .form-grid{grid-template-columns:1fr}.patient-detail,.module-list{padding:16px}}
@media print{body>*{display:none!important}body>.print-document{display:block!important;position:absolute;inset:0;background:white;color:black;padding:24mm;font:12pt Georgia,serif}body>.print-document h1{text-align:center;font-size:20pt;margin-bottom:25mm}body>.print-document p{white-space:pre-wrap;line-height:1.9;margin-bottom:15mm}dialog{display:none!important}body{background:white}}
.repeat-option{display:flex!important;align-items:center;gap:10px;padding:14px;background:#edf7f7;border:1px solid #bcdedc;border-radius:7px;color:#246e70;cursor:pointer}
.repeat-option input{width:18px;min-height:18px;margin:0;flex-shrink:0;accent-color:#147f9b}.repeat-help{font-size:12px;color:#69818d;margin:-7px 0 0;line-height:1.5}.document-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.document-actions .button{font-size:13px}.editor:has(#booking-form){max-width:640px}
/* Lembretes e preferências do WhatsApp. */
.whatsapp-button,.whatsapp-shortcut{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#16835b;color:white;border-color:#16835b}.whatsapp-button:hover,.whatsapp-shortcut:hover{background:#106d4a;color:white}.whatsapp-button svg{width:18px;height:18px;stroke-width:1.5}.whatsapp-shortcut{width:34px;height:34px;padding:7px;border:0;border-radius:6px;margin-right:8px}.whatsapp-shortcut svg{width:20px;height:20px}.icon-only{width:36px;padding:7px!important}.whatsapp-button:disabled{opacity:.4;cursor:not-allowed}.profile-menu{position:relative}.profile-menu summary{display:flex;gap:10px;align-items:center;cursor:pointer;list-style:none;border-radius:8px;padding:4px}.profile-menu summary::-webkit-details-marker{display:none}.profile-menu summary:hover{background:#ffffff12}.profile-dropdown{position:absolute;top:52px;right:0;z-index:10;width:200px;padding:7px;border:1px solid var(--line);background:white;border-radius:9px;box-shadow:0 10px 25px #13313e25}.profile-dropdown button{display:block;width:100%;border:0;background:white;color:var(--ink);text-align:left;padding:12px;border-radius:5px;font-size:14px}.profile-dropdown button:hover{background:#edf5f8}.integration-banner{display:flex;align-items:center;gap:13px;padding:15px 18px;border:1px solid #d8e6ed;border-radius:9px;background:#eaf3f8;color:#536f81;margin-bottom:24px;font-size:13px;line-height:1.5}.reminder-status{display:inline-block;white-space:nowrap;padding:4px 8px;border-radius:5px;font-size:12px;background:#edf2f5;color:#5e7788}.reminder-status.pending{background:#fff3d8;color:#896319}.reminder-status.confirmed{background:#e3f4ea;color:#287651}.reminder-status.canceled{background:#fbe8e8;color:#ac4b4b}.reminder-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:23px}.reminder-metric{padding:17px 21px;display:flex;align-items:center;gap:14px}.reminder-metric strong{font-size:26px;color:#226d85}.reminder-metric span{font-size:13px;color:#758a96}.reminder-list{padding:5px 22px}.reminder-list-heading{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);gap:15px}.reminder-list-heading h2{font-size:17px;margin:0}.reminder-list-heading span{font-size:12px;color:var(--muted)}.reminder-row{display:grid;grid-template-columns:55px minmax(170px,1fr) 200px 190px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.reminder-row:last-child{border:0}.reminder-row time{font-size:14px;font-weight:600;color:#526f80}.reminder-patient,.reminder-contact{display:flex;flex-direction:column;align-items:start;gap:5px}.reminder-patient strong{font-size:14px}.reminder-patient span,.reminder-contact>span:first-child{font-size:12px;color:#718893}.reminder-row .action-row{justify-content:flex-end;margin:0}.reminder-schedules,.settings-periods{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 17px}.schedule-card{padding:22px;position:relative}.schedule-card>svg{position:absolute;right:22px;top:22px;color:#16835b}.schedule-card h3{font-size:17px;margin:0 0 8px}.schedule-card p{color:var(--muted);font-size:13px;margin:0 0 12px}.settings-card{padding:23px}.settings-card h2{font-size:19px;margin:0 0 18px}.settings-card>label{display:grid;gap:7px;max-width:400px}.settings-times{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.settings-times label{font-size:12px;display:grid;gap:7px}.schedule-enable{display:flex!important;align-items:center;gap:9px!important;font-size:13px!important}.schedule-enable input{width:17px;min-height:17px;margin:0;accent-color:#16835b}.settings-notice{color:#3c7667;font-size:14px}.confirmation-preview{background:#f0f7fa;border:1px solid #dbeaf1;padding:25px 20px;border-radius:10px;margin-top:20px;text-align:center}.confirmation-preview h2{font-size:23px;margin:13px 0}.confirmation-options{display:flex;flex-direction:column;gap:8px;margin-top:22px}.preview-response{color:#206d55;font-size:14px}.confirmation-preview .eyebrow{font-size:10px}.topbar nav{gap:0}.topbar{gap:20px}.nav-item{padding-left:10px;padding-right:10px}
@media(max-width:1100px){.reminder-row{grid-template-columns:50px 1fr 160px}.reminder-contact{grid-column:2;grid-row:auto}.reminder-row .action-row{grid-column:3;grid-row:1 / span 2}.reminder-patient{grid-column:2;grid-row:1}.reminder-row{position:relative}.reminder-metric{padding:14px;gap:8px}.reminder-metric span{font-size:12px}}
@media(max-width:720px){.reminder-metrics{grid-template-columns:1fr 1fr}.reminder-schedules,.settings-periods{grid-template-columns:1fr}.integration-banner{align-items:flex-start;flex-wrap:wrap}.reminder-list{padding:5px 14px}.reminder-list-heading{align-items:flex-start;flex-direction:column;gap:6px}.reminder-row{grid-template-columns:44px minmax(0,1fr);gap:8px}.reminder-row .action-row{grid-column:2;grid-row:auto;justify-content:flex-start;margin-top:4px}.reminder-patient,.reminder-contact{grid-column:2;grid-row:auto}.settings-times{grid-template-columns:1fr}.topbar nav{justify-content:flex-start;gap:10px}.nav-item{flex-shrink:0}.profile-menu summary{gap:4px}.module-heading .whatsapp-button{width:100%}}
/* WhatsApp: símbolo original de Bootstrap Icons, preenchido e compacto. */
svg:has(use[href="#whatsapp"]){width:14px;height:14px;fill:currentColor;stroke:none;stroke-width:0}
.whatsapp-shortcut{width:30px;height:30px;padding:8px}
.whatsapp-button.icon-only{width:30px;min-height:30px;padding:7px!important}
.report-workspace{margin-top:24px;padding:24px}.report-heading h2{margin:0}.report-heading p{color:var(--muted)}.report-workspace>label{display:grid;gap:6px;margin-bottom:16px}.report-toolbar{display:flex;gap:5px;flex-wrap:wrap;align-items:center;background:#edf4f8;padding:10px;border:1px solid var(--line);border-radius:8px 8px 0 0}.report-toolbar select{width:125px}.report-toolbar .button{padding:5px 9px;min-height:32px;font-size:12px}.report-paper{position:relative;background:white;min-height:700px;border:1px solid #dbe6ed;overflow:hidden}.paper-background{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:0}.rich-content{position:relative;z-index:1;min-height:700px;padding:100px 65px 85px;line-height:1.8;font-size:16px;outline:none;overflow-wrap:anywhere}.rich-content h1,.rich-content h2,.rich-content h3{line-height:1.3;margin:18px 0}.rich-content p{margin:10px 0}.letterhead-settings{margin-top:24px}.letterhead-preview{position:relative;width:210px;height:297px;border:1px solid var(--line);margin:18px 0;background:white}.letterhead-settings>.button{margin-right:9px}.report-paper:focus-within{border-color:#137b98}
@media(max-width:720px){.report-workspace{padding:12px}.rich-content{padding:60px 20px;min-height:500px}.report-toolbar .button{font-size:11px;padding:5px}.report-paper{min-height:500px}}
@media print{@page{size:A4;margin:0}body>.print-document{position:static!important;padding:30mm 20mm 25mm!important;min-height:297mm}body>.print-document>.paper-background{position:fixed;inset:0;width:210mm;height:297mm;object-fit:fill;z-index:-1}body>.print-document{isolation:isolate}body>.print-document h1{margin-bottom:10mm}body>.print-document p{margin-bottom:5mm}body>.print-document li{line-height:1.6}body>.print-document h1,body>.print-document h2,body>.print-document h3{break-after:avoid}}
/* Editor em folha A4 e faixa de opções inspirada no Word. */
.report-workspace{padding:0;overflow:hidden;background:#f5f6f7}.report-heading{padding:20px 24px 0}.report-workspace>label{padding:0 24px}.report-workspace>.action-row,.report-workspace>.settings-notice{margin:16px 24px}.word-tabs{display:flex;gap:24px;align-items:center;padding:12px 20px 0;background:#272727;color:#bbb;font-size:13px}.word-tabs strong{color:white;padding-bottom:10px;border-bottom:3px solid #73becf}.report-toolbar{background:#292929;color:#ededed;border:0;border-radius:0;padding:12px 14px;gap:0;align-items:stretch}.ribbon-group{padding:0 14px;border-right:1px solid #4a4a4a;flex:1}.ribbon-group:first-child{flex:1.6}.ribbon-group:last-child{border:0;flex:.6}.ribbon-controls{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-height:75px}.ribbon-caption{display:block;text-align:center;color:#aaa;font-size:11px;margin-top:9px}.report-toolbar select{background:#343434;color:white;border:1px solid #666;border-radius:3px;width:auto;min-height:30px;padding:3px 6px;font-size:12px}.report-toolbar select[aria-label="Fonte"]{width:130px}.report-toolbar select[aria-label="Tamanho da fonte"]{width:58px}.report-toolbar .button{background:transparent;color:#eee;border:1px solid transparent;border-radius:3px;min-width:29px;min-height:29px;padding:3px 6px;font-size:14px;font-family:Arial,sans-serif}.report-toolbar .button:hover,.report-toolbar .button:focus{background:#494949;border-color:#777}.report-toolbar [aria-label="Negrito"]{font-weight:800}.report-toolbar [aria-label="Itálico"]{font-style:italic}.report-toolbar [aria-label="Sublinhado"]{text-decoration:underline}.report-toolbar [aria-label="Tachado"]{text-decoration:line-through;font-size:12px}.ribbon-color{display:flex;align-items:center;gap:5px;font-size:10px!important;color:#ccc}.ribbon-color input{padding:1px;width:25px;height:25px;min-height:25px;border:0;border-radius:2px;background:transparent}.word-canvas{background:#dedfe2;padding:22px 20px 35px;overflow-x:auto}.word-ruler{height:25px;width:794px;margin:0 auto 8px;padding:0 76px;display:flex;justify-content:space-between;align-items:center;color:#747474;background:repeating-linear-gradient(to right,transparent 0,transparent 9px,#b6b6b6 9px,#b6b6b6 10px) bottom/100% 5px no-repeat #f8f8f8;font:10px Arial,sans-serif}.report-paper{width:794px;min-height:1123px;margin:0 auto;border:1px solid #c7c7c7;box-shadow:0 3px 12px #0002;overflow:visible}.rich-content{font-family:Arial,sans-serif;font-size:12pt;line-height:1.5;min-height:1123px;padding:96px 76px;outline:0;color:#222}.rich-content h1{font-size:26pt}.rich-content h2{font-size:20pt}.rich-content h3{font-size:16pt}.word-status{display:flex;gap:24px;justify-content:space-between;background:#f7f7f8;padding:9px 18px;border-top:1px solid #ccc;font-size:11px;color:#69747b}.report-paper .paper-background{height:1123px}.report-toolbar:focus-within{outline:0}
@media(max-width:1100px){.word-ruler,.report-paper{margin-left:0;margin-right:0}.ribbon-group{min-width:220px}.ribbon-group:last-child{min-width:120px}}
@media(max-width:720px){.report-toolbar{gap:12px}.ribbon-group{padding:0 8px;border:0;min-width:100%}.ribbon-controls{min-height:0}.word-canvas{padding:12px 10px 20px}.report-heading{padding:16px 16px 0}.report-workspace>label{padding:0 16px}.word-status{flex-wrap:wrap;gap:8px}.report-workspace>.action-row{margin:12px}.rich-content{padding:96px 76px;min-height:1123px}}
/* Dedicated document editor */
.module-page.editing-report{max-width:none;width:100%;padding:0;margin:0}.editing-report .report-workspace{margin:0;border:0;border-radius:0;min-height:calc(100vh - 65px);background:#e4ebef}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 28px;background:white}.report-heading h2{font-size:20px}.report-heading p{display:none}.report-top-actions{display:flex;gap:8px;flex-wrap:wrap}.report-top-actions .button{min-height:36px;font-size:12px}.editing-report .report-workspace>label{background:white;margin:0;padding:0 28px 16px;font-size:12px;color:#66808e}.editing-report .report-workspace>label input{max-width:550px;border:0;border-bottom:1px solid #d5e4e9;border-radius:0;font-size:17px}.word-tabs{background:#edf7fa;color:#577987;padding:10px 28px 0;border-top:1px solid #dce9ee}.word-tabs strong{color:#126b83;border-color:#16849c}.report-toolbar{background:#f7fbfc;color:#234d60;border-bottom:1px solid #cddfe7;padding:10px 14px}.ribbon-group{border-color:#dce8ed}.ribbon-caption,.ribbon-color{color:#6d8591}.report-toolbar select{background:white;color:#244c60;border-color:#cddfe7}.report-toolbar .button{color:#25586b}.report-toolbar .button:hover,.report-toolbar .button:focus{background:#dceff4;border-color:#8dbdcc}.ribbon-controls{min-height:60px}.report-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:24px;padding:24px;max-width:1440px;margin:auto;align-items:start}.report-layout.patient-hidden{grid-template-columns:minmax(0,1fr)}.word-canvas{background:transparent;padding:0 0 20px;min-width:0}.word-ruler,.report-paper{margin-left:auto;margin-right:auto}.report-patient-panel{background:#f8fcfd;border:1px solid #c9dfe8;border-radius:12px;padding:22px;position:sticky;top:18px}.report-patient-panel h3{font-size:16px;margin:0 0 12px}.report-patient-panel>.button{font-size:12px;padding:7px;min-height:30px;margin:0 4px 8px 0}.patient-info-field{display:grid;gap:6px;padding:15px 0;border-bottom:1px solid #e2edf1;overflow-wrap:anywhere}.patient-info-field span{font-size:11px;color:#77909d}.patient-info-field strong{font-size:13px;font-weight:500}.word-status{align-items:center;background:white;border-color:#dce8ed}.word-status .action-row{margin:0}.rich-content img{max-width:100%;height:auto;cursor:default}.template-dialog{max-width:520px}.template-list{display:grid;gap:10px;margin:16px 0}.template-list .button{text-align:left}.editing-report .settings-notice{margin:0;padding:10px 28px;background:white}.editing-report .settings-notice:empty{display:none}#print-document img{max-width:100%}
@media(max-width:1150px){.report-layout{grid-template-columns:minmax(0,1fr) 230px;gap:16px;padding:16px}.report-patient-panel{padding:16px}.ribbon-group{min-width:180px}.report-heading{align-items:flex-start}.report-top-actions{justify-content:flex-end}}
@media(max-width:760px){.report-heading{flex-direction:column;padding:16px}.report-top-actions{justify-content:flex-start}.report-layout{display:flex;flex-direction:column}.report-patient-panel{position:static;width:100%;order:-1}.word-canvas{width:100%}.report-toolbar .ribbon-group{min-width:180px}.report-toolbar .ribbon-group:first-child{min-width:100%}.report-workspace .word-status{flex-wrap:wrap}}
/* Reports landing page — reference layout */
.module-page.reports-home:not(.editing-report){max-width:1100px;padding:40px 24px 60px}.reports-home:not(.editing-report) .module-heading{margin-bottom:26px}.reports-home:not(.editing-report) .module-heading h1{font-size:25px}.reports-home:not(.editing-report) .module-heading p{font-size:12px}.reports-home:not(.editing-report) .module-filters{margin-bottom:22px}.reports-home:not(.editing-report) .module-filters label{font-size:12px;min-width:0;gap:7px}.reports-home:not(.editing-report) .module-filters select{width:240px;min-height:36px;font-size:12px}.reports-home:not(.editing-report)>.prototype-note{background:transparent;padding:0 8px;font-size:11px;margin:26px 0 24px}.reports-card{padding:18px 20px 30px;min-height:305px;margin-top:0;border-radius:6px;box-shadow:0 2px 8px #234c6010}.reports-card>label,.reports-card .upload-form>label{display:grid;gap:3px;color:var(--primary);font-size:27px;font-weight:400;line-height:1.2}.reports-card>label select{font-size:12px;color:var(--ink);height:36px;min-height:36px;font-weight:400}.reports-card .upload-form{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:14px}.reports-card .upload-form>label{width:100%}.reports-card input[type=file]{font-size:12px;color:var(--ink);font-weight:400;min-height:36px;height:36px;padding:5px 8px;width:96%;background:#fff}.reports-card .reports-create{min-height:37px;padding:3px 26px;border-radius:5px;font-size:23px;line-height:1.2;font-weight:500;margin-left:6px}.reports-files{margin-top:25px;padding:20px;background:white;border:1px solid var(--line);border-radius:6px}.reports-files h2{font-size:17px;margin:0 0 10px}.reports-card .attachment-help{font-size:12px;margin:0 6px}.reports-home.editing-report{max-width:none;padding:0}
@media(max-width:720px){.module-page.reports-home:not(.editing-report){padding:26px 16px}.reports-card{padding:18px 16px;min-height:285px}.reports-card>label,.reports-card .upload-form>label{font-size:23px}.reports-card input[type=file]{width:100%}.reports-files .list-row{flex-wrap:wrap}}
.reports-files .list-row>.button:first-child{flex:0 0 auto;order:1}.reports-files .list-row>div{flex:1;min-width:160px;order:0}.reports-files .list-row>.button{order:2}
/* Refined reports entrance */
.module-page.reports-home:not(.editing-report){max-width:1060px;padding-top:46px}.reports-home:not(.editing-report) .module-heading{margin-bottom:30px}.reports-home:not(.editing-report) .module-heading h1{font-size:29px;letter-spacing:-.8px}.reports-home:not(.editing-report) .module-heading p{font-size:14px;margin-top:9px}.reports-home:not(.editing-report) .module-filters{margin-bottom:22px}.reports-home:not(.editing-report) .module-filters label{font-size:12px;font-weight:500;color:#637c8c}.reports-home:not(.editing-report) .module-filters select{width:270px;height:42px;font-size:13px;border-radius:8px;background:#fff}.reports-home:not(.editing-report)>.prototype-note{font-size:11px;color:#8096a3;margin:18px 2px 24px;padding:0}.reports-card{padding:0;min-height:0;border:1px solid #dce8ee;border-radius:14px;box-shadow:0 6px 24px #25485c06;overflow:hidden}.reports-card-heading{padding:23px 28px 21px;border-bottom:1px solid #e9eff3;background:linear-gradient(100deg,#fff,#f7fbfc);display:grid;gap:4px}.reports-card-title{font-size:17px;font-weight:650;color:#244859}.reports-card-subtitle{font-size:12px;color:#8196a2}.reports-card>label{margin:24px 28px 0}.reports-card>label,.reports-card .upload-form>label{font-size:13px;line-height:1.5;font-weight:600;color:#3c5d6e;gap:9px}.reports-card>label select{height:46px;font-size:14px;border-radius:8px;padding-left:14px;background:#fff;border-color:#d6e3ea}.reports-card .upload-form{gap:0;margin-top:23px;width:100%}.reports-card .upload-form>label{padding:0 28px}.report-file-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:164px;padding:22px;border:1px dashed #bdd4df;border-radius:10px;background:#f8fbfd;text-align:center;transition:background .15s,border-color .15s}.report-file-drop:hover,.report-file-drop:focus-within{background:#edf7fa;border-color:#1686a0}.report-file-drop:focus-within{outline:2px solid #137b98;outline-offset:3px}.report-file-drop strong{font-size:13px;font-weight:550;color:#347389;max-width:100%;overflow-wrap:anywhere}.report-file-drop>span:last-of-type{font-size:11px;color:#869aa6;font-weight:400}.report-upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e8f3f7;color:#26839d;margin-bottom:3px}.report-upload-icon svg{width:21px;height:21px}.reports-card .report-file-drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0}.report-file-drop.has-file{background:#edf8f5;border-color:#70b5a1}.reports-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;border-top:1px solid #edf1f4;margin-top:27px;padding:19px 28px;background:#fcfdfe}.reports-card-bottom p{font-size:12px;color:#7b929f;margin:0;line-height:1.7}.reports-card .reports-create{font-size:14px;font-weight:600;min-width:120px;min-height:42px;padding:9px 25px;border-radius:8px;margin:0;box-shadow:0 3px 7px #147e9817}.reports-card .reports-create:after{content:'→';font-size:18px;margin-left:12px;font-weight:400}.reports-card .attachment-help{padding:0 28px 15px;margin:0}.reports-files{border-radius:12px;padding:22px 26px}.reports-files .list-row{padding:16px 0}.reports-files h2{color:#345467;font-weight:600}.reports-files .list-row strong{font-weight:550}.reports-files .list-row .button{border-radius:7px}.reports-files .list-row:last-child{border:0}.reports-files .list-row>.button:last-child{color:#a36565}
@media(max-width:720px){.module-page.reports-home:not(.editing-report){padding-top:28px}.reports-home:not(.editing-report) .module-heading h1{font-size:25px}.reports-card-heading{padding:20px}.reports-card>label{margin:20px 20px 0}.reports-card .upload-form>label{padding:0 20px}.reports-card-bottom{padding:18px 20px;align-items:flex-start;flex-direction:column;gap:13px}.reports-card .reports-create{width:100%}.reports-card .attachment-help{padding:0 20px 15px}.report-file-drop{padding:20px 12px}.reports-files{padding:18px}}
/* Document studio */
.editing-report .report-heading{padding:20px 32px;gap:24px;border-bottom:1px solid #e5edf1}.document-identity{min-width:200px;flex:1;max-width:530px}.document-identity label{display:grid;gap:4px;font-size:10px!important;text-transform:uppercase;letter-spacing:1.2px;color:#7e939f}.document-identity input{width:100%;min-height:34px;border:1px solid transparent;background:transparent;border-radius:5px;padding:3px 0;font-size:20px;font-weight:600;color:#244658;letter-spacing:-.4px}.document-identity input:hover,.document-identity input:focus{border-color:#cddfe7;background:#f8fbfc;padding-left:8px}.document-context{display:block;font-size:11px;color:#7c929e;margin-top:5px}.report-top-actions{align-items:center;gap:8px}.report-top-actions .button{min-height:38px;border-radius:8px;font-size:12px;padding:8px 13px}.report-top-actions .primary{box-shadow:0 3px 8px #137b981c;order:5}.report-top-actions .button:first-child{border-color:transparent;color:#617e8d}.word-tabs{padding:10px 32px 0;gap:25px;background:#fff;border:0;font-size:12px}.word-tabs strong{border-bottom:2px solid #13849e;padding:0 0 10px}.word-tabs>span{color:#9aadb7;font-size:11px;letter-spacing:.3px}.report-toolbar{padding:15px 24px 13px;background:#fff;gap:0;box-shadow:0 3px 6px #254c5c04;position:relative;z-index:2}.ribbon-group{padding:0 18px;flex:1;min-width:0;border-color:#e4edf2}.ribbon-group:first-child{flex:1.5;padding-left:8px}.ribbon-group:last-child{flex:.65}.ribbon-controls{min-height:66px;align-content:center;gap:5px}.ribbon-caption{text-align:left;font-size:10px;letter-spacing:.3px;color:#91a3ad;margin-top:7px}.report-toolbar .button{width:30px;height:30px;min-width:30px;padding:5px;border-radius:5px;color:#426777;font-size:13px}.report-toolbar .button svg{width:17px;height:17px;stroke-width:1.65}.report-toolbar select{height:31px;min-height:31px;border-radius:5px;font-size:12px;border-color:#dee8ee;color:#436375;background:#fbfdfe}.report-toolbar .ribbon-color{color:#8597a2;font-size:9px!important;gap:3px}.ribbon-group:last-child .button{width:auto;height:auto;text-align:left;justify-content:flex-start;min-width:130px;font-family:inherit;font-size:12px;padding:6px 9px;background:#f1f7fa}.ribbon-group:last-child .button:hover{background:#e3f0f5}.report-layout{padding:30px 28px 45px;gap:30px;grid-template-columns:minmax(0,1fr) 250px}.editing-report .report-workspace{background:#eaf0f3}.word-ruler{background-color:#f6f9fa;color:#99a8b0;height:21px;margin-bottom:10px;opacity:.8}.report-paper{border:1px solid #d8e0e5;box-shadow:0 6px 22px #2a435e13,0 1px 3px #2a435e10}.report-patient-panel{padding:21px;border-radius:12px;background:#fff;border-color:#dce7ed;box-shadow:0 3px 12px #29495e04}.report-patient-panel h3{font-size:14px;color:#35576a;margin-bottom:10px}.report-patient-panel>.button{border-color:#e1ebf0;border-radius:6px;color:#64818f;font-size:11px}.patient-info-field{gap:5px;padding:14px 0;border-color:#edf2f5}.patient-info-field span{font-size:10px;color:#92a3ae}.patient-info-field strong{font-size:12px;color:#466373}.patient-info-field:first-of-type strong{font-size:15px;font-weight:600;color:#28536a}.report-patient-panel>.muted{font-size:11px;margin-top:22px}.word-status{padding:10px 28px;color:#8a9da7;font-size:10px}.word-status .button{border-radius:7px}.report-workspace>.settings-notice{font-size:12px;color:#2d8979}
@media(max-width:1150px){.editing-report .report-heading{padding:18px 22px;flex-wrap:wrap}.document-identity{max-width:none}.report-toolbar{flex-wrap:wrap;row-gap:14px}.ribbon-group{min-width:180px}.ribbon-group:first-child{min-width:320px}.report-layout{padding:22px 18px;gap:18px;grid-template-columns:minmax(0,1fr) 220px}}
@media(max-width:760px){.editing-report .report-heading{padding:16px;gap:14px}.document-identity{width:100%}.document-identity input{font-size:18px}.report-top-actions{gap:6px}.report-top-actions .button{padding:7px 10px;font-size:11px}.word-tabs{padding-left:18px}.report-toolbar{padding:12px 10px}.ribbon-group{padding:0 8px}.ribbon-group:first-child{min-width:100%}.report-layout{padding:18px 12px;display:flex}.report-patient-panel{width:100%}.word-status{padding:10px 16px}}
/* Compact editing controls */
.editing-report .report-heading{padding:9px 24px;gap:16px;min-height:54px}.document-identity{max-width:none;min-width:220px}.document-identity label{font-size:0!important;letter-spacing:0;gap:0}.document-identity input{font-size:14px;font-weight:550;min-height:32px;height:32px;letter-spacing:0;padding:4px 7px}.report-top-actions{gap:6px}.report-top-actions .button{min-height:30px;height:30px;padding:5px 10px;font-size:11px;border-radius:6px;box-shadow:none}.report-workspace .word-tabs{display:none}.report-workspace .report-toolbar{padding:8px 20px;gap:0;align-items:center;box-shadow:none}.report-toolbar .ribbon-group,.report-toolbar .ribbon-group:first-child,.report-toolbar .ribbon-group:last-child{flex:0 1 auto;min-width:0;padding:0 11px}.report-toolbar .ribbon-group:first-child{padding-left:4px;flex:1 1 auto}.report-toolbar .ribbon-controls{min-height:0;gap:3px;align-content:center}.report-toolbar .ribbon-caption{display:none}.report-toolbar .button{width:25px;height:26px;min-width:25px;min-height:26px;padding:4px;font-size:12px;border-radius:4px}.report-toolbar .button svg{width:15px;height:15px}.report-toolbar select{height:27px;min-height:27px;font-size:11px;padding:3px 5px}.report-toolbar select[aria-label="Fonte"]{width:108px}.report-toolbar select[aria-label="Tamanho da fonte"]{width:48px}.report-toolbar .ribbon-color{font-size:0!important;gap:0}.report-toolbar .ribbon-color input{width:22px;height:22px;min-height:22px}.report-toolbar .ribbon-group:last-child .button{min-width:0;height:27px;min-height:27px;padding:4px 7px;font-size:11px}.report-layout{padding-top:22px}
@media(max-width:1150px){.editing-report .report-heading{padding:9px 16px;gap:8px}.report-workspace .report-toolbar{padding:8px 12px;row-gap:6px;flex-wrap:wrap}.report-toolbar .ribbon-group:first-child{flex:0 1 auto;min-width:0}.report-toolbar .ribbon-group{padding:0 8px}.document-identity{min-width:260px}.report-top-actions{flex-wrap:wrap}}
@media(max-width:760px){.editing-report .report-heading{padding:8px 12px;gap:6px}.document-identity{width:100%;min-width:0}.document-identity input{font-size:13px}.report-top-actions .button{font-size:10px;padding:4px 7px;min-height:28px;height:28px}.report-workspace .report-toolbar{padding:7px 8px;gap:7px}.report-toolbar .ribbon-group,.report-toolbar .ribbon-group:first-child{min-width:0;padding:0;border:0;flex:0 1 auto}.report-toolbar .ribbon-controls{flex-wrap:wrap}.report-layout{padding-top:16px}}
.auth-locked{overflow:hidden}.auth-locked> :not(.auth-screen):not(script){visibility:hidden}.auth-screen{position:fixed;inset:0;overflow:auto;background:#f5f9fb;z-index:100;color:#274959;font-family:Inter,'Segoe UI',sans-serif}.auth-header{height:56px;padding:15px max(5%,calc((100% - 1180px)/2));background:#146b80;color:white;font-weight:650;font-size:18px}.auth-layout{max-width:1180px;margin:0 auto;min-height:calc(100vh - 56px);display:grid;grid-template-columns:1fr 450px;align-items:center;gap:85px;padding:50px 25px}.auth-eyebrow{display:block;color:#47899c;font-size:10px;font-weight:650;letter-spacing:1.8px;margin-bottom:15px}.auth-story h1{white-space:pre-line;font-size:42px;line-height:1.24;letter-spacing:-1.5px;color:#255268;font-weight:600}.auth-story p{font-size:15px;line-height:1.9;max-width:425px;color:#7c929e;margin-top:24px}.auth-benefits{border-top:1px solid #dce9ee;padding-top:25px;margin-top:40px;font-size:11px;color:#5f8a9a}.auth-card{background:#fff;border:1px solid #d7e6ec;border-radius:20px;box-shadow:0 14px 50px #234e640b;padding:34px}.auth-card h2{font-size:24px;letter-spacing:-.7px;margin:0 0 10px}.auth-subtitle{font-size:13px;line-height:1.7;color:#7b929f;margin:0 0 25px}.auth-card form>label{display:grid;gap:7px;font-size:12px;margin:15px 0;color:#4d6c7d}.auth-card input{width:100%;min-height:43px;border:1px solid #d8e5ec;border-radius:8px;background:#fcfdfe;padding:10px 12px;font-size:14px}.auth-primary,.auth-secondary,.auth-demo{border-radius:8px;min-height:42px;padding:10px 15px;font:600 13px 'Segoe UI',sans-serif;cursor:pointer}.auth-primary{border:1px solid #147e97;background:#147e97;color:white;width:100%;margin-top:12px}.auth-secondary{border:1px solid #d9e6ed;background:white;color:#397083;width:100%}.auth-demo{border:0;background:transparent;color:#548596;font-size:11px;width:100%;margin-top:8px}.auth-divider{border-top:1px solid #e7eef2;padding-top:22px;margin:16px 0 12px;text-align:center;color:#8a9eaa;font-size:12px}.auth-footnote{font-size:10px;color:#98aab4;text-align:center;margin:22px 0 0}.auth-error{font-size:12px;color:#ab4f52;line-height:1.5}.auth-error:empty{display:none}.auth-progress{display:flex;gap:9px;margin-bottom:25px}.auth-progress span{background:#edf2f5;color:#96aab5;border-radius:50%;display:grid;place-items:center;width:26px;height:26px;font-size:11px}.auth-progress .done{background:#dceff2;color:#14778f}.auth-card .auth-choice{display:flex;align-items:center;gap:12px;border:1px solid #dce8ee;padding:16px;border-radius:10px;cursor:pointer}.auth-choice:has(input:checked){background:#edf7f9;border-color:#68a5b6}.auth-choice input{width:16px;min-height:16px;accent-color:#147e97}.auth-choice strong,.auth-choice small{display:block}.auth-choice strong{font-size:13px}.auth-choice small{font-size:11px;font-weight:400;color:#8198a4;margin-top:5px}.auth-actions{display:flex;gap:10px;margin-top:22px}.auth-actions button{width:auto;flex:1;margin:0}.auth-payment-note{background:#f4f8fb;border-radius:8px;padding:14px;font-size:12px;line-height:1.7;color:#8195a1}.auth-card input:focus{outline:2px solid #abd4df;outline-offset:2px}.brand{max-width:320px;overflow:hidden;text-overflow:ellipsis}.auth-locked .auth-screen{visibility:visible}
.billing-banner{position:fixed;left:0;right:0;bottom:0;z-index:110;background:#146b80;color:#fff;font:600 12px/1.6 Inter,'Segoe UI',sans-serif;padding:10px 20px;display:flex;align-items:center;justify-content:center;gap:14px;box-shadow:0 -4px 18px #0000001f}
.billing-banner.locked{background:#8a3c3c}
.billing-banner-action{border:1px solid #ffffff6b;background:#ffffff1f;color:#fff;border-radius:7px;padding:5px 13px;font:600 12px 'Segoe UI',sans-serif;cursor:pointer}
.billing-banner-action:hover{background:#ffffff33}
.billing-status{margin-top:14px;font-size:12px;color:#5f8a9a;line-height:1.6}
.billing-pix{display:grid;justify-items:center;gap:12px;text-align:center}
.billing-pix img{width:200px;height:200px;border:1px solid #dce8ee;border-radius:10px;background:#fff}
.billing-pix textarea{width:100%;font:12px/1.5 ui-monospace,monospace;border:1px solid #d8e5ec;border-radius:8px;padding:10px;resize:vertical}
.demo-banner{position:fixed;left:0;right:0;bottom:0;z-index:120;background:#8a5a12;color:#fff;font:600 12px/1.6 Inter,'Segoe UI',sans-serif;padding:10px 20px;text-align:center;box-shadow:0 -4px 18px #0000001f}
.auth-locked .demo-banner{visibility:visible}
.auth-screen{padding-bottom:46px}
@media(max-width:850px){.auth-layout{grid-template-columns:1fr;max-width:490px;padding:30px 20px;gap:0}.auth-story{display:none}.auth-card{padding:28px 24px}.auth-header{padding-left:24px}.auth-card h2{font-size:22px}}
.auth-plans-layout{grid-template-columns:1fr;max-width:1050px;padding:36px 24px}.auth-plans-layout .auth-story{display:none}.auth-plans-layout .auth-card{padding:32px}.auth-plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 26px}.auth-plan-group{border-top:1px solid #e7eef2;padding-top:18px;margin-top:6px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.auth-plan-group:first-of-type{border-top:0;padding-top:0}.auth-plan-group strong{font-size:15px;color:#2a5265;letter-spacing:-.3px}.auth-plan-group span{font-size:11px;color:#8aa0ac}.auth-plan{border:1px solid #dbe7ed;border-radius:12px;padding:20px 16px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s;min-width:0}.auth-plan:hover{border-color:#88b8c6}.auth-plan:has(input:checked){border:1px solid #18869e;background:#f0f9fa;box-shadow:0 0 0 2px #18869e15}.auth-plan:focus-within{outline:2px solid #82b9ca;outline-offset:3px}.auth-plan-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.auth-plan-heading strong{font-size:14px;color:#2a5265}.auth-plan-heading input{width:16px;min-height:16px;height:16px;margin:0;accent-color:#147e97}.auth-plan>p{font-size:11px;line-height:1.6;color:#8397a3;min-height:36px}.auth-plan-price{margin:20px 0;border-bottom:1px solid #dfebef;padding-bottom:20px}.auth-plan-price strong{font-size:24px;letter-spacing:-1px;color:#1e6e85}.auth-plan-price span{display:block;font-size:11px;color:#8aa0ac;margin-top:4px}.auth-plan ul{padding:0;list-style:none;margin:0}.auth-plan li{font-size:11px;line-height:1.6;color:#5c7a8a;padding:5px 0}.auth-plan li:before{content:'✓';margin-right:6px;color:#319b87}.auth-plans-layout .auth-actions{justify-content:flex-end}.auth-plans-layout .auth-actions button{flex:0 1 180px}.auth-plan-summary{padding:16px;background:#edf7fa;border:1px solid #d8eaf0;border-radius:10px;display:flex;justify-content:space-between;gap:15px;margin:18px 0;font-size:13px}.auth-plan-summary strong{color:#137b98}@media(max-width:850px){.auth-plans-grid{grid-template-columns:1fr 1fr}.auth-plan-group{margin-top:2px}.auth-plans-layout{max-width:650px}.auth-plans-layout .auth-card{padding:24px}}@media(max-width:440px){.auth-plans-grid{grid-template-columns:1fr}.auth-plan>p{min-height:0}.auth-plan-price{margin:12px 0;padding-bottom:12px}.auth-plan-price span{display:inline}.auth-plan{padding:16px}.auth-plans-layout{padding:24px 16px}.auth-plan-summary{flex-direction:column;gap:5px}}
.birthday-card{padding:24px;margin:24px 0}.birthday-card .module-heading{margin-bottom:8px}.birthday-card h2{font-size:19px;margin:0}.birthday-card h3{font-size:14px;margin-top:24px}.birthday-card .module-heading .button{font-size:12px}.birthday-card .muted{line-height:1.7}
.patient-read-details{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:24px 0}.patient-read-details>div{min-width:0}.patient-read-details>div:last-child{grid-column:1/-1}.patient-read-details dt{font-size:11px;color:#8296a2;margin-bottom:5px}.patient-read-details dd{font-size:14px;margin:0;color:#355566;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:520px){.patient-read-details{grid-template-columns:1fr}}
.repeat-interval{display:flex;align-items:center;gap:20px;padding:14px 16px;border:1px solid #cbe5eb;border-radius:8px;background:#f5fafb}.repeat-interval label{max-width:170px}.repeat-interval p{font-size:13px;color:#247c8e;margin:0}@media(max-width:520px){.repeat-interval{flex-direction:column;align-items:stretch}.repeat-interval label{max-width:none}}
.brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:6px;background:white}.password-toggle{border:0;background:transparent;color:#548596;font-size:11px;justify-self:end;padding:2px;cursor:pointer}.account-photo{padding:18px;border:1px dashed #c5dce5;border-radius:10px;margin:20px 0;grid-column:1/-1}.account-photo-preview{width:64px;height:64px;background:#e9f4f7;color:#47899c;display:grid;place-items:center;border-radius:12px;margin-bottom:12px;font-size:24px;overflow:hidden}.account-photo-preview img{width:100%;height:100%;object-fit:contain}.account-photo label{display:grid;gap:8px;font-size:12px}.account-photo input{font-size:11px!important;max-width:100%}.account-photo .auth-demo{width:auto;margin:0;padding:4px;min-height:24px}.account-settings{padding:26px;margin-bottom:28px}.account-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.account-edit-grid>label{display:grid;gap:7px;font-size:12px}.account-edit-grid>h3,.account-edit-grid>.settings-notice{grid-column:1/-1}.account-edit-grid+.account-edit-grid{margin-top:30px;padding-top:16px;border-top:1px solid #dce8ee}@media(max-width:600px){.account-edit-grid{grid-template-columns:1fr}}
/* Profile inspired by reference */
.account-settings{background:#fff;border:0;border-radius:5px;padding:32px 34px;box-shadow:0 8px 35px #20365312;margin:12px 0 38px;border-top:4px solid #213c60}.account-settings>h2{font-size:18px;text-transform:uppercase;letter-spacing:.6px;color:#354964;margin:0 0 8px}.account-settings>.muted{font-size:12px;color:#94a0af;margin-bottom:30px}.profile-reference-layout{display:grid;grid-template-columns:180px minmax(0,1fr) 110px;gap:30px;align-items:start}.profile-reference-aside{display:flex;flex-direction:column;gap:7px;min-width:0}.profile-reference-aside>strong{font-size:13px;color:#536680;overflow-wrap:anywhere}.profile-reference-aside>.muted{font-size:11px}.profile-reference-aside .account-photo{border:0;background:none;padding:0;margin:0 0 10px;max-width:180px}.profile-reference-aside .account-photo-preview{width:90px;height:90px;border-radius:50%;background:#e9edf2;color:#6a7d95;font-size:35px;margin:5px 0 20px}.profile-reference-aside .account-photo label{font-size:11px;font-weight:600;color:#536680}.profile-reference-aside .account-photo input{background:#f0f2f5;border:0;padding:7px 4px;font-size:10px!important;width:100%;min-height:32px}.profile-reference-aside .account-photo .muted{font-size:10px}.profile-reference-aside .auth-demo{font-size:10px}.profile-reference-content{min-width:0}.profile-reference-content .account-edit-grid{display:block}.profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-fields label,.profile-reference-content .account-edit-grid>label{display:grid;gap:7px;font-size:11px;font-weight:600;color:#425773}.profile-fields input,.profile-fields textarea,.profile-reference-content input{background:#f0f2f5;border:1px solid transparent;border-radius:3px;min-height:36px;padding:8px 11px;color:#4e6077;font-size:12px;font-weight:400}.profile-fields input:focus,.profile-fields textarea:focus,.profile-reference-content input:focus{background:#fff;border-color:#a1b7c9;outline:2px solid #dce8ef}.profile-about{grid-column:1/-1}.profile-fields textarea{min-height:85px;resize:vertical}.profile-reference-tabs{display:flex;flex-direction:column;gap:5px}.profile-tab{border:0;background:none;text-align:left;padding:9px 12px;font-size:11px;color:#7b8da6;border-radius:3px}.profile-tab.selected{background:#687b94;color:white}.profile-tab:hover{background:#edf1f6;color:#344c6d}.profile-save-row{display:flex;justify-content:flex-end;margin-top:25px}.profile-save-row .button,.profile-reference-content .account-edit-grid>.button{background:#233e62;color:white;border:0;border-radius:3px;font-size:12px;padding:10px 24px;min-height:36px}.profile-reference-content .account-edit-grid>label{margin-bottom:17px}.profile-reference-content .account-edit-grid>h3{font-size:15px;color:#425773;margin-top:0}.profile-reference-content .settings-notice{font-size:12px}.profile-reference-content form+.account-edit-grid{border:0;margin:0;padding:0}
@media(max-width:1000px){.profile-reference-layout{grid-template-columns:145px minmax(0,1fr);gap:24px}.profile-reference-tabs{grid-column:1/-1;grid-row:1;flex-direction:row;border-bottom:1px solid #e6ebf0;padding-bottom:12px}.profile-reference-aside .account-photo{max-width:145px}.profile-fields{grid-template-columns:1fr}}
@media(max-width:600px){.account-settings{padding:22px 18px}.profile-reference-layout{grid-template-columns:1fr;gap:20px}.profile-reference-aside{border-bottom:1px solid #e6ebf0;padding-bottom:18px}.profile-reference-aside .account-photo{max-width:100%;width:100%}.profile-reference-aside .account-photo input{max-width:230px}.profile-save-row .button{width:100%}}
.account-settings{border:1px solid var(--line);border-radius:12px;border-top:1px solid var(--line);box-shadow:0 3px 12px #25485c08}.account-settings>h2{color:var(--ink);text-transform:none;letter-spacing:-.3px}.profile-tab{color:#6a8797;border-radius:7px}.profile-tab.selected{background:var(--primary);color:white}.profile-tab:hover{background:#eaf5f8;color:var(--primary)}.profile-tab.selected:hover{background:var(--primary-dark);color:white}.profile-save-row .button,.profile-reference-content .account-edit-grid>.button{background:var(--primary);border-radius:7px}.profile-fields input,.profile-fields textarea,.profile-reference-content input{background:white;border:1px solid #d8e5ec;border-radius:7px;min-height:40px;color:var(--ink)}.profile-reference-aside .account-photo input{background:#fff;border:1px solid #d8e5ec;border-radius:7px;padding:7px;min-height:38px}.account-photo input::file-selector-button{border:0;background:#e9f4f8;color:#23758b;border-radius:5px;padding:7px 9px;margin-right:8px;cursor:pointer}.profile-reference-aside .account-photo{max-width:100%}.profile-reference-layout{grid-template-columns:195px minmax(0,1fr) 135px;gap:24px}.profile-settings-section .settings-card,.profile-settings-section .birthday-card{padding:18px;margin:0 0 18px}.profile-settings-section .reminder-schedules{grid-template-columns:1fr}.profile-settings-section .module-heading{flex-wrap:wrap;gap:12px}.profile-settings-section h2{font-size:17px}.profile-settings-section .integration-banner{flex-wrap:wrap;font-size:12px}.profile-settings-section .settings-form{display:block}.profile-settings-section .settings-form>.button{margin:12px 0}.profile-settings-section .letterhead-preview{max-width:100%}@media(max-width:1000px){.profile-reference-layout{grid-template-columns:160px minmax(0,1fr)}.profile-reference-tabs{flex-wrap:wrap}}@media(max-width:600px){.profile-reference-layout{grid-template-columns:1fr}}
.interval-settings>label{display:grid;gap:8px;font-size:13px}.interval-settings input{max-width:180px}.interval-settings .settings-notice{font-size:12px;color:var(--primary)}
.company-finance{display:grid;grid-template-columns:1fr 300px;gap:30px;padding:30px;margin-bottom:18px;align-items:center;background:linear-gradient(120deg,#fff,#f5fafc)}.company-finance h2{font-size:20px;margin:5px 0 12px}.company-total{display:block;font-size:36px;letter-spacing:-1px;color:#156b81}.company-finance .muted{font-size:12px}.income-summaries{display:flex;gap:38px;border-top:1px solid #dce9ef;margin-top:24px;padding-top:20px}.income-summaries span{font-size:12px;color:#7a929e;display:block}.income-summaries strong{font-size:21px;display:block;margin-top:7px}.income-chart{text-align:center}.income-donut{width:185px;height:185px;border-radius:50%;display:grid;place-items:center;margin:auto}.income-donut-center{background:#f9fcfd;border-radius:50%;width:139px;height:139px;display:flex;flex-direction:column;align-items:center;justify-content:center}.income-donut-center strong{font-size:27px;color:#306176}.income-donut-center span{font-size:10px;color:#8a9ea9}.income-breakdown{padding:24px;margin-bottom:28px}.income-breakdown h2{font-size:17px;margin:0}.income-legend-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto 60px;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #edf2f5}.income-legend-row:last-child{border-bottom:0}.income-color{width:9px;height:9px;border-radius:50%}.income-legend-row>span:nth-child(2){overflow-wrap:anywhere}.income-share{text-align:right;font-size:12px;color:#839aa7}.income-legend-row strong{font-size:14px}.professional-finance-title{font-size:17px;margin:25px 0 15px}@media(max-width:720px){.company-finance{grid-template-columns:1fr;padding:22px;gap:22px}.company-total{font-size:30px}.income-summaries{gap:20px;flex-wrap:wrap}.income-breakdown{padding:20px}.income-legend-row{gap:8px;grid-template-columns:9px minmax(0,1fr) auto 42px}.income-legend-row strong{font-size:12px}}

/* Valores de atendimento */
.pricing-rows{display:grid;gap:10px;margin:20px 0}.pricing-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px;border:1px solid #dae8ed;border-radius:8px;background:#f7fbfc}.pricing-row label{display:grid;gap:6px;font-size:12px;color:#557386}.pricing-row input{width:170px}.pricing-add{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid #dae8ed}.pricing-add label{display:grid;gap:8px;flex:1;min-width:180px}.pricing-add .settings-notice{flex-basis:100%}@media(max-width:520px){.pricing-row{align-items:start;flex-direction:column;gap:10px}.pricing-row label,.pricing-row input{width:100%}}

/* Resumo financeiro seguido da distribuição dos recebimentos. */
.company-finance{grid-template-columns:minmax(0,1.2fr) minmax(190px,.8fr) minmax(0,1fr);gap:26px;margin-top:28px}.company-finance-content{min-width:0}.income-chart-legend{background:#fff;padding:8px 18px;border-radius:8px;min-width:0}.income-chart-legend .income-legend-row{grid-template-columns:8px minmax(0,1fr) auto 46px;gap:8px;font-size:12px}.income-chart-legend .income-legend-row strong{font-size:12px}.income-chart-legend .income-share{font-size:11px}.income-summaries{gap:26px;flex-wrap:wrap}.income-breakdown{margin-bottom:20px}@media(max-width:1050px){.company-finance{grid-template-columns:minmax(0,1fr) minmax(190px,.7fr)}.income-chart-legend{grid-column:1/-1}}@media(max-width:620px){.company-finance{grid-template-columns:minmax(0,1fr);padding:20px;gap:20px}.income-chart-legend{grid-column:auto}.finance-metrics{gap:10px}.finance-metrics .metric{padding:16px}.finance-metrics .metric strong{font-size:22px}}

.income-category{width:100%;border:0;border-bottom:1px solid #edf2f5;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;border-radius:4px}.income-category:hover{background:#edf7fa}.income-category:focus-visible{outline:2px solid #147f98;outline-offset:2px}.income-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0 12px;color:#23576a}.income-back{min-height:28px;padding:4px 8px;font-size:11px}.income-table-scroll{overflow:auto}.income-patient-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.income-patient-table caption{text-align:left;color:#78929f;font-size:11px;padding:0 0 12px}.income-patient-table th,.income-patient-table td{padding:12px 8px;border-bottom:1px solid #eaf0f3}.income-patient-table th{font-size:11px;color:#5a7684;font-weight:600}.income-patient-table td:first-child{overflow-wrap:anywhere;min-width:70px}.income-patient-table td:not(:first-child),.income-patient-table th:not(:first-child){text-align:right;white-space:nowrap}.income-patient-table tfoot{font-weight:700;color:#14748b}.income-chart-legend .income-table-scroll{max-height:280px}.income-chart-legend .income-patient-table th,.income-chart-legend .income-patient-table td{padding:10px 4px;font-size:11px}

.income-view-tabs{display:flex;gap:8px;margin-top:22px;flex-wrap:wrap}.income-view-tabs .button{font-size:12px;min-height:32px;padding:6px 12px}.income-view-tabs [aria-pressed=true]{background:#147f98;color:#fff;border-color:#147f98}.income-patient-table .income-color{display:inline-block;margin-right:7px;vertical-align:middle;flex-shrink:0}
/* O fundo da aplicação é pintado também no body: sem isso, quando a página é servida
   dentro de outro visualizador, o fundo do hospedeiro aparece atrás do conteúdo. */
html,body{background:var(--canvas)}
@media print{html,body{background:#fff}}
