/* Centro MÃ©dico Maternidade â€” identidade sofisticada */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root { --navy:#071a5c; --navy-light:#193b9b; --red:#e21b23; --paper:#f6f8fc; --surface:#fff; --ink:#16234e; --muted:#68738d; --line:#dce2ef; --primary:var(--navy)!important; --danger:var(--red)!important; --bg:var(--paper)!important; --text:var(--ink)!important; --text-muted:var(--muted)!important; }
html { background:var(--paper); } body { color:var(--ink)!important; background:radial-gradient(circle at 92% -10%,rgba(226,27,35,.11),transparent 27rem),radial-gradient(circle at -8% 106%,rgba(25,59,155,.09),transparent 28rem),var(--paper)!important; font-family:"DM Sans","Segoe UI",Arial,sans-serif!important; -webkit-font-smoothing:antialiased; }
body::before { content:""; position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.38; background-image:linear-gradient(rgba(7,26,92,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(7,26,92,.025) 1px,transparent 1px); background-size:32px 32px; }
/* NavegaÃ§Ã£o administrativa */
.sidebar { background:linear-gradient(160deg,#061653 0%,#0b2878 72%,#183b9c 100%)!important; border-right:1px solid rgba(255,255,255,.12)!important; box-shadow:14px 0 42px rgba(7,26,92,.11)!important; }.brand { color:#fff!important; padding:26px 22px!important; font-family:"Playfair Display",Georgia,serif!important; font-size:1.08rem!important; letter-spacing:-.015em; }.brand i { color:#fff!important; }.menu-section { color:rgba(255,255,255,.54)!important; font-size:.66rem!important; font-weight:700!important; letter-spacing:.15em!important; text-transform:uppercase; }.menu-item { margin:3px 10px!important; border-radius:11px!important; color:rgba(255,255,255,.78)!important; transition:transform .18s,background .18s,color .18s!important; }.menu-item:hover { color:#fff!important; background:rgba(255,255,255,.12)!important; transform:translateX(3px); }.menu-item.active { color:var(--navy)!important; background:#fff!important; box-shadow:0 7px 19px rgba(0,10,48,.2)!important; }
.topbar,header { background:rgba(255,255,255,.87)!important; border-bottom:1px solid var(--line)!important; box-shadow:0 4px 25px rgba(7,26,92,.05)!important; backdrop-filter:blur(13px); }.page-title,.topbar h1,.topbar h2 { color:var(--navy)!important; font-family:"Playfair Display",Georgia,serif!important; font-weight:600!important; letter-spacing:-.03em; }.user-info,#operatorDisplay { color:#43517b!important; background:#f0f3fc!important; border:1px solid #d9e0f1!important; border-radius:999px!important; padding:.48rem .82rem!important; }
/* EspaÃ§os de trabalho */
.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,.94)!important; border:1px solid var(--line)!important; border-radius:17px!important; box-shadow:0 14px 35px rgba(7,26,92,.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:var(--navy)!important; font-family:"Playfair Display",Georgia,serif!important; letter-spacing:-.02em; }.table,.table td,.table th { color:#2a3762!important; border-color:#e1e6f0!important; }.table thead th { color:#14266a!important; background:#eef1fb!important; border-bottom-width:1px!important; font-size:.73rem!important; letter-spacing:.06em; text-transform:uppercase; }.table tbody tr { transition:background .18s!important; }.table tbody tr:hover { background:#f4f6fc!important; }
/* FormulÃ¡rios e comandos */
.input,.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea { color:#24325c!important; background:#fff!important; border:1px solid #cfd7e9!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:#193b9b!important; box-shadow:0 0 0 4px rgba(25,59,155,.12)!important; outline:0!important; }.form-label,label { color:#3e4d77!important; font-weight:700!important; }
.btn-primary,.btn-login,.btn-primary:not(:disabled):not(.disabled),.login-button { border-color:var(--navy)!important; background:linear-gradient(115deg,#071a5c,#193b9b)!important; box-shadow:0 8px 18px rgba(7,26,92,.19)!important; }.btn-primary:hover,.btn-login:hover,.login-button:hover { filter:brightness(1.08); transform:translateY(-1px); }.btn-secondary,.btn-outline-light { color:#17296a!important; background:#f5f7fc!important; border-color:#cbd4ea!important; }.btn-danger { background:var(--red)!important; border-color:var(--red)!important; }.nav-pills { gap:.45rem; }.nav-pills .nav-link { color:#56638a!important; background:rgba(255,255,255,.8)!important; border:1px solid var(--line)!important; border-radius:10px!important; font-weight:700!important; }.nav-pills .nav-link.active { color:#fff!important; background:var(--navy)!important; border-color:var(--navy)!important; box-shadow:0 6px 15px rgba(7,26,92,.17)!important; }.badge,.status-badge { color:var(--navy)!important; background:#eef1fb!important; border:1px solid #d4dcef!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(25,59,155,.5)!important; outline-offset:2px!important; }
/* A prÃ³pria pÃ¡gina de acesso */
.brand-panel { background:linear-gradient(145deg,#061653 0%,#0b2878 56%,#193b9b 100%)!important; }.brand-panel::before { background:radial-gradient(circle,rgba(226,27,35,.28),transparent 67%)!important; }.brand-panel::after { border-color:rgba(255,255,255,.2)!important; box-shadow:0 0 0 62px rgba(255,255,255,.04),0 0 0 124px rgba(255,255,255,.025)!important; }.brand-mark__icon,.eyebrow,.trust i { color:#fff!important; }.access-panel { background:linear-gradient(135deg,#fff,#f1f4fc)!important; }.card-kicker,.card-footer i { color:var(--red)!important; }.login-button { background:linear-gradient(110deg,#071a5c,#183b9c)!important; }.quick-button:hover { color:var(--navy)!important; border-color:#9faee0!important; background:#f1f4fc!important; }
@media (max-width:768px) { .glass-card,.card,.modal-content { border-radius:13px!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; } }