/* Identidade visual partilhada — Centro Médico Riqueza é Ter Saúde */
:root { --primary:#0e6a72!important; --success:#16856f; --danger:#b74450; --bg:#f4f8f7; --surface:#fff; --ink:#17383d; --text:#17383d; --text-muted:#6c7f80; --border:#d7e6e2; --sidebar:#0c414b; }
html { background:var(--bg); }
body { color:var(--ink)!important; background:radial-gradient(circle at 85% -10%,rgba(91,199,181,.16),transparent 27rem),var(--bg)!important; font-family:"DM Sans","Segoe UI",Arial,sans-serif!important; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.35; background-image:linear-gradient(rgba(14,106,114,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(14,106,114,.025) 1px,transparent 1px); background-size:28px 28px; z-index:-1; }
.sidebar { background:linear-gradient(180deg,#0b3e48,#0d5960)!important; border-right:1px solid rgba(255,255,255,.1)!important; box-shadow:12px 0 35px rgba(8,53,60,.08)!important; }
.brand { padding:25px 21px!important; color:#fff!important; font-size:1rem!important; letter-spacing:.015em; }.brand i { color:#9ee9d9!important; }.menu-section { color:rgba(211,247,238,.58)!important; font-size:.66rem!important; letter-spacing:.14em!important; text-transform:uppercase; }
.menu-item { margin:3px 10px!important; border-radius:10px!important; color:rgba(244,255,252,.76)!important; transition:background .2s,color .2s,transform .2s!important; }.menu-item:hover { color:#fff!important; background:rgba(207,255,244,.1)!important; transform:translateX(2px); }.menu-item.active { color:#093e48!important; background:#dff5ee!important; box-shadow:0 5px 16px rgba(1,31,36,.15)!important; }
.topbar,header { background:rgba(255,255,255,.86)!important; border-bottom:1px solid var(--border)!important; box-shadow:0 4px 24px rgba(16,69,72,.04)!important; backdrop-filter:blur(12px); }.page-title,.topbar h1,.topbar h2 { color:#183b40!important; font-weight:700!important; letter-spacing:-.025em; }.user-info,#operatorDisplay { color:#527074!important; background:#edf7f4!important; border:1px solid #d4e9e3!important; border-radius:999px!important; padding:.48rem .8rem!important; }
.main-content,.workspace,.container-fluid { background:transparent!important; }.glass-card,.card,.modal-content,.offcanvas,.table-container { color:var(--ink)!important; background:rgba(255,255,255,.93)!important; border:1px solid var(--border)!important; border-radius:16px!important; box-shadow:0 12px 32px rgba(16,69,72,.07)!important; }.glass-card,.card { overflow:hidden; }.glass-card h1,.glass-card h2,.glass-card h3,.glass-card h4,.card h1,.card h2,.card h3,.card h4 { color:#124d55!important; }
.table,.table td,.table th { color:#294b4f!important; border-color:#e0ece9!important; }.table thead th { color:#1b545b!important; background:#eaf5f1!important; border-bottom-width:1px!important; font-size:.74rem; letter-spacing:.055em; text-transform:uppercase; }.table tbody tr { transition:background .18s; }.table tbody tr:hover { background:#f2faf7!important; }
.input,.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea { color:#24464b!important; background:#fff!important; border:1px solid #cfe0dc!important; border-radius:10px!important; box-shadow:none!important; }.input:focus,.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus { border-color:#15909a!important; box-shadow:0 0 0 4px rgba(21,144,154,.12)!important; outline:0!important; }.form-label,label { color:#426267!important; font-weight:700!important; }
.btn-primary,.btn-login,.btn-primary:not(:disabled):not(.disabled),.login-button { border-color:#0d6970!important; background:linear-gradient(115deg,#0b5962,#0e7677)!important; box-shadow:0 7px 16px rgba(11,89,98,.16)!important; }.btn-primary:hover,.btn-login:hover,.login-button:hover { filter:brightness(1.05); transform:translateY(-1px); }.btn-secondary,.btn-outline-light { color:#24545a!important; background:#f4faf8!important; border-color:#bcd5d0!important; }.btn-danger { background:#b74450!important; border-color:#b74450!important; }
.nav-pills { gap:.45rem; }.nav-pills .nav-link { color:#547276!important; background:rgba(255,255,255,.72)!important; border:1px solid #d7e6e2!important; border-radius:10px!important; font-weight:700; }.nav-pills .nav-link.active { color:#fff!important; background:#0d6970!important; border-color:#0d6970!important; box-shadow:0 6px 15px rgba(13,105,112,.16); }.badge,.status-badge { color:#0b625c!important; background:#dff5ee!important; border:1px solid #c7e9df!important; }
button,a,.nav-link { transition:background .2s,border-color .2s,color .2s,transform .2s,box-shadow .2s!important; }button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid rgba(78,193,181,.55)!important; outline-offset:2px!important; }
@media (max-width:768px) { .sidebar { box-shadow:8px 0 28px rgba(8,53,60,.16)!important; }.glass-card,.card,.modal-content { border-radius:12px!important; }.nav-pills { flex-wrap:nowrap; overflow-x:auto; padding-bottom:.25rem; }.nav-pills .nav-link { white-space:nowrap; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } }

/* Paleta oficial ??? azul-marinho e vermelho do Centro M??dico Maternidade */
:root { --primary:#071a5c!important; --danger:#e21b23; --bg:#f6f8fc; --ink:#071a5c; --text:#182451; --text-muted:#64708d; --border:#dce2ef; --sidebar:#071a5c; }
body { background:radial-gradient(circle at 85% -10%,rgba(226,27,35,.10),transparent 27rem),var(--bg)!important; }
.sidebar { background:linear-gradient(180deg,#061653,#0b2878)!important; box-shadow:12px 0 35px rgba(7,26,92,.12)!important; }
.brand i { color:#fff!important; }.menu-section { color:rgba(255,255,255,.56)!important; }.menu-item { color:rgba(255,255,255,.78)!important; }.menu-item:hover { background:rgba(255,255,255,.12)!important; }.menu-item.active { color:#071a5c!important; background:#fff!important; box-shadow:0 5px 16px rgba(1,13,54,.18)!important; }
.topbar,header { box-shadow:0 4px 24px rgba(7,26,92,.05)!important; }.page-title,.topbar h1,.topbar h2,.glass-card h1,.glass-card h2,.glass-card h3,.glass-card h4,.card h1,.card h2,.card h3,.card h4 { color:#071a5c!important; }.user-info,#operatorDisplay { color:#31416e!important; background:#f0f3fb!important; border-color:#dce2ef!important; }
.glass-card,.card,.modal-content,.offcanvas,.table-container { box-shadow:0 12px 32px rgba(7,26,92,.07)!important; }.table,.table td,.table th { color:#2a3762!important; border-color:#e1e6f0!important; }.table thead th { color:#14266a!important; background:#eef1fb!important; }.table tbody tr:hover { background:#f5f7fc!important; }
.input,.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea { color:#24325c!important; border-color:#cfd7e9!important; }.input:focus,.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus { border-color:#183b9c!important; box-shadow:0 0 0 4px rgba(24,59,156,.12)!important; }.form-label,label { color:#3d4d78!important; }
.btn-primary,.btn-login,.btn-primary:not(:disabled):not(.disabled),.login-button { border-color:#071a5c!important; background:linear-gradient(115deg,#071a5c,#183b9c)!important; box-shadow:0 7px 16px rgba(7,26,92,.18)!important; }.btn-primary:hover,.btn-login:hover,.login-button:hover { filter:brightness(1.08); }.btn-secondary,.btn-outline-light { color:#17296a!important; background:#f4f6fc!important; border-color:#cbd4ea!important; }.btn-danger { background:#e21b23!important; border-color:#e21b23!important; }
.nav-pills .nav-link { color:#536188!important; border-color:#dce2ef!important; }.nav-pills .nav-link.active { background:#071a5c!important; border-color:#071a5c!important; box-shadow:0 6px 15px rgba(7,26,92,.18); }.badge,.status-badge { color:#071a5c!important; background:#eef1fb!important; border-color:#d4dcef!important; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline-color:rgba(24,59,156,.55)!important; }