/* Approved institutional header. Scoped to avoid changing forms and dashboards. */
body.portal-redesign #profileModalBackdrop .profile-modal{width:min(760px,calc(100vw - 32px))!important;max-width:760px!important;padding:26px!important;border-radius:14px!important;box-sizing:border-box!important;font-family:'Segoe UI',Arial,sans-serif!important;place-items:normal!important}
body.portal-redesign #profileModalBackdrop .profile-modal>header{align-items:flex-start!important;gap:18px!important;border-bottom:1px solid #e0e8f0!important;padding:0 0 20px!important;margin-bottom:22px!important;text-align:left!important;width:100%!important}
body.portal-redesign #profileModalBackdrop .profile-eyebrow{font-size:10px;letter-spacing:1px;font-weight:600;color:#64788d}
body.portal-redesign #profileModalBackdrop .profile-modal h2{font-size:24px!important;font-weight:650!important;line-height:1.3!important;margin:4px 0!important}
body.portal-redesign #profileModalBackdrop .profile-intro{font-size:12px;color:#64788d;margin:5px 0 0;line-height:1.5}
body.portal-redesign #profileModalBackdrop .profile-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;width:100%}
body.portal-redesign #profileModalBackdrop .profile-layout section{min-width:0;padding:0;background:transparent;border:0}
body.portal-redesign #profileModalBackdrop .profile-layout h3{font-size:15px;font-weight:600;color:#12365f;margin:0 0 15px}
body.portal-redesign #profileModalBackdrop .profile-security{border-left:1px solid #e0e8f0!important;padding-left:26px!important}
body.portal-redesign #profileModalBackdrop .profile-section-hint{font-size:12px;line-height:1.5;color:#64788d;margin:-6px 0 16px}
body.portal-redesign #profileModalBackdrop .profile-layout form{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important}
body.portal-redesign #profileModalBackdrop .profile-layout label{width:100%!important;font-size:12px!important;font-weight:500!important;line-height:1.5!important;margin:0 0 15px!important;gap:6px!important;color:#425a72!important}
body.portal-redesign #profileModalBackdrop .profile-layout input:not([type=hidden]):not([type=file]){display:block!important;width:100%!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important;height:43px!important;border-radius:7px!important;padding:10px 12px!important;font-size:14px!important;font-weight:400!important}
body.portal-redesign #profileModalBackdrop .profile-layout input:disabled{background:#f3f6fa!important;color:#687b8f!important}
body.portal-redesign #profileModalBackdrop .profile-layout input:focus{outline:2px solid #65a9d3;outline-offset:1px;border-color:#006197!important}
body.portal-redesign #profileModalBackdrop .profile-photo-row{justify-content:flex-start!important;gap:14px!important;margin:0 0 20px!important;padding:12px!important;background:#f4f8fc;border-radius:8px}
body.portal-redesign #profileModalBackdrop .profile-photo-preview{width:62px!important;height:62px!important;border:2px solid #c9dcec!important;box-shadow:none!important}
body.portal-redesign #profileModalBackdrop .profile-photo-row label.secondary{display:inline-flex!important;width:auto!important;margin:0!important;padding:7px 11px!important;border:1px solid #c9dcec;border-radius:6px;background:#fff;color:#006197!important;font-size:12px!important;font-weight:500!important;cursor:pointer}
body.portal-redesign #profileModalBackdrop .profile-actions{margin-top:20px!important;justify-content:flex-start!important}
body.portal-redesign #profileModalBackdrop button.primary{background:#006197!important;font-size:13px!important;font-weight:500!important;border-radius:7px!important;padding:10px 16px!important;min-height:40px!important}
body.portal-redesign #profileModalBackdrop .close-profile{font-weight:500!important;border-radius:6px!important;white-space:nowrap;min-height:36px}
@media(max-width:620px){body.portal-redesign #profileModalBackdrop .profile-modal{padding:20px!important}body.portal-redesign #profileModalBackdrop .profile-layout{grid-template-columns:1fr;gap:24px}body.portal-redesign #profileModalBackdrop .profile-security{padding:22px 0 0!important;border-left:0!important;border-top:1px solid #e0e8f0!important}body.portal-redesign #profileModalBackdrop .profile-intro{max-width:230px}}
body.portal-redesign{font-family:'Segoe UI',Inter,Roboto,Arial,sans-serif}
body.portal-redesign:not(.locked) .topbar{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:24px!important;min-height:106px!important;height:auto!important;padding:22px 32px!important;background:#006197!important;overflow:hidden!important;box-shadow:none!important}
body.portal-redesign .topbar .topbar-obras,body.portal-redesign .topbar .topbar-softplan{display:block!important;position:relative!important;inset:auto!important;transform:none!important;align-self:center!important;grid-column:auto!important;grid-row:auto!important;justify-self:auto!important;margin:0!important;padding:0!important;height:46px!important;overflow:hidden!important;background:transparent!important}
body.portal-redesign .topbar .topbar-obras{order:0;flex:0 0 150px!important;width:150px!important}
body.portal-redesign .topbar .topbar-softplan{order:2;flex:0 0 115px!important;width:115px!important;margin-left:auto!important}
body.portal-redesign .topbar .topbar-obras img,body.portal-redesign .topbar .topbar-softplan img{display:block!important;position:absolute!important;top:50%!important;left:0!important;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:translateY(-50%)!important;filter:none!important}
body.portal-redesign .topbar .brand{order:1;flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;justify-content:flex-start!important;text-align:left!important;padding:0 0 0 24px!important;border-left:1px solid rgba(255,255,255,.26)!important;margin:0!important;align-self:center!important}
body.portal-redesign .topbar .brand>div{display:grid!important;justify-items:start!important;width:auto!important;gap:4px!important;line-height:1.4!important}
body.portal-redesign .topbar .brand strong{font-family:'Segoe UI',Inter,Arial,sans-serif!important;font-size:24px!important;font-weight:650!important;line-height:1.2!important;letter-spacing:-.4px!important;color:#fff!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin:0!important}
body.portal-redesign .topbar .topbar-unit{font-size:10px!important;font-weight:500!important;letter-spacing:.8px!important;line-height:1.4!important;color:#d3e8f4!important;margin:0!important}
body.portal-redesign .topbar .topbar-subtitle{font-size:12px!important;font-weight:400!important;line-height:1.5!important;color:#d3e8f4!important;margin:0!important}
body.portal-redesign .topbar #apiStatus{display:none!important}
body.portal-redesign:not(.locked) .tabs{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:wrap!important;min-height:62px!important;padding:8px 28px!important;background:#edf2f7!important;border-bottom:1px solid #d6e2ee!important;box-shadow:0 3px 8px rgba(18,54,95,.04)!important;overflow:visible!important}
body.portal-redesign .tabs>button[data-tab]{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;padding:10px 13px!important;min-height:42px!important;border:1px solid transparent!important;border-radius:6px!important;background:transparent!important;color:#264762!important;font-size:13px!important;line-height:1.4!important;font-family:inherit!important;font-weight:500!important;box-shadow:none!important;white-space:nowrap!important}
body.portal-redesign .tabs>button[data-tab]:hover{background:#dfe9f3!important}
body.portal-redesign .tabs>button[data-tab].active{background:#006197!important;color:#fff!important;border-color:#006197!important;box-shadow:0 2px 5px rgba(0,67,108,.12)!important}
body.portal-redesign .tabs>button[data-tab=analista]{--nav-icon:#0369a1}
body.portal-redesign .tabs>button[data-tab=gestao]{--nav-icon:#15803d}
body.portal-redesign .tabs>button[data-tab=relatorio]{--nav-icon:#b45309}
body.portal-redesign .tabs>button[data-tab=sobDemanda]{--nav-icon:#0f766e}
body.portal-redesign .tabs>button[data-tab=gmuds]{--nav-icon:#7e22ce}
body.portal-redesign .tabs>button[data-tab=admin]{--nav-icon:#be185d}
body.portal-redesign .tabs .nav-icon{display:block!important;flex:0 0 auto;width:19px;height:19px;color:var(--nav-icon);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
body.portal-redesign .tabs>button.active .nav-icon{background:#fff;border-radius:5px;padding:4px;width:25px;height:25px}
body.portal-redesign .tabs .nav-account-actions{display:flex!important;align-items:center!important;gap:10px!important;margin-left:auto!important;padding-left:12px!important;background:transparent!important;position:static!important;flex:0 0 auto!important}
body.portal-redesign .tabs .nav-account-actions button{padding:9px 13px!important;min-height:40px!important;background:#fff!important;color:#264762!important;border:1px solid #ccdbe8!important;border-radius:6px!important;font-size:12px!important;line-height:1.4!important;font-weight:500!important;font-family:inherit!important;box-shadow:none!important}
body.portal-redesign .tabs .nav-account-actions button:hover{background:#e0eaf4!important;border-color:#7ea6c7!important}
body.portal-redesign .tabs button:focus-visible{outline:3px solid #0e7490!important;outline-offset:3px}
@media(max-width:1100px){body.portal-redesign:not(.locked) .tabs{padding:8px 18px!important;gap:3px!important}body.portal-redesign .tabs>button[data-tab]{padding:9px 10px!important}body.portal-redesign .tabs .nav-account-actions{padding-left:6px!important}}
@media(max-width:850px){body.portal-redesign:not(.locked) .topbar{padding:18px 20px!important;gap:16px!important}body.portal-redesign .topbar .brand{padding-left:16px!important}body.portal-redesign .topbar .brand strong{font-size:21px!important}body.portal-redesign .topbar .topbar-obras{width:125px!important;flex-basis:125px!important}body.portal-redesign .topbar .topbar-softplan{width:100px!important;flex-basis:100px!important}body.portal-redesign .topbar .topbar-unit{font-size:9px!important}body.portal-redesign .tabs .nav-account-actions{margin-left:auto!important}}
@media(max-width:600px){body.portal-redesign:not(.locked) .topbar{display:grid!important;grid-template-columns:1fr 1fr!important;min-height:0!important;padding:18px!important;gap:14px!important}body.portal-redesign .topbar .topbar-obras{grid-column:1!important;grid-row:1!important;width:135px!important;height:35px!important}body.portal-redesign .topbar .topbar-softplan{grid-column:2!important;grid-row:1!important;justify-self:end!important;width:105px!important;height:35px!important}body.portal-redesign .topbar .brand{grid-column:1/-1!important;grid-row:2!important;border:0!important;padding:0!important}body.portal-redesign .topbar .brand strong{font-size:22px!important}body.portal-redesign:not(.locked) .tabs{padding:10px 12px!important;gap:5px!important}body.portal-redesign .tabs>button[data-tab]{font-size:12px!important;min-height:44px!important;padding:9px!important}body.portal-redesign .tabs .nav-account-actions{flex-basis:100%!important;justify-content:flex-end!important;padding:6px 0 0!important}body.portal-redesign .tabs .nav-account-actions button{min-height:44px!important}}
