:root{
  --bg:#f4f8fa;--card:#fff;--text:#142033;--muted:#66758a;--line:#dfe8ec;
  --primary:#078ca2;--primary-dark:#056f81;--primary-soft:#e7f7fa;--success:#15a873;--warning:#f2a33a;--danger:#e9545d;--info:#2788e3;--purple:#8a65d1;
  --sidebar:#fff;--radius:16px;--shadow:0 10px 32px rgba(36,70,86,.08)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.grow{flex:1;min-width:0}.full{width:100%}.danger-text{color:var(--danger)!important}.no-print{}
.app{display:flex;min-height:100vh}.sidebar{width:272px;background:var(--sidebar);color:var(--text);position:fixed;inset:0 auto 0 0;overflow:auto;z-index:20;border-right:1px solid var(--line);transition:.25s}.brand{display:flex;gap:12px;align-items:center;padding:22px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:2}.brand-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#17a6b8,#087f96);font-size:25px;color:#fff;box-shadow:0 12px 25px rgba(7,140,162,.22)}.brand-title{font-weight:850;font-size:19px;color:var(--primary-dark)}.brand-sub{font-size:11px;color:var(--muted);margin-top:2px}.nav{padding:12px}.nav-section{padding:17px 12px 7px;color:#94a1ae;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;margin:3px 0;border-radius:12px;color:#3a4a5d;transition:.18s;font-weight:650}.nav a:hover,.nav a.active{background:var(--primary-soft);color:var(--primary-dark)}.nav a.active{box-shadow:inset 3px 0 0 var(--primary)}.nav .ico{font-size:17px;width:22px;text-align:center;color:var(--primary)}
.main{margin-left:272px;width:calc(100% - 272px);min-height:100vh}.topbar{height:72px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:10}.menu-btn{display:none;border:1px solid var(--line);background:#fff;color:var(--primary);width:42px;height:42px;border-radius:12px;font-size:22px;cursor:pointer}.search-pill{background:#f8fbfc;border:1px solid var(--line);padding:11px 16px;border-radius:12px;color:#7a8795;min-width:390px}.user-pill{display:flex;gap:10px;align-items:center;padding:6px 8px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#078ca2,#45b7c4);color:#fff;font-weight:850}.content{padding:24px;max-width:1800px;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.page-title h1{margin:0;font-size:26px;letter-spacing:-.025em}.page-title p{margin:6px 0 0;color:var(--muted)}
.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.card h3{margin:0 0 14px;font-size:16px}.card h4{margin:15px 0 9px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h3,.section-head p{margin:0}.section-head p{font-size:12px;color:var(--muted);margin-top:3px}.metric{display:flex;align-items:center;justify-content:space-between;gap:12px}.metric .label{color:var(--muted);font-size:12px}.metric .value{font-size:27px;font-weight:850;margin-top:5px;letter-spacing:-.03em}.metric .icon{width:49px;height:49px;border-radius:15px;display:grid;place-items:center;font-size:22px;background:var(--primary-soft);color:var(--primary)}.icon.green{background:#e3f8ef;color:var(--success)}.icon.orange{background:#fff2df;color:var(--warning)}.icon.red{background:#feecef;color:var(--danger)}.icon.cyan,.icon.blue{background:#e7f2fe;color:var(--info)}
.btn{border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;border-radius:11px;background:#fff;color:#314255;font-weight:750;cursor:pointer;transition:.17s}.btn:hover{transform:translateY(-1px);border-color:#bdd0d8;box-shadow:0 8px 18px rgba(31,59,75,.10)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-color:transparent}.btn-success{background:var(--success);color:#fff;border-color:transparent}.btn-danger{background:var(--danger);color:#fff;border-color:transparent}.btn-warning{background:var(--warning);color:#fff;border-color:transparent}.btn-info{background:var(--info);color:#fff;border-color:transparent}.btn-sm{padding:7px 10px;border-radius:9px;font-size:12px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;color:#788695;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:11px 10px;vertical-align:middle;border-bottom:1px solid #edf2f4}.table tbody tr:hover{background:#fafcfd}.table td small,.table td .muted{display:block;margin-top:3px}.table.compact td{padding:9px}.badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#e9f3ff;color:#246db1;font-weight:750;font-size:11px;white-space:nowrap}.badge.success{background:#e2f8ed;color:#167a56}.badge.warning{background:#fff0da;color:#9a5b05}.badge.danger{background:#fde8eb;color:#a42c37}.badge.dark{background:#edf1f3;color:#4e5c69}
.form{display:grid;gap:13px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field label{display:block;font-size:12px;font-weight:760;margin-bottom:6px;color:#415164}.field input,.field select,.field textarea,.patient-selector select,.inline-form input,.inline-form select,.actions select{width:100%;border:1px solid var(--line);border-radius:11px;padding:10px 11px;background:#fff;color:var(--text);outline:none}.field textarea{min-height:88px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#69b9c6;box-shadow:0 0 0 3px rgba(7,140,162,.10)}.field small{display:block;margin-top:5px}.alert{padding:13px 15px;border-radius:12px;margin-bottom:16px;font-weight:700}.alert.success{background:#e3f8ef;color:#146d4e}.alert.error{background:#feecef;color:#9c2932}.muted{color:var(--muted)}.photo{width:50px;height:50px;border-radius:13px;object-fit:cover;background:#edf4f6;vertical-align:middle;margin-right:8px}.photo-lg{width:125px;height:125px;border-radius:23px;object-fit:cover;background:#edf4f6}.photo-xl{width:92px;height:92px;border-radius:50%;object-fit:cover;background:#edf4f6}.empty{padding:24px;text-align:center;color:var(--muted);background:#f8fbfc;border:1px dashed #cbd9df;border-radius:13px}.kpi-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f4}.kpi-line:last-child{border-bottom:0}.progress{height:8px;background:#e7eef1;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),#23b98f)}.mini-bar{height:7px;background:#e7eef1;border-radius:99px;overflow:hidden;margin-top:18px}.mini-bar span{display:block;height:100%;background:var(--success);border-radius:99px}.mini-bar.danger span{background:var(--danger)}
.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 15% 15%,rgba(7,140,162,.18),transparent 32%),radial-gradient(circle at 85% 20%,rgba(21,168,115,.13),transparent 32%),linear-gradient(135deg,#f8fbfc,#edf6f8)}.login-card{width:min(430px,100%);background:#fff;border-radius:24px;padding:32px;box-shadow:0 28px 70px rgba(24,65,81,.16);border:1px solid var(--line)}.login-logo{width:68px;height:68px;border-radius:21px;background:linear-gradient(135deg,var(--primary),#30b9c6);display:grid;place-items:center;color:#fff;font-size:35px;margin-bottom:18px}.pdv-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}.sticky-card{position:sticky;top:90px}.animal-header{display:flex;gap:18px;align-items:center}.timeline{border-left:2px solid #b8dce2;margin-left:14px;padding-left:20px}.timeline-item{position:relative;margin:0 0 18px}.timeline-item:before{content:'';position:absolute;left:-27px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--primary);border:3px solid #fff;box-shadow:0 0 0 2px #bde0e6}.mobile-overlay{display:none}
/* Dashboard */
.dashboard-row{margin-top:16px}.dashboard-main{grid-template-columns:1.3fr .85fr .85fr;margin-top:16px}.agenda-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f4}.agenda-row time{font-weight:850;color:var(--primary);width:45px}.agenda-row small,.alert-line small,.rank-row small{display:block;color:var(--muted);margin-top:3px}.type-dot{width:9px;height:9px;border-radius:50%}.type-dot.blue{background:var(--info)}.type-dot.green{background:var(--success)}.type-dot.purple{background:var(--purple)}.type-dot.red{background:var(--danger)}.type-dot.cyan{background:#18b8c9}.type-dot.orange{background:var(--warning)}.alert-line{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid #edf2f4}.alert-icon{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#fff0da;color:#9a5b05;font-weight:900;flex:none}.alert-icon.danger{background:#fde8eb;color:#a42c37}.rank-row{display:flex;align-items:center;gap:10px;padding:9px 0}.rank-row>span{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:850}.rank-row strong{font-size:12px}.rank-row .progress{margin-top:5px}
/* Reception */
.reception-layout{display:grid;grid-template-columns:230px minmax(700px,1fr) 190px;gap:14px;align-items:start}.reception-side,.reception-actions{display:grid;gap:12px}.compact-stat{padding:15px}.compact-stat .section-head{margin-bottom:9px}.compact-stat h3{font-size:14px}.stat-line{display:flex;justify-content:space-between;gap:8px;margin:10px 0 13px}.shortcut-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.shortcut-grid a{min-height:75px;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--primary);cursor:pointer;text-align:center}.shortcut-grid a:hover{background:var(--primary-soft)}.shortcut-grid a span{font-size:11px;font-weight:750;color:#405164}.filter-bar{display:grid;grid-template-columns:1fr 1fr 1fr auto auto;gap:10px;align-items:end}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0}.view-switch{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.view-switch span,.view-switch b{padding:8px 12px;font-size:11px}.view-switch b{background:var(--primary-soft);color:var(--primary)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));border:1px solid var(--line);border-radius:13px;overflow:auto;min-height:570px}.day-column{border-right:1px solid var(--line);min-width:120px}.day-column:last-child{border:0}.day-column>header{display:flex;justify-content:space-between;padding:11px;background:#f8fbfc;border-bottom:1px solid var(--line);font-size:11px}.day-events{padding:8px;display:grid;align-content:start;gap:8px}.appointment-card{display:grid;gap:2px;padding:9px;border-radius:10px;border-left:3px solid var(--info);background:#edf6ff;font-size:11px}.appointment-card time{font-weight:850}.appointment-card span,.appointment-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-card.green{background:#e9f9f1;border-color:var(--success)}.appointment-card.purple{background:#f2edfd;border-color:var(--purple)}.appointment-card.orange{background:#fff5e7;border-color:var(--warning)}.appointment-card.red{background:#feeef0;border-color:var(--danger)}.appointment-card.cyan{background:#e8fbfd;border-color:#13b4c5}.empty-day{color:#9aa6b1;font-size:11px;text-align:center;padding:25px 4px}.action-card p{font-size:12px;color:var(--muted);line-height:1.5}
/* Consultorio */
.patient-selector{display:flex;align-items:center;gap:10px;margin-bottom:14px}.patient-selector label{font-weight:800}.patient-selector select{max-width:360px}.patient-card{display:grid;grid-template-columns:auto 1.25fr repeat(5,minmax(110px,1fr));align-items:center;gap:18px}.patient-name h2{margin:0 0 5px;font-size:24px}.patient-name span,.patient-info span{color:var(--muted);font-size:12px}.patient-info{display:grid;gap:4px;border-left:1px solid var(--line);padding-left:16px}.patient-info small,.allergy-box small{color:#7a8795;font-size:10px}.allergy-box{padding:10px;border-radius:11px;background:#fff6e8;border:1px solid #f6d9ad;display:grid;gap:5px}.clinical-tabs{display:flex;gap:7px;overflow:auto;padding:12px 0}.clinical-tabs a{min-width:120px;padding:11px;border:1px solid var(--line);border-radius:10px;text-align:center;background:#fff;font-size:12px;font-weight:750}.clinical-tabs a.active{border-color:var(--primary);color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.consult-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:15px}.consult-grid main{display:grid;gap:15px;align-content:start}.smart-panel{display:grid;gap:15px;align-content:start}.clinical-form{padding:0;overflow:hidden}.clinical-section{display:grid;grid-template-columns:145px 1fr;border-bottom:1px solid var(--line)}.clinical-label{padding:15px;display:flex;gap:9px;align-items:flex-start;color:var(--primary)}.clinical-label span{font-size:10px;background:var(--primary-soft);padding:4px;border-radius:7px}.clinical-section textarea{border:0;resize:vertical;min-height:78px;padding:15px;outline:none}.clinical-form>.form-row{padding:15px}.clinical-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px}.clinical-actions select{max-width:170px;border:1px solid var(--line);border-radius:10px;padding:8px}.smart-action{width:100%;border:0;border-bottom:1px solid #edf2f4;background:#fff;padding:12px 6px;text-align:left;color:#30465a;font-weight:700;display:block;cursor:pointer}.smart-action:hover{color:var(--primary)}.ai-result{margin-top:12px;padding:12px;background:#f6fafb;border-radius:11px}.ai-result pre{white-space:pre-wrap;font-family:inherit;font-size:11px;color:#4d5d6b}.recorder-controls{display:flex;align-items:center;gap:8px}.recorder-card audio{width:100%;margin-top:12px}.upload-box{border:1px dashed #aabdc5;border-radius:12px;padding:15px;text-align:center}.upload-box input{width:100%}.upload-box span{display:block;margin-top:7px;color:var(--muted);font-size:11px}.attachment-row,.history-item{display:grid;gap:3px;padding:9px 0;border-bottom:1px solid #edf2f4}.attachment-row span,.history-item span{font-size:11px;color:var(--muted)}
/* Hospital */
.hospital-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.bed-summary{display:flex;gap:10px}.bed-summary .card{min-width:150px;padding:13px;box-shadow:none}.bed-summary small,.bed-summary span{display:block;color:var(--muted);font-size:10px}.bed-summary b{font-size:25px;margin-right:6px}.bed-summary .free b{color:var(--success)}.hospital-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:15px}.ward-grid{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:12px}.ward-column{padding:10px;box-shadow:none}.ward-column>header{display:flex;justify-content:space-between;align-items:center;padding:4px 3px 10px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);margin-right:6px}.status-dot.red{background:var(--danger)}.bed-card{position:relative;display:grid;grid-template-columns:42px 1fr;gap:9px;padding:10px;margin-bottom:8px;border:1px solid var(--line);border-radius:12px;background:#fff}.bed-card:hover,.bed-card.selected{border-color:#5fb5c2;background:#f5fbfc}.bed-card img{width:42px;height:42px;border-radius:50%;object-fit:cover}.bed-card .grow{display:grid;gap:2px}.bed-card span,.bed-card small{font-size:10px;color:var(--muted)}.bed-code{position:absolute;top:6px;left:6px;background:#eef4f6;border-radius:6px;padding:2px 5px;font-size:9px;font-weight:800}.priority{position:absolute;right:7px;bottom:6px;border-radius:99px;padding:3px 6px;font-size:9px!important}.priority.urgente{background:#fee8eb;color:#a32c35}.priority.observacao{background:#fff0da;color:#965a07}.priority.normal{background:#e3f8ef;color:#167753}.bed-card footer{grid-column:1/-1;border-top:1px solid #edf2f4;padding-top:6px;font-size:10px;color:#526270}.hospital-side,.hospital-bottom{display:grid;gap:12px;align-content:start}.hospital-bottom{grid-template-columns:1.3fr .7fr;margin-top:13px}.prescription-line{display:grid;gap:3px;padding:9px 0;border-bottom:1px solid #edf2f4}.prescription-line span{font-size:11px;color:var(--muted)}.inline-form{display:grid;grid-template-columns:1.2fr .7fr .5fr .7fr .8fr auto;gap:7px;margin-top:12px}.task-row{display:grid;grid-template-columns:26px 42px 1fr;align-items:center;gap:7px;padding:8px 0;border-bottom:1px solid #edf2f4}.task-row button{border:1px solid #a9d7c6;background:#fff;width:22px;height:22px;border-radius:6px;color:var(--success);cursor:pointer}.task-row button.done{background:var(--success);color:#fff}.patient-mini{display:flex;align-items:center;gap:10px}.patient-mini img{width:50px;height:50px;border-radius:50%;object-fit:cover}.patient-mini span{display:block;color:var(--muted);font-size:11px}.evolution-note{padding:10px;background:#f8fbfc;border-radius:10px;margin-bottom:8px}.evolution-note p{font-size:12px;line-height:1.5}.evolution-note small,.evolution-note span{color:var(--muted);font-size:10px}
/* Operational */
.print-sheet{max-width:900px;margin:0 auto 18px;min-height:650px;padding:40px}.print-header,.print-patient{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #9eabb4;padding-bottom:15px;margin-bottom:20px}.print-header div,.print-patient{display:grid;gap:5px}.rx-item{padding:15px 0;border-bottom:1px solid #dfe7ea}.signature{margin-top:80px;padding-top:12px;border-top:1px solid #555;text-align:center}.rx-form-row{display:grid;grid-template-columns:1.1fr .7fr .55fr .7fr .65fr .6fr .45fr 1.2fr;gap:6px}.rx-form-row input{min-width:0;border:1px solid var(--line);border-radius:9px;padding:8px}.document-content{min-height:330px;line-height:1.8}.document-row,.print-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #edf2f4}.document-row span,.print-row span{display:block;font-size:11px;color:var(--muted);margin-top:3px}.package-card{display:grid;grid-template-columns:1fr auto;gap:5px;padding:11px 0;border-bottom:1px solid #edf2f4}.package-card span,.package-card small{display:block;color:var(--muted);font-size:11px}.package-card small{grid-column:1/-1}.grade-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:14px}.grade-head .progress{margin-top:6px}.kanban-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.kanban-column{background:#edf3f5;border-radius:14px;padding:10px;min-height:390px}.kanban-column>header{display:flex;justify-content:space-between;padding:7px;font-weight:850}.kanban-task{display:grid;gap:5px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px;margin-bottom:9px}.kanban-task time{font-weight:850;color:var(--primary)}.kanban-task span,.kanban-task small{color:var(--muted);font-size:11px}.alert-cards{display:grid;gap:9px}.alert-card{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-left:4px solid var(--info);border-radius:12px}.alert-card.urgente{border-left-color:var(--danger)}.alert-card.warning{border-left-color:var(--warning)}.alert-card h3,.alert-card p{margin:2px 0}.alert-card time{font-weight:750;color:var(--muted)}.report-filter{display:flex;align-items:end;gap:10px;margin-bottom:15px}.report-filter .field{min-width:180px}.report-bar{display:grid;grid-template-columns:90px 1fr 90px;align-items:center;gap:9px;padding:8px 0}.report-bar>div{height:8px;background:#edf2f4;border-radius:99px;overflow:hidden}.report-bar i{display:block;height:100%;background:var(--primary)}.shortcut-grid.wide{grid-template-columns:repeat(4,1fr)}.role-guide,.integration-note{margin-top:15px;padding:13px;background:#f6fafb;border-radius:11px;color:#526270}.integration-status{padding:12px;border-radius:11px;margin-bottom:14px;display:grid;gap:4px}.integration-status.warning{background:#fff4e4;color:#8a540b}.integration-flow{line-height:2;color:#506172}.integration-card input[type=password]{font-family:monospace}
@media(max-width:1450px){.reception-layout{grid-template-columns:205px minmax(650px,1fr)}.reception-actions{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.ward-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}.patient-card{grid-template-columns:auto 1.2fr repeat(3,1fr)}.patient-card>.patient-info:nth-last-child(-n+2),.patient-card>.allergy-box{grid-row:2}}
@media(max-width:1150px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.dashboard-main{grid-template-columns:1fr 1fr}.dashboard-main>.card:first-child{grid-column:1/-1}.pdv-grid,.consult-grid,.hospital-layout{grid-template-columns:1fr}.hospital-side{grid-template-columns:repeat(2,1fr)}.reception-layout{grid-template-columns:1fr}.reception-side,.reception-actions{grid-template-columns:repeat(3,1fr)}.reception-calendar{overflow:auto}.patient-card{grid-template-columns:auto 1fr repeat(2,1fr)}.ward-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}.rx-form-row{grid-template-columns:repeat(4,1fr)}.inline-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.sidebar{transform:translateX(-105%)}.sidebar.open{transform:translateX(0)}.mobile-overlay.show{display:block;position:fixed;inset:0;background:rgba(15,30,40,.45);z-index:15}.main{margin-left:0;width:100%}.menu-btn{display:inline-grid;place-items:center}.topbar{padding:0 13px}.search-pill{display:none}.content{padding:14px}.grid-4,.grid-3,.grid-2,.form-row,.dashboard-main,.reception-side,.reception-actions,.hospital-side,.hospital-bottom,.kanban-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.table{min-width:740px}.animal-header{align-items:flex-start;flex-direction:column}.patient-card{grid-template-columns:70px 1fr}.patient-card>*{grid-row:auto!important}.patient-info,.allergy-box{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:10px 0}.week-grid{min-width:900px}.filter-bar{grid-template-columns:1fr 1fr}.ward-grid{grid-template-columns:1fr}.hospital-head,.calendar-toolbar{align-items:flex-start;flex-direction:column}.rx-form-row{grid-template-columns:1fr 1fr}.clinical-section{grid-template-columns:1fr}.clinical-label{padding-bottom:0}.inline-form{grid-template-columns:1fr 1fr}.report-filter{flex-wrap:wrap}.shortcut-grid.wide{grid-template-columns:1fr 1fr}.grade-head{grid-template-columns:1fr}.print-sheet{padding:20px}.topbar .user-pill div:last-child{display:none}}
@media print{body{background:#fff}.sidebar,.topbar,.page-head,.no-print,.mobile-overlay{display:none!important}.main{margin:0;width:100%}.content{padding:0;max-width:none}.card{box-shadow:none;border:0}.print-sheet{display:block!important;max-width:none;margin:0;padding:20mm}.table{min-width:0}.report-filter{display:none}}

/* Licenciamento central */
.license-blocked-page{min-height:100vh;margin:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#eefcff 0,#f5f7fb 45%,#edf1f6 100%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#132238}
.license-blocked-card{width:min(620px,100%);background:#fff;border:1px solid #e4eaf0;border-radius:24px;box-shadow:0 24px 70px rgba(22,42,64,.14);padding:38px;text-align:center}
.license-lock-icon{width:76px;height:76px;border-radius:22px;margin:0 auto 18px;display:grid;place-items:center;font-size:34px;background:#fff1f0;border:1px solid #ffd7d2}
.license-blocked-card h1{font-size:30px;margin:14px 0 10px}.license-message{font-size:17px;line-height:1.6;color:#45576d;margin:0 auto 24px;max-width:520px}
.license-block-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;text-align:left;margin:22px 0;padding:14px;border-radius:16px;background:#f7f9fc}
.license-block-details div{padding:10px 12px;background:#fff;border:1px solid #e7edf3;border-radius:12px}.license-block-details span{display:block;font-size:12px;color:#718096;margin-bottom:4px}.license-block-details b{display:block;overflow-wrap:anywhere}
.license-actions{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.license-token-reveal{margin-top:18px;border:1px solid #8bd7c5;background:#effcf8}.license-token-reveal code{display:block;padding:14px;border-radius:12px;background:#102b35;color:#d8fff5;font-size:15px;overflow-wrap:anywhere;user-select:all}
.license-rule{padding:12px 0;border-bottom:1px solid #edf1f5}.license-rule:last-child{border-bottom:0}.license-rule p{margin:5px 0 0;color:#617085;line-height:1.55}
.code-block{background:#102b35;color:#d9fff6;border-radius:14px;padding:16px;white-space:pre-wrap;overflow:auto;font-size:12px;line-height:1.55;min-height:245px}
@media(max-width:680px){.license-blocked-card{padding:26px 18px}.license-blocked-card h1{font-size:25px}.license-block-details{grid-template-columns:1fr}}

/* PetCare v2.2.0 - Farmácia Inteligente */
.pharma-smart-search{margin-bottom:16px;padding:16px 18px}.pharma-search-main{display:flex;align-items:center;gap:10px}.pharma-search-main input{flex:1;border:0;background:#f8fbfd;font-size:16px;padding:15px 12px;border-radius:14px;outline:1px solid #d5eef2}.pharma-search-icon{font-size:22px;color:#078ca2}.voice-btn{border:0;background:linear-gradient(135deg,#0f9aa8,#087f8f);color:#fff;border-radius:14px;width:48px;height:48px;font-size:20px;cursor:pointer;box-shadow:0 10px 18px rgba(7,140,162,.18)}.voice-btn.small{width:42px;height:42px;border-radius:50%}.voice-btn.listening{animation:pulseVoice 1s infinite}.pharma-search-help{font-size:13px;color:#6b7c8f;margin:9px 0 0 34px}.voice-dot{display:inline-block;width:8px;height:8px;background:#13ad7f;border-radius:50%;margin-right:8px}@keyframes pulseVoice{0%{box-shadow:0 0 0 0 rgba(7,140,162,.45)}70%{box-shadow:0 0 0 14px rgba(7,140,162,0)}100%{box-shadow:0 0 0 0 rgba(7,140,162,0)}}
.pharma-filter{align-items:end;margin-bottom:18px}.pharma-layout{display:grid;grid-template-columns:280px minmax(0,1fr) 310px;gap:18px}.pharma-left,.pharma-right,.medicine-side{display:flex;flex-direction:column;gap:18px}.pharma-main,.medicine-main{display:flex;flex-direction:column;gap:18px}.patient-row{display:flex;align-items:center;gap:14px}.patient-row h2{margin:0 0 6px}.patient-row p{margin:0;color:#6b7c8f}.patient-facts{display:grid;gap:10px;margin-top:16px}.patient-facts span{display:flex;justify-content:space-between;gap:12px;background:#f8fbfd;border:1px solid #e4eef4;border-radius:12px;padding:10px}.safety-card{background:linear-gradient(135deg,#fff7e8,#fff)}.safety-card p{color:#725b16;margin-bottom:0}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.symptom-chip{background:#dff6f3;color:#087f8f;border-radius:999px;padding:8px 12px;font-weight:700;font-size:13px}.voice-wave{display:flex;align-items:center;gap:6px;margin-top:18px;background:#f8fbfd;border:1px solid #e4eef4;border-radius:15px;padding:10px}.voice-wave span{display:block;width:5px;background:#12a0a8;border-radius:999px}.voice-wave span:nth-child(2){height:12px}.voice-wave span:nth-child(3){height:23px}.voice-wave span:nth-child(4){height:16px}.voice-wave span:nth-child(5){height:30px}.voice-wave span:nth-child(6){height:18px}.voice-wave span:nth-child(7){height:25px}.voice-wave b{margin-left:auto;color:#6b7c8f;font-size:13px}.orientation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.orientation-grid h4{margin:0 0 8px}.check-list,.warn-list,.danger-list,.info-list{margin:0;padding-left:0;list-style:none}.check-list li,.warn-list li,.danger-list li,.info-list li{position:relative;padding-left:24px;margin:8px 0;color:#26384d}.check-list li:before{content:'✓';position:absolute;left:0;color:#13ad7f;font-weight:900}.warn-list li:before{content:'!';position:absolute;left:0;color:#d99100;font-weight:900}.danger-list li:before{content:'!';position:absolute;left:0;color:#e04545;font-weight:900}.info-list li:before{content:'•';position:absolute;left:4px;color:#1677d2;font-weight:900}.smart-alert{border-radius:14px;padding:14px 14px;margin:10px 0;border:1px solid}.smart-alert b{display:block;margin-bottom:5px}.smart-alert span{font-size:13px;color:#516176}.smart-alert.red{background:#fff2f2;border-color:#ffd5d5;color:#c51f1f}.smart-alert.yellow{background:#fff8e7;border-color:#ffe1a5;color:#9a6500}.smart-alert.blue{background:#eef6ff;border-color:#cfe5ff;color:#1464aa}.quick-actions{display:grid;gap:10px}.quick-actions a,.quick-actions button{display:flex;align-items:center;gap:10px;justify-content:center;border:1px solid #b9e2e8;background:#fff;color:#087f8f;border-radius:12px;padding:12px;font-weight:800;text-decoration:none;cursor:pointer}.quick-actions a:hover,.quick-actions button:hover{background:#eefbfc}.pharma-save-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.medicine-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.medicine-hero{display:flex;gap:22px;align-items:flex-start}.medicine-box-art{width:150px;min-height:145px;border-radius:18px;background:linear-gradient(160deg,#ffffff 0,#ffffff 55%,#0b91a0 56%,#0a7788 100%);border:1px solid #dbe8ef;box-shadow:0 18px 35px rgba(37,64,88,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:42px}.medicine-box-art span{font-size:18px;font-weight:900;color:#18243a}.medicine-box-art small{font-size:12px;color:#54687c}.medicine-tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 14px}.medicine-tags span{background:#e9f8f9;color:#087f8f;border:1px solid #bfe8ec;border-radius:999px;padding:7px 11px;font-weight:800;font-size:12px}.medicine-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.medicine-facts div{background:#f8fbfd;border:1px solid #e4eef4;border-radius:12px;padding:10px}.medicine-facts b{display:block;color:#6b7c8f;font-size:12px;margin-bottom:4px}.medicine-facts span{font-weight:800;color:#18243a}.purpose-box{background:#fffaf0;border-color:#ffd890}.purpose-box h3{margin-bottom:6px;color:#805600}.purpose-box p{font-weight:800}.medicine-info-grid .card{padding:15px}.related-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.related-products a{border:1px solid #dce9ef;border-radius:14px;padding:14px;text-decoration:none;color:#18243a;background:#fbfdff}.related-products b,.related-products span,.related-products small{display:block}.related-products span{color:#087f8f;margin:6px 0}.verification-card{gap:10px}.verify{border:1px solid;border-radius:12px;padding:12px;margin:9px 0;font-weight:800}.verify.ok{border-color:#bdebdc;background:#f0fff8;color:#08774f}.verify.warn{border-color:#ffdf9c;background:#fff9eb;color:#9a6500}
@media(max-width:1180px){.pharma-layout,.medicine-layout{grid-template-columns:1fr}.pharma-left,.pharma-right,.medicine-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.orientation-grid{grid-template-columns:1fr}.medicine-facts{grid-template-columns:1fr}.related-products{grid-template-columns:1fr}}@media(max-width:760px){.pharma-search-main{flex-wrap:wrap}.pharma-search-main input{min-width:100%}.pharma-left,.pharma-right,.medicine-side{grid-template-columns:1fr}.medicine-hero{flex-direction:column}.pharma-save-form .btn{width:100%}}


/* PetCare v2.3.0 - Central WhatsApp */
.whatsapp-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#f5fffd,#eefaff);border:1px solid #d8f0f1}
.whatsapp-hero h2{font-size:28px;margin:8px 0;color:#08384a}.whatsapp-hero p{color:#52677a;max-width:780px;margin:0 0 14px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.whatsapp-provider{min-width:240px;background:#fff;border:1px solid #d9edf1;border-radius:16px;padding:16px;box-shadow:0 10px 24px rgba(18,64,80,.06)}.whatsapp-provider b,.whatsapp-provider span,.whatsapp-provider em{display:block}.whatsapp-provider b{color:#087f8f}.whatsapp-provider span{margin:6px 0;color:#53677a}.whatsapp-provider em{font-style:normal;font-weight:900}.whatsapp-provider .ok{color:#08774f}.whatsapp-provider .warn{color:#9a6500}
.message-mini{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #edf2f5}.message-mini:last-child{border-bottom:0}.message-mini small{display:block;color:#708295}.message-icon{width:38px;height:38px;border-radius:12px;background:#eefbfd;color:#087f8f;display:grid;place-items:center;font-size:20px}.grow{flex:1}
.automation-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #edf2f5}.automation-row:last-child{border-bottom:0}.automation-row small{display:block;color:#708295;margin-top:3px}
.whatsapp-trigger-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.whatsapp-trigger-grid div{border:1px solid #e0eef2;background:#fbfeff;border-radius:16px;padding:15px;display:flex;flex-direction:column;gap:6px}.whatsapp-trigger-grid b{color:#10233b}.whatsapp-trigger-grid span{color:#5d7083;font-size:13px;line-height:1.35}
.variable-tags,.whatsapp-status-legend,.automation-examples{display:flex;flex-wrap:wrap;gap:8px}.variable-tags span,.automation-examples span{background:#eefafa;border:1px solid #cfedf1;color:#087f8f;border-radius:999px;padding:7px 10px;font-weight:800;font-size:12px}.automation-examples span{background:#f8fbfd;color:#53677a;border-color:#e3edf2}
.check-inline{display:flex;align-items:center;gap:8px;font-weight:800;color:#33485c;margin:6px 0 14px}
@media(max-width:1180px){.whatsapp-hero{flex-direction:column;align-items:flex-start}.whatsapp-trigger-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.whatsapp-trigger-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.whatsapp-provider{min-width:100%;width:100%}}


/* PetCare v2.4.0 - Central de Relatórios e Impressões */
.report-center-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#f7fffd,#eef7ff);border:1px solid #d9edf2}
.report-center-hero h2{font-size:28px;margin:8px 0;color:#0a3445}.report-center-hero p{color:#53687b;max-width:860px;margin:0 0 14px}.report-output-card{min-width:260px;background:#fff;border:1px solid #d9edf2;border-radius:18px;padding:18px;box-shadow:0 10px 24px rgba(18,64,80,.06)}.report-output-card b,.report-output-card span,.report-output-card em{display:block}.report-output-card b{color:#087f8f}.report-output-card span{margin:8px 0;color:#53687b}.report-output-card em{font-style:normal;color:#08774f;font-weight:900}
.report-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-category-card{min-height:245px}.report-short-list{display:flex;flex-direction:column;gap:10px}.report-short-list a{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid #e1edf2;background:#fbfeff;border-radius:14px;text-decoration:none;color:#17283c;transition:.2s}.report-short-list a:hover{transform:translateY(-1px);border-color:#9edbe3;box-shadow:0 10px 24px rgba(10,100,120,.08)}.report-short-list a>span{width:36px;height:36px;border-radius:12px;background:#edfafa;display:grid;place-items:center}.report-short-list b,.report-short-list small{display:block}.report-short-list small{color:#66798b;line-height:1.35;margin-top:3px}
.report-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:#fff;border:1px solid #dfeaf0;border-radius:18px;padding:14px;margin-bottom:18px}.report-filter .field{min-width:150px;margin:0}.print-page{background:#fff}.print-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid #e9f0f3;padding-bottom:14px;margin-bottom:14px}.print-header h2{margin:0;color:#0a3445}.print-header p{margin:4px 0 0;color:#66798b}.print-meta{text-align:right}.print-meta b,.print-meta span,.print-meta small{display:block}.print-meta span{font-weight:900;color:#0a3445}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.report-summary div{border:1px solid #e1edf2;background:#f8fcfd;border-radius:14px;padding:12px}.report-summary b,.report-summary span{display:block}.report-summary b{font-size:18px;color:#087f8f}.report-summary span{color:#66798b;font-size:13px}.report-table th{white-space:nowrap}.print-footer{margin-top:16px;padding-top:10px;border-top:1px solid #e9f0f3;color:#6b7e90;font-size:12px;text-align:center}.print-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.print-format-grid div{border:1px solid #e1edf2;border-radius:14px;background:#fbfeff;padding:14px}.print-format-grid b,.print-format-grid span{display:block}.print-format-grid b{color:#087f8f}.print-format-grid span{color:#66798b;font-size:13px;margin-top:4px}
@media(max-width:1180px){.report-center-hero{flex-direction:column;align-items:flex-start}.report-output-card{min-width:100%;width:100%}.report-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.report-category-grid,.report-summary,.print-format-grid{grid-template-columns:1fr}.print-header{flex-direction:column}.print-meta{text-align:left}.report-filter .btn{width:100%}}
@media print{.sidebar,.topbar,.page-head,.no-print,.mobile-overlay{display:none!important}.main{margin:0!important;width:100%!important}.content{padding:0!important}.card{box-shadow:none!important;border:0!important}.print-page{font-size:11px}.report-table th,.report-table td{padding:6px!important}.print-footer{position:fixed;bottom:0;left:0;right:0}}


/* PetCare v2.4.2 - Botão flutuante Retornar */
.floating-return{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;align-items:center;gap:8px;border:0;border-radius:999px;background:linear-gradient(135deg,#078ca2,#05a987);color:#fff;padding:13px 18px;font-weight:900;box-shadow:0 18px 40px rgba(7,140,162,.28);cursor:pointer;transition:.2s;letter-spacing:.01em}.floating-return:hover{transform:translateY(-2px);box-shadow:0 22px 46px rgba(7,140,162,.36)}.floating-return-icon{font-size:20px;line-height:1}.floating-return-text{font-size:14px}.floating-return:focus{outline:3px solid rgba(7,140,162,.25);outline-offset:3px}
@media(max-width:760px){.floating-return{right:14px;bottom:14px;padding:13px 14px}.floating-return-text{display:none}.floating-return-icon{font-size:22px}}
@media print{.floating-return{display:none!important}}


/* PetCare v2.4.3 - Perfis e Permissões Dinâmicas */
.profiles-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#f6fffd,#f1f7ff);border:1px solid #d8edf3}
.profiles-hero h2{font-size:28px;margin:8px 0;color:#0a3445}.profiles-hero p{color:#53687b;max-width:860px;margin:0}
.profile-stats{min-width:170px;background:#fff;border:1px solid #d9edf2;border-radius:18px;padding:18px;text-align:center;box-shadow:0 10px 24px rgba(18,64,80,.06)}.profile-stats b{display:block;font-size:34px;color:#087f8f}.profile-stats span{display:block;color:#66798b;font-weight:800}
.permissions-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px;background:#f8fcfd;border:1px solid #e1edf2;border-radius:14px}
.permission-groups{display:flex;flex-direction:column;gap:12px;max-height:680px;overflow:auto;padding-right:4px}.permission-group{border:1px solid #dfeaf0;border-radius:16px;background:#fff}.permission-group summary{cursor:pointer;padding:14px 16px;font-weight:900;color:#183044;display:flex;justify-content:space-between;gap:10px}.permission-group summary span{font-weight:700;color:#66798b;font-size:12px}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 14px 14px}.permission-grid label{display:flex;align-items:flex-start;gap:8px;border:1px solid #e5eef3;background:#fbfeff;border-radius:12px;padding:10px;cursor:pointer}.permission-grid label:hover{border-color:#a8dce4}.permission-grid input{margin-top:3px}.permission-grid span{display:block;font-weight:800;color:#1e3348}.permission-grid small{display:block;color:#6b7c8f;font-size:11px;margin-top:2px}
@media(max-width:1180px){.profiles-hero{flex-direction:column;align-items:flex-start}.profile-stats{min-width:100%;width:100%}.permission-grid{grid-template-columns:1fr}}@media(max-width:760px){.permissions-toolbar .btn{width:100%}.permission-groups{max-height:none}}


/* PetCare v2.4.5 - Controle manual da licença */
.license-control-panel{border:1px solid #dfeaf0;background:#f8fcfd;border-radius:18px;padding:14px;margin:14px 0}
.license-control-panel h4{margin:0;color:#0a3445}.license-control-panel p{margin:4px 0 0;color:#66798b}
.license-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.license-quick-actions .btn{min-width:120px}
@media(max-width:760px){.license-quick-actions .btn{width:100%}}
