/* RM Sistemas Design System — visual aprovado */
:root{--blue:#0054b8;--blue2:#0069e8;--navy:#073b87;--navy2:#052e70;--orange:#f5821f;--red:#ef402f;--green:#18a56b;--purple:#6954d8;--bg:#f5f8fc;--surface:#fff;--text:#102a56;--muted:#6e7f99;--border:#e4eaf3;--shadow:0 10px 28px rgba(18,53,96,.08);--radius:16px;--sidebar:252px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}body{font-size:14px}a{text-decoration:none;color:inherit}button,input,select{font:inherit}button{cursor:pointer;border:0}.app-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar);background:linear-gradient(180deg,#063e8f 0%,#062f70 100%);color:#fff;position:fixed;left:0;top:0;bottom:0;display:flex;flex-direction:column;z-index:50;box-shadow:8px 0 28px rgba(5,38,91,.08)}.brand{height:78px;display:flex;align-items:center;padding:0 20px;gap:8px;font-weight:800}.brand-word{font-size:19px;letter-spacing:-.7px}.brand-rm{font-size:12px;color:#d8e7ff;font-weight:600}.brand-divider{height:20px;width:1px;background:rgba(255,255,255,.28);margin:0 3px}.brand-mark{position:relative;width:26px;height:26px;display:inline-block}.brand-mark i{position:absolute;width:9px;height:9px;border-radius:50%;left:9px;top:1px;background:#f5821f}.brand-mark i:nth-child(2){left:16px;top:9px;background:#0054b8;border:2px solid #fff}.brand-mark i:nth-child(3){left:9px;top:16px;background:#f5821f}.brand-mark i:nth-child(4){left:2px;top:9px;background:#f5821f}.brand-mark.small{width:24px;height:24px}.nav{padding:8px 12px;overflow:auto}.nav-item{height:43px;border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 13px;color:#d8e7ff;margin:3px 0;font-weight:500;transition:.18s}.nav-item:hover{background:rgba(255,255,255,.08);color:#fff}.nav-item.active{background:linear-gradient(90deg,#0871ef,#0b62d5);color:#fff;box-shadow:0 5px 16px rgba(0,86,184,.25)}.nav-item .icon{width:22px;text-align:center;font-size:17px}.nav-section{font-size:10px;letter-spacing:.12em;color:#9fbbe5;padding:22px 13px 7px;display:flex;justify-content:space-between}.sidebar-bottom{margin-top:auto;padding:12px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-bottom form{margin:0}.logout-link{width:100%;background:transparent;color:#ffddd8;text-align:left;height:43px;border-radius:10px;padding:0 13px}.logout-link:hover{background:rgba(255,255,255,.08)}.main-area{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));min-width:0}.topbar{height:78px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.top-search{width:min(390px,42vw);height:42px;background:#f4f7fb;border:1px solid #edf1f7;border-radius:11px;display:flex;align-items:center;padding:0 13px;color:#8da0bb;gap:9px}.top-search input{border:0;background:transparent;outline:0;width:100%;color:var(--text)}.top-actions{display:flex;align-items:center;gap:12px}.round-btn{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--border);color:#4d6485;display:grid;place-items:center;position:relative}.round-btn b{position:absolute;top:-2px;right:-1px;background:var(--red);color:#fff;font-size:9px;width:15px;height:15px;border-radius:50%;display:grid;place-items:center}.user-chip{display:flex;align-items:center;gap:9px;padding-left:7px}.avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#0874ee,#0054b8);color:#fff;display:grid;place-items:center;font-weight:700;box-shadow:0 5px 14px rgba(0,84,184,.2)}.avatar.mini{width:31px;height:31px;font-size:12px}.avatar.xl{width:82px;height:82px;font-size:28px;margin:auto}.user-meta{display:flex;flex-direction:column}.user-meta strong{font-size:12px}.user-meta small{color:var(--muted);font-size:10px;margin-top:2px}.chevron{color:#8394ad}.content{padding:30px;max-width:1600px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.page-head.compact{align-items:center}.crumb{font-size:11px;color:#8a9bb4;margin-bottom:8px}.page-head h1{font-size:28px;letter-spacing:-.8px;margin:0 0 6px;font-weight:800}.page-head p{margin:0;color:var(--muted)}.date-card{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--border);padding:12px 16px;border-radius:12px;box-shadow:var(--shadow)}.date-card span{color:var(--blue);font-size:19px}.date-card div{display:flex;flex-direction:column}.date-card strong{font-size:11px}.date-card small{font-size:10px;color:var(--muted);margin-top:3px}.hero{min-height:172px;border-radius:17px;background:linear-gradient(110deg,#0054b8 0%,#086fe5 60%,#0b55b8 100%);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:30px 38px;overflow:hidden;position:relative;box-shadow:0 14px 32px rgba(0,84,184,.18);margin-bottom:28px}.hero:after{content:"";position:absolute;width:360px;height:360px;border:52px solid rgba(255,255,255,.08);border-radius:50%;right:-160px;top:-100px}.hero-kicker,.eyebrow{font-size:10px;letter-spacing:.13em;font-weight:700;opacity:.82}.hero h2{font-size:31px;margin:8px 0 6px;letter-spacing:-1px}.hero p{margin:0;color:#dceaff}.hero-shape{display:flex;align-items:center;gap:8px;font-size:24px;font-weight:800;margin-right:90px;z-index:1}.hero-star{color:#f5821f;font-size:35px}.section-title{margin-bottom:13px}.section-title h2{margin:0;font-size:19px}.section-title p{margin:4px 0 0;color:var(--muted);font-size:12px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.module-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:17px;display:flex;align-items:center;gap:13px;min-height:105px;box-shadow:0 5px 18px rgba(25,56,99,.04);transition:.18s}.module-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#d3e0f1}.module-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#e8f2ff;color:var(--blue);font-size:24px;flex:0 0 auto}.module-icon.purple{background:#f0edff;color:var(--purple)}.module-icon.red{background:#fff0ee;color:var(--red)}.module-icon.green{background:#eaf8f2;color:var(--green)}.module-text{display:flex;flex-direction:column;min-width:0}.module-text strong{font-size:13px}.module-text small{color:var(--muted);line-height:1.4;margin-top:4px}.arrow{margin-left:auto;color:#9bacbf;font-size:23px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stat-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;align-items:center;gap:12px}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:18px}.stat-icon.blue{background:#e8f2ff;color:var(--blue)}.stat-icon.orange{background:#fff2e8;color:var(--orange)}.stat-icon.green{background:#e9f8f1;color:var(--green)}.stat-icon.purple{background:#f0edff;color:var(--purple)}.stat-card small{display:block;color:var(--muted);font-size:11px}.stat-card strong{display:block;font-size:20px;margin-top:3px}.panel{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 5px 18px rgba(25,56,99,.035);overflow:hidden}.panel-head{padding:19px 21px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.panel-head h2{font-size:16px;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:4px 0 0}.panel-head a{color:var(--blue);font-size:12px;font-weight:700}.activity-list{padding:7px 20px}.activity{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #f0f3f7}.activity:last-child{border:0}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px #eaf3ff}.activity div{display:flex;flex-direction:column;min-width:0}.activity strong{font-size:11px;text-transform:capitalize}.activity small{color:var(--muted);font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity time{margin-left:auto;color:#93a2b8;font-size:10px}.primary-btn,.secondary-btn{height:42px;border-radius:10px;padding:0 17px;font-weight:700;font-size:12px;transition:.18s}.primary-btn{background:linear-gradient(135deg,#0875ef,#0054b8);color:#fff;box-shadow:0 6px 16px rgba(0,84,184,.18)}.primary-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}.secondary-btn{background:#fff;color:var(--blue);border:1px solid #cfe0f5}.secondary-btn:hover{background:#f4f8ff}.full{width:100%}.alert{padding:12px 14px;border-radius:10px;font-size:12px;margin-bottom:14px}.alert.error{background:#fff0ee;color:#a9362b;border:1px solid #ffd8d3}.alert.success{background:#eaf8f2;color:#11704a;border:1px solid #c7eddd;margin-bottom:18px}.toolbar{padding:15px 18px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--border)}.search-field{height:39px;min-width:280px;display:flex;align-items:center;gap:8px;background:#f7f9fc;border:1px solid var(--border);border-radius:10px;padding:0 12px;color:#91a2b8}.search-field input{border:0;outline:0;background:transparent;width:100%;font-size:12px}.result-count{font-size:11px;color:var(--muted);margin-left:auto}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 18px;text-align:left;border-bottom:1px solid #edf1f5;font-size:11px}th{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#7f91aa;background:#fbfcfe}td{color:#566b88}td strong{color:var(--text)}.person{display:flex;align-items:center;gap:9px}.tag{display:inline-flex;align-items:center;padding:5px 8px;background:#f2f6fb;color:#55708f;border-radius:7px;font-size:10px;margin:2px}.blue-tag{background:#eaf3ff;color:var(--blue)}.status{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:5px 8px;border-radius:20px}.status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.status.on{color:#16835a;background:#eaf8f2}.status.off{color:#a16c68;background:#fff1ef}.icon-action{width:32px;height:32px;border-radius:8px;background:#f4f7fb;color:var(--blue)}.inline{display:inline}.role-grid,.module-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.role-card,.module-admin-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:0 5px 18px rgba(25,56,99,.035)}.role-top{display:flex;gap:13px}.role-icon{width:44px;height:44px;border-radius:12px;background:#eaf3ff;color:var(--blue);display:grid;place-items:center;font-size:19px}.role-card h2,.module-admin-card h2{font-size:15px;margin:0 0 4px}.role-card p,.module-admin-card p{font-size:11px;color:var(--muted);line-height:1.5;margin:0}.role-meta{display:flex;gap:9px;margin:18px 0 11px;padding-top:13px;border-top:1px solid var(--border);color:#7588a2;font-size:10px}.chip-list{display:flex;flex-wrap:wrap}.module-card-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.module-admin-card code{font-size:10px;color:#6680a1;background:#f5f8fc;padding:4px 6px;border-radius:5px}.module-admin-foot{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid var(--border);font-size:10px;color:#7d8fa7}.module-admin-foot .secondary-btn{height:34px;font-size:10px;padding:0 11px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-card{padding:22px}.settings-icon{width:46px;height:46px;border-radius:13px;background:#fff1e8;color:var(--orange);display:grid;place-items:center;font-size:21px;margin-bottom:14px}.settings-icon.blue-bg{background:#e8f2ff;color:var(--blue)}.settings-card h2{font-size:16px;margin:0}.settings-card>p{font-size:11px;color:var(--muted);margin:5px 0 17px}.setting-row{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid var(--border);font-size:11px}.setting-row span{color:var(--muted)}.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:17px}.profile-hero{background:linear-gradient(150deg,#0054b8,#0875ef);color:#fff;border-radius:16px;padding:30px;text-align:center;box-shadow:0 14px 32px rgba(0,84,184,.16)}.profile-hero h2{font-size:18px;margin:17px 0 5px}.profile-hero p{font-size:11px;color:#dceaff;margin:0 0 15px}.profile-hero .status.on{background:rgba(255,255,255,.15);color:#fff}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:23px}.profile-grid div{display:flex;flex-direction:column;gap:5px}.profile-grid small{color:var(--muted);font-size:10px}.profile-grid strong{font-size:12px}.module-landing{background:#fff;border:1px solid var(--border);border-radius:17px;padding:42px;display:flex;gap:25px;align-items:center;box-shadow:var(--shadow)}.module-landing-icon{width:78px;height:78px;border-radius:20px;background:#e8f2ff;color:var(--blue);display:grid;place-items:center;font-size:35px;flex:0 0 auto}.module-landing h2{font-size:24px;margin:8px 0}.module-landing p{max-width:700px;color:var(--muted);line-height:1.65}.integration-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.integration-pills span{background:#f1f6fc;border-radius:20px;padding:7px 10px;color:#52708f;font-size:10px;font-weight:600}.mobile-menu{display:none}.modal{display:none;position:fixed;inset:0;background:rgba(5,29,62,.45);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-card{background:#fff;border-radius:18px;width:min(500px,100%);box-shadow:0 30px 80px rgba(5,31,69,.25);padding:24px}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.modal-head h2{margin:0;font-size:18px}.modal-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.modal-close{background:#f3f6fa;width:34px;height:34px;border-radius:9px;color:#71839c;font-size:20px}.stack-form{display:flex;flex-direction:column;gap:14px}.stack-form label{font-size:11px;color:#5f7592;font-weight:600}.stack-form input,.stack-form select{margin-top:6px;width:100%;height:43px;border:1px solid #dce5f0;border-radius:10px;padding:0 12px;outline:0;color:var(--text);background:#fff}.stack-form input:focus,.stack-form select:focus{border-color:#72a8ed;box-shadow:0 0 0 3px #eaf3ff}.input-icon{position:relative}.input-icon input{padding-left:38px;padding-right:40px}.input-icon>span{position:absolute;left:13px;top:20px;transform:translateY(-50%);color:#8194ad}.show-pass{position:absolute;right:9px;top:7px;width:29px;height:29px;border-radius:7px;background:transparent;color:#8294ac}.form-row{display:flex;justify-content:space-between;align-items:center;font-size:10px}.form-row a{color:var(--blue);font-weight:600}.check{display:flex;align-items:center;gap:5px!important;color:#6d7f98!important;font-weight:500!important}.check input{width:auto!important;height:auto!important;margin:0!important}.empty{text-align:center;padding:30px;color:#8496ad;font-size:12px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.04fr .96fr;background:#f5f8fc;overflow:hidden}.login-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,#0068da 0%,#0054b8 52%,#003c8e 100%);color:#fff;padding:34px 6.2%;display:flex;flex-direction:column;isolation:isolate}.login-building{position:absolute;inset:0 0 0 38%;background-image:linear-gradient(90deg,rgba(0,84,184,.28),rgba(0,84,184,.04)),url('/static/img/login-building.jpg');background-size:cover;background-position:center;z-index:-3}.login-visual:before{content:"";position:absolute;left:-16%;bottom:-34%;width:76%;height:82%;border-radius:50%;background:#0757b9;z-index:-2;box-shadow:0 -25px 60px rgba(0,30,90,.14)}.login-curve{position:absolute;border:58px solid rgba(255,255,255,.08);border-radius:50%;z-index:-1;pointer-events:none}.curve-one{width:680px;height:680px;right:-430px;bottom:-410px}.curve-two{width:520px;height:520px;right:-370px;bottom:-310px;border-width:42px}.login-brand{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:800;z-index:2}.login-copy{margin:auto 0;max-width:520px;z-index:2;padding-bottom:20px}.login-copy .eyebrow{margin-bottom:14px;font-size:10px;letter-spacing:.12em}.login-copy h1{font-size:48px;letter-spacing:-2px;margin:0 0 8px}.login-copy p{font-size:17px;line-height:1.5;color:#e0edff;max-width:470px;margin:0}.login-benefits{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;margin-top:34px}.login-benefits div{display:flex;gap:10px;align-items:center;color:#e7f1ff;font-size:12px}.benefit-icon{width:21px;height:21px;border:1px solid rgba(255,255,255,.8);border-radius:7px;display:grid;place-items:center;font-size:10px;color:#fff;flex:0 0 auto}.login-benefits div:nth-child(2) .benefit-icon{border-radius:4px}.login-panel{display:flex;align-items:center;justify-content:center;padding:40px 6%;background:linear-gradient(180deg,#f8fbff 0%,#f3f7fc 100%)}.login-card{width:min(420px,100%);background:#fff;border:1px solid #dfe7f1;border-radius:18px;box-shadow:0 22px 65px rgba(22,54,96,.12);padding:34px 36px}.card-brand{display:flex;align-items:center;gap:7px;color:var(--blue);font-size:20px;font-weight:800;justify-content:center}.login-card h2{text-align:center;font-size:24px;margin:20px 0 3px;letter-spacing:-.7px;color:#073b87}.muted{text-align:center;color:var(--muted);font-size:11px;margin:0 0 23px}.login-foot{display:block;text-align:center;color:#9aa9bc;margin-top:18px;font-size:9px}.or{display:flex;align-items:center;gap:10px;color:#a2afc0;font-size:10px;margin:14px 0}.or:before,.or:after{content:"";height:1px;background:#edf1f5;flex:1}.login-card .secondary-btn{color:#5e7695}.login-card .stack-form label{color:#526c8d}.login-card .primary-btn{height:45px}.login-card .alert{font-size:11px}.login-card .input-icon input{height:43px}.login-card .show-pass{display:grid;place-items:center}.login-card .check{font-size:10px!important}.login-card .check input{accent-color:var(--blue)}
.mobile-menu{background:transparent;color:var(--text);font-size:21px}.role-card:hover,.module-admin-card:hover{transform:translateY(-2px)}@media(max-width:1100px){:root{--sidebar:230px}.content{padding:23px}.module-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.role-grid,.module-admin-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:780px){.sidebar{transform:translateX(-102%);transition:.22s;box-shadow:20px 0 45px rgba(4,27,61,.25)}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0;width:100%}.mobile-menu{display:block}.topbar{height:65px;padding:0 14px}.top-search{display:none}.top-actions{margin-left:auto;gap:7px}.user-meta,.chevron{display:none}.content{padding:18px 14px 28px}.page-head,.page-head.compact{align-items:flex-start;flex-direction:column}.page-head.compact .primary-btn{width:100%}.page-head h1{font-size:24px}.date-card{display:none}.hero{padding:25px 22px;min-height:175px}.hero h2{font-size:25px}.hero-shape{margin-right:25px;font-size:18px}.hero-star{font-size:27px}.module-grid{grid-template-columns:1fr;gap:10px}.module-card{min-height:88px;padding:13px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:12px}.role-grid,.module-admin-grid,.settings-grid,.profile-layout{grid-template-columns:1fr}.profile-hero{padding:25px}.toolbar{align-items:stretch;flex-direction:column}.search-field{min-width:0}.result-count{margin-left:0}.panel-head{padding:16px}.module-landing{padding:25px;align-items:flex-start;flex-direction:column}.module-landing h2{font-size:21px}.table-wrap{margin:0}.login-page{grid-template-columns:1fr;min-height:100svh}.login-visual{min-height:330px;padding:25px 24px}.login-building{inset:0 0 0 20%;opacity:.82}.login-copy{margin:auto 0 0;padding-bottom:5px}.login-copy h1{font-size:34px}.login-copy p{font-size:13px;margin:6px 0}.login-benefits{display:none}.login-panel{padding:20px 14px}.login-card{padding:25px 20px}.login-brand{font-size:19px}.login-copy .eyebrow{font-size:9px}.round-btn{width:34px;height:34px}.brand{height:70px}.nav{padding-top:5px}.sidebar-bottom{padding-bottom:20px}}@media(max-width:420px){.content{padding:15px 11px 25px}.topbar{padding:0 11px}.module-grid{gap:8px}.module-card{border-radius:13px}.module-icon{width:43px;height:43px}.stats-grid{grid-template-columns:1fr 1fr}.stat-card small{font-size:9px}.stat-card strong{font-size:17px}.hero{border-radius:14px}.hero p{font-size:11px}.hero-shape{display:none}.login-panel{padding:14px}.login-card{border-radius:15px;padding:22px 17px}}

/* ===== V1.0.7 — identidade visual minimalista aprovada ===== */
.login-page{grid-template-columns:1.02fr .98fr;background:#f4f7fc}
.login-visual{padding:30px 6.1%;background:#0054b8;min-width:0}
.login-building{inset:0;background-image:url('/static/img/login-building.jpg');background-size:cover;background-position:center;opacity:1;z-index:-4}
.login-blue-panel{position:absolute;left:0;top:0;width:61%;height:100%;background:linear-gradient(145deg,#0070dc 0%,#0054b8 57%,#00439a 100%);border-radius:0 58% 58% 0 / 0 45% 55% 0;z-index:-2;box-shadow:28px 0 70px rgba(0,49,123,.16)}
.login-visual:before{content:"";position:absolute;left:-16%;bottom:-42%;width:76%;height:86%;border-radius:50%;background:rgba(0,64,154,.92);z-index:-1;box-shadow:none}
.login-curve{border-color:rgba(255,255,255,.08);z-index:-1}
.curve-one{width:720px;height:720px;right:-500px;bottom:-470px;border-width:54px}
.curve-two{width:560px;height:560px;right:-415px;bottom:-365px;border-width:40px}
.login-brand{font-size:22px}
.login-copy{max-width:455px;margin:auto 0;padding-bottom:30px}
.login-copy .eyebrow{margin-bottom:12px}
.login-copy h1{font-size:43px;line-height:1.05;margin-bottom:9px}
.login-copy p{font-size:16px;max-width:430px}
.login-benefits{gap:17px 28px;margin-top:32px}
.login-benefits div{font-size:12px}
.benefit-icon{border:0;background:rgba(255,255,255,.05);width:24px;height:24px;font-size:15px}
.login-panel{padding:36px 6.4%}
.login-card{width:min(360px,100%);border-radius:16px;padding:30px 34px;box-shadow:0 18px 55px rgba(27,60,102,.11)}
.card-brand{font-size:19px}
.login-card h2{font-size:23px;margin-top:16px}
.muted{margin-bottom:21px}
.login-card .stack-form{gap:13px}
.login-card .stack-form input{height:43px}
.login-card .primary-btn{height:44px}

.sidebar{width:250px;background:linear-gradient(180deg,#06428f 0%,#053171 100%)}
:root{--sidebar:250px}
.brand{height:64px;padding:0 18px;gap:7px}
.brand-word{font-size:18px}.brand-rm{font-size:11px}.brand-divider{height:18px}
.nav{padding:8px 11px}.nav-item{height:39px;margin:2px 0;border-radius:9px;padding:0 11px;gap:10px;font-size:12px}.nav-item .icon{width:20px;font-size:15px}.nav-section{padding:17px 12px 6px;font-size:9px}
.sidebar-bottom{padding:9px 11px}.logout-link{height:39px;font-size:12px}
.topbar{height:64px;padding:0 24px}.top-search{height:38px;width:min(390px,43vw);border-radius:10px}.top-actions{gap:9px}.round-btn{width:36px;height:36px}.avatar{width:36px;height:36px}
.content{padding:26px 30px 30px;max-width:none}.page-head.dashboard-head{margin-bottom:17px;align-items:center}.crumb{margin-bottom:5px;font-size:10px}.page-head h1{font-size:25px;margin-bottom:4px}.page-head p{font-size:12px}.date-card{padding:10px 13px;border-radius:12px}.date-card span{font-size:16px}
.hero{height:116px;min-height:116px;border-radius:14px;padding:22px 37px;margin-bottom:18px;background:linear-gradient(90deg,#0054b8 0%,#086fe5 58%,#0b5abf 100%);box-shadow:0 10px 24px rgba(0,84,184,.15)}
.hero-copy{position:relative;z-index:4}.hero-kicker{font-size:9px}.hero h2{font-size:25px;margin:5px 0 4px}.hero p{font-size:12px}.hero-building{position:absolute;right:0;top:0;width:47%;height:100%;background-image:linear-gradient(90deg,rgba(0,84,184,.9) 0%,rgba(0,84,184,.16) 38%,rgba(0,84,184,0) 70%),url('/static/img/login-building.jpg');background-size:cover;background-position:center 47%;z-index:1}.hero-building:after{content:"";position:absolute;right:-70px;top:-45px;width:190px;height:210px;background:#fff;border-radius:55% 0 0 55%;transform:rotate(8deg)}
.hero-shape{position:absolute;right:34px;bottom:25px;margin:0;font-size:19px;z-index:4}.hero-star{font-size:26px}
.section-title{margin-bottom:10px}.section-title h2{font-size:17px}.section-title p{font-size:11px;margin-top:3px}
.module-grid{gap:12px}.module-card{min-height:82px;padding:13px 15px;border-radius:13px;gap:11px}.module-icon{width:43px;height:43px;border-radius:13px;font-size:21px}.module-text strong{font-size:12px}.module-text small{font-size:10px;line-height:1.25;margin-top:3px}.arrow{font-size:21px}
.dashboard-head + .hero + .section-title + .module-grid{margin-bottom:4px}

@media(max-width:1100px){.content{padding:22px}.hero{height:128px;min-height:128px}.hero-building{width:50%}}
@media(max-width:780px){.sidebar{width:250px}.topbar{height:62px;padding:0 14px}.content{padding:18px 14px 28px}.dashboard-head{margin-bottom:14px!important}.hero{height:155px;min-height:155px;padding:24px 22px}.hero-building{width:72%;opacity:.92}.hero-shape{right:18px;bottom:18px}.module-grid{grid-template-columns:1fr;gap:10px}.module-card{min-height:78px}.login-page{grid-template-columns:1fr}.login-visual{min-height:390px;padding:24px}.login-blue-panel{width:73%;border-radius:0 58% 58% 0 / 0 35% 65% 0}.login-building{inset:0}.login-copy{padding-bottom:18px}.login-copy h1{font-size:34px}.login-benefits{display:grid;gap:10px 18px;margin-top:22px}.login-benefits div{font-size:10px}.login-panel{padding:18px 14px}.login-card{width:min(390px,100%);padding:25px 21px}}
@media(max-width:420px){.login-visual{min-height:340px}.login-benefits{grid-template-columns:1fr 1fr}.login-copy h1{font-size:31px}.login-copy p{font-size:12px}.hero{height:150px;min-height:150px}.hero-building{width:75%;opacity:.7}.hero-shape{display:none}.date-card{display:none}}

/* ==========================================================
   RM SISTEMAS · IDENTIDADE HAPVIDA +ODONTO — V1.0.7
   Gabarito visual: login minimalista aprovado pelo usuário.
   ========================================================== */
:root{
  --rm-blue:#0054B8;
  --rm-blue-strong:#0050D6;
  --rm-blue-soft:#EAF4FE;
  --rm-blue-pale:#F2F8FE;
  --rm-orange:#F5821F;
  --rm-navy:#123A78;
  --rm-text:#14366E;
  --rm-muted:#6E83A5;
  --rm-border:#D8E5F2;
  --rm-bg:#F4F9FE;
  --rm-card:#FFFFFF;
  --rm-shadow:0 18px 45px rgba(33,83,135,.10);
  --rm-shadow-soft:0 8px 24px rgba(33,83,135,.07);
}

body{background:var(--rm-bg);color:var(--rm-text)}

/* Wordmark: no orange symbol beside the name. */
.brand-wordmark,.login-brand-wordmark{font-style:italic;font-weight:800;letter-spacing:-.9px;white-space:nowrap;color:var(--rm-blue)}
.brand-wordmark strong,.login-brand-wordmark strong{color:var(--rm-orange);font-weight:800}

/* App shell — light/minimal, keeping the navigation dense but calm. */
.sidebar{width:246px;background:#fff;color:var(--rm-text);border-right:1px solid var(--rm-border);box-shadow:8px 0 28px rgba(37,84,132,.045)}
.brand-minimal{height:76px;padding:0 20px;gap:10px;border-bottom:1px solid #edf3f9}
.brand-minimal .brand-wordmark{font-size:16px}
.brand-minimal .brand-divider{background:#c9d9e9;height:22px;margin:0 2px}
.brand-minimal .brand-rm{color:var(--rm-navy);font-size:12px;font-weight:700}
.nav{padding:10px 12px}
.nav-item{height:42px;color:#617897;border-radius:10px;margin:3px 0;font-weight:600}
.nav-item:hover{background:#f2f7fc;color:var(--rm-blue)}
.nav-item.active{background:#e9f3fe;color:var(--rm-blue);box-shadow:none}
.nav-item .icon{font-size:15px;color:inherit}
.nav-section{color:#91a6c0;padding:20px 13px 7px;font-size:9px}
.sidebar-bottom{border-top:1px solid #edf3f9;padding:12px;background:#fff}
.logout-link{color:#647b99}
.logout-link:hover{background:#f4f8fc;color:#b84a38}

.main-area{margin-left:246px;width:calc(100% - 246px)}
.topbar{height:72px;padding:0 26px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--rm-border);box-shadow:0 2px 14px rgba(28,70,112,.025)}
.top-search{height:40px;width:min(420px,45vw);background:#f7fbff;border:1px solid #e5eef7;border-radius:12px;color:#91a5bf}
.top-search input{color:var(--rm-text)}
.round-btn{border-color:#e1eaf3;color:#6c829f}
.avatar{background:linear-gradient(135deg,#0877eb,#0054b8)}
.content{padding:28px;max-width:1500px}
.page-head{margin-bottom:20px}
.page-head h1{font-size:27px;color:#11396f}
.page-head p{color:#7186a4}
.crumb{color:#8aa0ba}
.date-card{border-color:var(--rm-border);box-shadow:var(--rm-shadow-soft);border-radius:13px}
.date-card span{color:var(--rm-blue)}

/* Minimal hero derived from the approved login language. */
.hero-minimal{min-height:154px;height:154px;padding:30px 36px;border-radius:18px;background:linear-gradient(110deg,#eaf5fe 0%,#f8fbff 58%,#edf6fe 100%);color:var(--rm-text);border:1px solid #dceaf6;box-shadow:none;position:relative;overflow:hidden}
.hero-minimal:before{content:"";position:absolute;width:480px;height:300px;border:45px solid rgba(117,174,234,.13);border-radius:50%;right:-190px;top:-180px}
.hero-minimal:after{display:none}
.hero-minimal .hero-copy{position:relative;z-index:2}
.hero-minimal .hero-kicker{color:var(--rm-blue);opacity:1}
.hero-minimal h2{font-size:29px;color:var(--rm-navy);margin:7px 0 5px}
.hero-minimal p{color:#6680a2}
.hero-accent{position:absolute;right:55px;bottom:-95px;width:250px;height:250px;border:34px solid rgba(117,174,234,.10);border-radius:50%}

.section-title h2{color:#163b71}
.section-title p{color:#7186a4}
.module-grid{gap:13px}
.module-card{min-height:98px;border-color:var(--rm-border);border-radius:15px;box-shadow:var(--rm-shadow-soft);padding:16px;background:#fff}
.module-card:hover{border-color:#c6dced;box-shadow:var(--rm-shadow);transform:translateY(-1px)}
.module-icon{background:#eaf4fe;color:var(--rm-blue)}
.module-icon.purple{background:#f0edff;color:#6656d8}.module-icon.red{background:#fff1ed;color:#e85b49}.module-icon.green{background:#eaf8f2;color:#159d68}
.module-text strong{color:#12386f}.module-text small{color:#7186a4}
.arrow{color:#9ab0c8}

.panel,.stat-card,.role-card,.settings-card,.module-admin-card,.profile-hero,.module-landing{border-color:var(--rm-border);box-shadow:var(--rm-shadow-soft)}
.panel-head{border-bottom-color:#e9f0f7}
th{background:#f9fbfd;color:#7890ac}th,td{border-bottom-color:#edf3f8}
.primary-btn{background:linear-gradient(135deg,#0878ef,#0054b8);box-shadow:0 8px 18px rgba(0,84,184,.15)}
.secondary-btn{border-color:#cfe0f0;color:var(--rm-blue)}
.search-field{background:#f8fbfe;border-color:#e1ebf5}
.tag.blue-tag,.blue-tag{background:#eaf4fe;color:var(--rm-blue)}
.status.on{background:#eaf8f2;color:#168458}

/* Approved minimal login — desktop */
.login-page.login-minimal{min-height:100vh;overflow:hidden;background:#eef6fe;color:var(--rm-text)}
.login-minimal-shell{min-height:100vh;position:relative;display:grid;grid-template-columns:1fr minmax(470px,650px) minmax(290px,360px) 1fr;align-items:center;gap:30px;padding:44px 5vw;background:linear-gradient(115deg,#f3f9ff 0%,#edf6fe 48%,#f7fbff 100%)}
.login-minimal-shell:before{content:"";position:absolute;width:820px;height:520px;border:70px solid rgba(106,166,232,.10);border-radius:50%;right:-390px;top:40px;transform:rotate(-12deg)}
.login-minimal-shell:after{content:"";position:absolute;width:760px;height:440px;border:54px solid rgba(106,166,232,.08);border-radius:50%;right:-340px;bottom:-300px;transform:rotate(18deg)}
.login-panel-minimal{grid-column:2;position:relative;z-index:5;display:flex;justify-content:center}
.login-card-minimal{width:min(575px,100%);background:rgba(255,255,255,.985);border:1px solid rgba(203,220,236,.95);border-radius:18px;padding:42px 40px 36px;box-shadow:0 22px 55px rgba(45,88,132,.12)}
.login-brand-wordmark{font-size:42px;line-height:1;text-align:center;margin-bottom:30px;letter-spacing:-2px}
.login-card-minimal h1{margin:0;text-align:center;color:#12386f;font-size:30px;letter-spacing:-1px}
.login-subtitle{text-align:center;color:#7890ad;margin:8px 0 27px;font-size:14px}
.login-form-minimal{gap:14px}
.login-card-minimal .stack-form label{color:#476484;font-size:11px;font-weight:600}
.minimal-input{height:56px;margin-top:7px;background:#fff;border:1px solid #d7e4f1;border-radius:10px;color:#6e86a5;box-shadow:inset 0 1px 2px rgba(31,73,115,.02)}
.minimal-input:focus-within{border-color:#8ebbe8;box-shadow:0 0 0 3px rgba(0,84,184,.08)}
.minimal-input input{font-size:13px;color:#193d70}
.minimal-input input::placeholder{color:#8194ad}
.show-pass{color:#7088a7;background:transparent}
.minimal-form-row{margin-top:1px}
.minimal-form-row a{color:#0064db;font-weight:700;font-size:11px}
.check{color:#6f84a1!important;font-weight:500!important}
.check input{accent-color:var(--rm-blue)}
.login-enter{height:48px;border-radius:10px;font-size:13px;margin-top:2px}
.or{color:#8397af;margin:17px 0 12px}
.or:before,.or:after{background:#e5edf5}
.login-foot{display:block;text-align:center;color:#8396ad;margin-top:20px;font-size:10px}
.login-slogan{grid-column:3;position:relative;z-index:5;align-self:center;color:#0757c2;font-size:30px;line-height:1.12;font-weight:300;letter-spacing:-.9px;padding-left:10px}
.login-slogan strong{font-weight:800}
.login-slogan i{display:block;width:66px;height:5px;background:var(--rm-orange);border-radius:99px;margin-top:22px}
.login-decor{position:absolute;z-index:1;pointer-events:none;background:url('/static/img/odonto-line.svg') no-repeat center/contain}
.login-decor-left{width:340px;height:340px;left:-92px;bottom:-10px;opacity:.95}
.login-decor-right{display:none}

/* Mobile approved composition: only the card, no desktop slogan. */
@media(max-width:980px){
  .login-minimal-shell{grid-template-columns:1fr;display:flex;align-items:center;justify-content:center;padding:28px 20px;min-height:100svh}
  .login-panel-minimal{width:100%;max-width:560px}
  .login-slogan{display:none}
  .login-decor-left{width:250px;height:250px;left:-90px;bottom:-30px;opacity:.72}
  .login-minimal-shell:before{width:560px;height:360px;right:-300px;top:80px;border-width:45px}
  .login-minimal-shell:after{width:500px;height:300px;right:-270px;bottom:-220px;border-width:38px}
}
@media(max-width:620px){
  .sidebar{transform:translateX(-100%)}
  .sidebar.open{transform:translateX(0)}
  .main-area{margin-left:0;width:100%}
  .mobile-menu{display:grid}
  .top-search{display:none}
  .topbar{padding:0 14px}
  .content{padding:20px 14px 28px}
  .login-minimal-shell{padding:18px 14px}
  .login-card-minimal{padding:31px 22px 27px;border-radius:17px}
  .login-brand-wordmark{font-size:31px;letter-spacing:-1.5px;margin-bottom:23px}
  .login-card-minimal h1{font-size:25px}
  .login-subtitle{font-size:12px;margin-bottom:22px}
  .minimal-input{height:52px}
  .login-enter{height:48px}
  .login-foot{font-size:9px}
  .login-decor-left{width:190px;height:190px;left:-78px;bottom:-20px}
}
@media(max-width:390px){
  .login-card-minimal{padding:27px 18px 24px}
  .login-brand-wordmark{font-size:28px}
  .login-card-minimal h1{font-size:23px}
  .minimal-form-row a{font-size:10px}
  .login-decor-left{opacity:.5}
}

/* V1.0.7 — refinamento visual: centralização, ícones SVG e cores Hapvida mais presentes. */
:root{
  --rm-blue:#0054B8;
  --rm-blue-strong:#0054B8;
  --rm-blue-action:#0069E8;
  --rm-blue-soft:#E7F2FF;
  --rm-blue-pale:#F0F7FF;
  --rm-orange:#F5821F;
  --rm-navy:#073B87;
  --rm-text:#103A78;
  --rm-muted:#617A9C;
  --rm-border:#CFE0F1;
  --rm-bg:#F1F8FF;
}
.ui-icon{display:block;flex:0 0 auto}
.module-icon .ui-icon{width:22px;height:22px;stroke-width:1.75}
.arrow .ui-icon{color:#5E86B4}
.nav-item .icon .ui-icon{margin:auto}
.top-search>span,.round-btn>.ui-icon{display:grid;place-items:center}
.round-btn>.ui-icon{width:17px;height:17px}
.brand-wordmark,.login-brand-wordmark{color:#0054B8;text-shadow:0 0 .01px currentColor}
.brand-wordmark strong,.login-brand-wordmark strong{color:#F5821F}
.page-head h1,.section-title h2,.module-text strong{color:#073B87}
.page-head p,.section-title p,.module-text small{color:#617A9C}

/* Login: the approved desktop composition keeps the card exactly centered in the viewport. */
.login-minimal-shell{display:block;position:relative;width:100vw;min-height:100svh;padding:0;overflow:hidden;background:linear-gradient(115deg,#F1F8FF 0%,#EDF6FE 52%,#F7FBFF 100%)}
.login-panel-minimal{position:fixed;left:50vw;top:50vh;transform:translate(-50%,-50%);width:min(575px,calc(100vw - 40px));display:block;z-index:5}
.login-card-minimal{width:100%;border-color:#C9DDED;box-shadow:0 24px 60px rgba(26,75,125,.13)}
.login-brand-wordmark{color:#0054B8;font-weight:800}
.login-brand-wordmark strong{color:#F5821F}
.login-card-minimal h1{color:#073B87}
.login-subtitle{color:#6681A5}
.login-card-minimal .stack-form label{color:#315B8D}
.minimal-input{border-color:#C9DDEE;color:#6682A6}
.minimal-input input{color:#073B87}
.minimal-input input::placeholder{color:#7890AF}
.minimal-input:focus-within{border-color:#5E9FE1;box-shadow:0 0 0 3px rgba(0,84,184,.10)}
.field-icon{width:25px;display:grid;place-items:center;color:#55769F;flex:0 0 25px}
.show-pass{width:34px;height:100%;display:grid;place-items:center;color:#55769F;padding:0}
.show-pass:hover{color:#0054B8}
.show-pass .ui-icon{width:21px;height:21px}
.minimal-form-row a{color:#0054B8}
.check{color:#58749A!important}
.login-enter{background:linear-gradient(135deg,#0878EF 0%,#0054B8 100%);box-shadow:0 9px 20px rgba(0,84,184,.22)}
.login-foot{color:#6E84A3}
.login-slogan{position:fixed;left:calc(50vw + 325px);top:50vh;transform:translateY(-50%);width:290px;padding-left:0;z-index:4;color:#0054B8}
.login-slogan i{background:#F5821F}

/* Stronger but still minimal application palette. */
.sidebar{border-right-color:#CFE0F1}
.nav-item{color:#506F97}
.nav-item:hover{background:#EAF4FE;color:#0054B8}
.nav-item.active{background:#E4F0FD;color:#0054B8}
.nav-item .icon{color:#31699F}
.nav-item.active .icon{color:#0054B8}
.topbar{border-bottom-color:#CFE0F1}
.top-search{background:#F7FBFF;border-color:#CFE0F1;color:#6E88A7}
.top-search input::placeholder{color:#7188A5}
.avatar{background:linear-gradient(135deg,#0069E8,#0054B8)}
.hero-minimal{border-color:#CFE0F1;background:linear-gradient(110deg,#E7F2FF 0%,#F8FBFF 60%,#EEF7FF 100%)}
.hero-minimal .hero-kicker{color:#0054B8}
.hero-minimal h2{color:#073B87}
.module-card{border-color:#CFE0F1}
.module-card:hover{border-color:#A9CBEA}
.module-icon{background:#E6F2FF;color:#0054B8;border:1px solid #C9E0F4}
.module-icon.purple{background:#F0EDFF;color:#5D55C8;border-color:#DDD7FF}
.module-icon.red{background:#FFF0EC;color:#D94F3D;border-color:#FFD9D2}
.module-icon.green{background:#EAF8F2;color:#14895F;border-color:#CBEBDD}

@media(max-width:1150px){
  .login-slogan{display:none}
}
@media(max-width:980px){
  .login-minimal-shell{display:flex;align-items:center;justify-content:center;padding:28px 20px}
  .login-panel-minimal{position:relative;left:auto;top:auto;transform:none;width:100%;max-width:560px}
}
@media(max-width:620px){
  .login-minimal-shell{padding:18px 14px}
  .login-panel-minimal{max-width:560px}
  .login-card-minimal{padding:31px 22px 27px}
}

/* V1.0.9 — gabarito visual aprovado: dimensões e espaçamentos da referência desktop. */
@media(min-width:1151px){
  .login-minimal-shell{
    min-height:100svh;
    height:100vh;
    width:100vw;
  }
  .login-panel-minimal{
    left:49.35vw;
    top:50vh;
    width:575px;
    height:735px;
    transform:translate(-50%,-50%);
  }
  .login-card-minimal{
    width:575px;
    height:735px;
    padding:68px 40px 36px;
    border-radius:18px;
  }
  .login-brand-wordmark{
    font-size:48px;
    line-height:1;
    letter-spacing:-2.4px;
    margin-bottom:31px;
  }
  .login-card-minimal h1{
    font-size:31px;
    line-height:1.15;
    letter-spacing:-1px;
  }
  .login-subtitle{
    font-size:14px;
    line-height:1.2;
    margin:9px 0 29px;
  }
  .login-form-minimal{gap:14px}
  .login-card-minimal .stack-form label{font-size:11px;line-height:1.15}
  .minimal-input{
    height:56px;
    margin-top:7px;
    border-radius:10px;
  }
  .minimal-input input{font-size:13px}
  .minimal-form-row{margin-top:1px}
  .login-enter{height:48px;margin-top:2px}
  .or{margin:20px 0 12px}
    .login-foot{margin-top:27px;font-size:10px}
  .login-slogan{
    left:75.25vw;
    top:50vh;
    width:310px;
    font-size:30px;
    line-height:1.13;
    letter-spacing:-.9px;
  }
  .login-slogan i{width:66px;height:5px;margin-top:22px}
  .login-decor-left{
    width:390px;
    height:390px;
    left:-108px;
    bottom:-42px;
    opacity:.95;
  }
}

/* Preserve the approved compact composition on tablet/mobile. */
@media(max-width:1150px){
  .login-panel-minimal{width:min(575px,calc(100vw - 40px));}
  .login-card-minimal{height:auto;}
}
@media(max-width:620px){
  .login-card-minimal{height:auto;}
}

/* V1.0.9 final visual calibration against the approved login reference. */
@media(min-width:1151px){
  .login-panel-minimal{height:auto;}
  .login-card-minimal{
    height:auto;
    min-height:734px;
    padding:70px 40px 38px;
  }
  .login-brand-wordmark{
    font-size:50px;
    line-height:1;
    letter-spacing:-2.5px;
    margin-bottom:31px;
  }
  .login-card-minimal h1{font-size:32px;line-height:1.15}
  .login-subtitle{font-size:14px;margin:9px 0 30px}
  .login-form-minimal{gap:13px}
  .login-card-minimal .stack-form label{font-size:11px}
  .minimal-input{height:64px;margin-top:7px;border-radius:11px}
  .field-icon{width:30px;flex-basis:30px}
  .minimal-input input{font-size:15px}
  .show-pass{width:40px}
  .show-pass .ui-icon{width:22px;height:22px}
  .minimal-form-row{margin-top:0}
  .minimal-form-row a,.check{font-size:12px!important}
  .login-enter{height:64px;border-radius:11px;font-size:14px;margin-top:3px}
  .or{margin:19px 0 13px;font-size:13px}
      .login-foot{margin-top:29px;font-size:11px}
}

/* V1.0.11 — ajuste fino do gabarito aprovado
   - efeito laranja inferior esquerdo menor e melhor enquadrado
   - ícones dos campos com alinhamento geométrico real
   - traço dos ícones mais atual, limpo e minimalista
   - reforço pontual das cores Hapvida +odonto
*/
:root{
  --rm-blue:#0054B8;
  --rm-blue-action:#0069E8;
  --rm-orange:#F5821F;
  --rm-navy:#073B87;
  --rm-field-icon:#5A7EA8;
}

/* O ícone fica matematicamente no centro da altura do campo, sem depender
   de margem herdada do formulário. */
.login-card-minimal .minimal-input{
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.login-card-minimal .minimal-input input{
  margin-top:0 !important;
  height:100% !important;
  min-height:0;
  line-height:1.2;
}
.login-card-minimal .field-icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  color:var(--rm-field-icon);
  pointer-events:none;
}
.login-card-minimal .field-icon .ui-icon{
  width:20px;
  height:20px;
}
.login-card-minimal .show-pass{
  position:absolute;
  right:7px;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  margin:0;
  padding:0;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:var(--rm-field-icon);
}
.login-card-minimal .show-pass:hover,
.login-card-minimal .show-pass:focus-visible{
  color:var(--rm-blue);
  background:#F1F7FE;
  outline:none;
}
.login-card-minimal .show-pass .ui-icon{
  width:20px;
  height:20px;
}
.login-card-minimal .minimal-input:focus-within .field-icon{
  color:var(--rm-blue);
}

/* Gabarito visual: o traço laranja aparece discretamente no canto inferior
   esquerdo, sem competir com o cartão de login. */
.login-decor-left{
  width:305px !important;
  height:305px !important;
  left:-178px !important;
  bottom:-18px !important;
  opacity:.98 !important;
  background-size:contain !important;
}

@media(max-width:1150px){
  .login-decor-left{
    width:255px !important;
    height:255px !important;
    left:-152px !important;
    bottom:-18px !important;
  }
}
@media(max-width:620px){
  .login-decor-left{
    width:210px !important;
    height:210px !important;
    left:-128px !important;
    bottom:-14px !important;
    opacity:.9 !important;
  }
}


/* V1.0.13 — navegação recolhível e cabeçalho simplificado
   - botão de recolher/expandir no cabeçalho da sidebar
   - estado persistido no navegador
   - busca global removida do topbar
*/
:root{--sidebar-expanded:246px;--sidebar-collapsed:78px}
.sidebar{width:var(--sidebar-expanded);transition:width .22s ease,box-shadow .22s ease;overflow:hidden}
.brand-minimal{position:relative;justify-content:space-between;gap:12px;flex:0 0 76px}
.brand-minimal .brand-wordmark{overflow:hidden;transition:opacity .16s ease,width .22s ease}
.sidebar-toggle{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:9px;background:#f5f9fd;border:1px solid #d8e6f2;color:#32699f;transition:.18s}
.sidebar-toggle:hover{background:#eaf4fe;color:#0054B8;border-color:#c5dbef}
.sidebar-toggle:focus-visible{outline:3px solid rgba(0,84,184,.14);outline-offset:1px}
.sidebar.collapsed{width:var(--sidebar-collapsed)}
.sidebar.collapsed .brand-minimal{justify-content:center;padding:0 10px}
.sidebar.collapsed .brand-wordmark{width:0;opacity:0;pointer-events:none}
.sidebar.collapsed .sidebar-toggle{margin:0 auto}
.sidebar.collapsed .nav{padding-left:10px;padding-right:10px}
.sidebar.collapsed .nav-item{justify-content:center;padding:0;gap:0}
.sidebar.collapsed .nav-item>span:last-child{display:none}
.sidebar.collapsed .nav-item .icon{width:22px}
.sidebar.collapsed .nav-section{height:10px;padding:12px 0 5px;font-size:0}
.sidebar.collapsed .nav-section span{display:none}
.sidebar.collapsed .sidebar-bottom{padding-left:10px;padding-right:10px}
.sidebar.collapsed .logout-link{display:flex;align-items:center;justify-content:center;padding:0}
.sidebar.collapsed .logout-text{display:none}
.main-area{margin-left:var(--sidebar-expanded);width:calc(100% - var(--sidebar-expanded));transition:margin-left .22s ease,width .22s ease}
body.sidebar-is-collapsed .main-area{margin-left:var(--sidebar-collapsed);width:calc(100% - var(--sidebar-collapsed))}
.topbar{justify-content:flex-end}
.mobile-menu{margin-right:auto}
@media(max-width:780px){
  .sidebar{width:250px;transition:transform .22s ease,box-shadow .22s ease}
  .sidebar.collapsed{width:250px}
  .sidebar.collapsed .brand-wordmark{width:auto;opacity:1;pointer-events:auto}
  .sidebar.collapsed .nav-item>span:last-child{display:inline}
  .sidebar.collapsed .nav-item{justify-content:flex-start;padding:0 11px;gap:10px}
  .sidebar.collapsed .nav-section{height:auto;padding:20px 13px 7px;font-size:9px}
  .sidebar.collapsed .sidebar-bottom{padding:12px;background:#fff}
  .sidebar.collapsed .logout-link{display:block;padding:0 13px}
  .sidebar.collapsed .logout-text{display:inline}
  .main-area{margin-left:0;width:100%}
  body.sidebar-is-collapsed .main-area{margin-left:0;width:100%}
}


/* V1.0.14 — correção da navegação mobile e acesso ao Sair. */
.nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}
.mobile-menu{display:none;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;border-radius:10px;background:#fff;border:1px solid #dce8f2;color:#214d7e;padding:0;position:relative;z-index:80}
.mobile-menu:active{background:#eef6fd}
.mobile-menu:focus-visible{outline:3px solid rgba(0,84,184,.15);outline-offset:2px}
.mobile-nav-overlay{display:none;position:fixed;inset:0;background:rgba(7,34,68,.24);backdrop-filter:blur(1px);z-index:45}
.mobile-nav-overlay.open{display:block}
@media(max-width:780px){
  .sidebar{width:min(310px,86vw);z-index:60;transform:translateX(-105%);transition:transform .22s ease,box-shadow .22s ease;box-shadow:20px 0 45px rgba(4,27,61,.22)}
  .sidebar.open{transform:translateX(0)}
  .main-area{margin-left:0;width:100%}
  .mobile-menu{display:grid}
  .topbar{position:sticky;z-index:70}
  .sidebar-bottom{flex:0 0 auto;position:sticky;bottom:0;padding:12px 12px max(12px, env(safe-area-inset-bottom));background:#fff;z-index:2}
  .logout-link{height:44px;display:flex;align-items:center;gap:10px}
  .logout-text{display:inline}
  body.mobile-nav-open{overflow:hidden}
}
@media(min-width:781px){
  .mobile-nav-overlay{display:none!important}
}
/* Portal do Corretor integrado — V1.0.15 */
.portal-consult-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.portal-consult-card,.portal-result-card{overflow:hidden}.consult-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px 20px 4px}.consult-tab{cursor:pointer}.consult-tab input{position:absolute;opacity:0}.consult-tab span{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--rm-border);border-radius:12px;background:#f9fbfd}.consult-tab input:checked+span{border-color:#9ec7ec;background:#eaf4fe;box-shadow:0 0 0 2px rgba(0,84,184,.06)}.consult-tab b{font-size:12px;color:var(--rm-text)}.consult-tab small{font-size:10px;color:var(--rm-muted)}.portal-fields{padding:16px 20px 4px}.portal-fields label,.settings-body label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#526b89}.portal-fields input,.settings-body input,.settings-body select{height:43px;border:1px solid var(--rm-border);border-radius:10px;background:#fff;padding:0 12px;color:var(--rm-text);outline:0}.portal-fields input:focus,.settings-body input:focus,.settings-body select:focus{border-color:#8ebbe8;box-shadow:0 0 0 3px rgba(0,84,184,.07)}.portal-actions{display:flex;gap:10px;padding:20px}.button-link{display:inline-flex;align-items:center;justify-content:center}.portal-result-body{padding:20px}.result-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.result-summary>div{background:#f7faff;border:1px solid #e6eef7;border-radius:11px;padding:12px}.result-summary small,.contract-grid small,.admin-status-grid small{display:block;color:var(--rm-muted);font-size:10px;margin-bottom:4px}.result-summary strong{font-size:12px}.contracts-list{display:flex;flex-direction:column;gap:10px}.contract-card{border:1px solid var(--rm-border);border-radius:12px;padding:13px;background:#fff}.contract-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.contract-top strong{font-size:12px}.contract-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.contract-grid b{font-size:11px;color:#294d78}.portal-empty{min-height:270px}.portal-admin-grid{display:grid;grid-template-columns:minmax(520px,1.1fr) minmax(380px,.9fr);gap:18px}.portal-admin-grid>.panel:last-child{grid-column:1/-1}.settings-body{padding:20px;display:flex;flex-direction:column;gap:14px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.three-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.admin-status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.admin-status-grid>div{background:#f8fbfe;border:1px solid #e5eef7;border-radius:11px;padding:12px}.admin-status-grid strong{font-size:12px;color:var(--rm-text)}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-actions form{margin:0}.admin-note{padding:12px;border-radius:10px;background:#f1f7fd;color:#607b9c;font-size:11px;line-height:1.5}.tag{display:inline-flex;align-items:center;padding:6px 9px;border-radius:99px;font-size:10px;font-weight:700}.status.off{background:#fff0ee;color:#b94b3c}.status.on{background:#eaf8f2;color:#168458}
@media(max-width:900px){.portal-consult-grid,.portal-admin-grid{grid-template-columns:1fr}.portal-admin-grid>.panel:last-child{grid-column:auto}}
@media(max-width:620px){.consult-tabs,.two-cols,.three-cols,.result-summary,.contract-grid,.admin-status-grid{grid-template-columns:1fr}.portal-actions{flex-direction:column}.portal-actions .primary-btn,.portal-actions .secondary-btn{width:100%}.portal-consult-grid{gap:14px}.panel-head{align-items:flex-start}.admin-actions{flex-direction:column}.admin-actions form,.admin-actions button,.admin-actions .button-link{width:100%}.settings-body{padding:16px}.portal-fields{padding:14px 16px 2px}.consult-tabs{padding:16px 16px 2px}.portal-actions{padding:16px}}
.monitor-form{border-top:1px solid #e8eff6;padding-top:16px;display:flex;flex-direction:column;gap:12px}.monitor-form textarea{width:100%;resize:vertical;border:1px solid var(--rm-border);border-radius:10px;padding:10px;color:var(--rm-text);font:inherit}.check-row{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.check-row input{width:16px;height:16px}

/* Arquivos e Conteúdos — integração RM Sistemas */
.library-search-card,.library-catalog-head{background:#fff;border:1px solid #CFE0F1;border-radius:16px;padding:22px;box-shadow:0 10px 26px rgba(17,61,99,.05);margin-bottom:18px}
.library-search-form{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.library-search-input{height:48px;border:1px solid #CFE0F1;border-radius:11px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 14px;color:#6B83A1}.library-search-input input{border:0;outline:0;width:100%;font:inherit;color:#173B67;background:transparent}.library-meta{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:12px;color:#7085A0}.btn-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.content-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.content-results-grid.compact{margin-top:16px}.content-result-card{background:#fff;border:1px solid #CFE0F1;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(17,61,99,.04)}.content-type-badge{display:inline-flex;margin:16px 16px 0;padding:5px 9px;border-radius:999px;background:#EAF3FF;color:#0054B8;font-size:10px;font-weight:800;letter-spacing:.5px}.content-card-body{padding:12px 16px 16px}.content-card-body h3{margin:0;color:#073B87;font-size:17px}.content-card-body p{color:#667A93;font-size:13px;line-height:1.5;min-height:40px}.content-tags{display:flex;flex-wrap:wrap;gap:6px}.content-tags span{background:#F1F5F9;color:#61738A;border-radius:999px;padding:4px 8px;font-size:10px}.content-actions{display:flex;gap:8px;margin-top:15px}.content-actions .primary,.content-actions .secondary{padding:9px 12px}.library-catalog-head{display:flex;justify-content:space-between;align-items:center}.catalog-count{display:flex;flex-direction:column;align-items:center;min-width:100px;padding:14px 20px;background:#EAF3FF;border-radius:14px;color:#0054B8}.catalog-count strong{font-size:28px}.catalog-count span{font-size:11px}.admin-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-card{background:#fff;border:1px solid #CFE0F1;border-radius:14px;padding:18px}.metric-card small{display:block;color:#7388A1;font-size:11px}.metric-card strong{display:block;margin-top:5px;color:#073B87;font-size:25px}.admin-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}.admin-feature-card{display:block;background:#fff;border:1px solid #CFE0F1;border-radius:16px;padding:20px;text-decoration:none;transition:.2s}.admin-feature-card:hover{border-color:#A9CBEA;transform:translateY(-1px)}.admin-feature-card .module-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:12px;background:#EAF3FF;color:#0054B8}.admin-feature-card h3{margin:14px 0 6px;color:#073B87}.admin-feature-card p{margin:0;color:#7085A0;font-size:13px;line-height:1.5}.health-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.health-grid>div{background:#F7FAFD;border:1px solid #E1EAF3;border-radius:12px;padding:14px}.health-grid small{display:block;color:#7388A1;font-size:11px}.health-grid b{display:block;margin-top:5px;color:#173B67;font-size:13px}.two-col-admin{display:grid;grid-template-columns:1fr 1fr;gap:16px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:900px}.data-table th,.data-table td{padding:12px;border-bottom:1px solid #E8EEF5;text-align:left;font-size:12px}.data-table th{color:#58718E;font-weight:700;background:#F7FAFD}.selected-content{padding:16px;background:#F5F9FF;border:1px solid #D8E8F7;border-radius:12px}.selected-content h3{color:#073B87}.summary-line{font-size:13px;color:#4D627B;margin-top:8px}.diagnostic-path{display:block;padding:14px;background:#F5F7FA;border-radius:10px;white-space:pre-wrap;word-break:break-all;color:#31506F}.diagnostic-error{padding:12px;border-left:3px solid #F28C28;background:#FFF8F1;margin-bottom:8px;font-size:12px;color:#4C5D70}.diagnostic-error small{display:block;margin-top:5px;color:#8898A8}.preview-panel{max-width:1000px}.preview-meta{display:flex;gap:10px;flex-wrap:wrap;color:#60758D;font-size:12px;margin-bottom:16px}.preview-meta span{padding:5px 9px;background:#F1F5F9;border-radius:999px}.preview-text{white-space:pre-wrap;line-height:1.65;font-size:13px;color:#334A63;background:#F9FBFD;border:1px solid #E2EAF2;border-radius:12px;padding:18px;max-height:600px;overflow:auto;margin-bottom:16px}.empty-state{grid-column:1/-1;background:#fff;border:1px dashed #BCD0E4;border-radius:16px;padding:42px;text-align:center;color:#71859D}.empty-state h3{color:#173B67}.status-pill.warn{background:#FFF4E8;color:#B66A10}.status-pill.ok{background:#EAF8F2;color:#14895F}
@media(max-width:1050px){.content-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.library-search-form{grid-template-columns:1fr}.content-results-grid,.admin-feature-grid,.two-col-admin{grid-template-columns:1fr}.library-catalog-head{align-items:flex-start;gap:15px}.admin-metric-grid{grid-template-columns:1fr 1fr}.health-grid{grid-template-columns:1fr}.library-meta{flex-direction:column}.content-actions{flex-wrap:wrap}}

/* Padronização visual RM Sistemas — Rede Credenciada v1.0.26
   O motor original permanece preservado; estes ajustes uniformizam somente a camada visual. */
.rede-page-head{margin-bottom:22px}
.rede-page-head .status{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap;background:#eaf8f2;color:#168458}
.rede-page-head .status:before{content:"";width:6px;height:6px;border-radius:50%;background:#18a56b;margin-right:6px}
.consult-dashboard{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;align-items:start}
.consult-left-column,.consult-right-column{min-width:0}
.consult-left-column,.consult-right-column{display:flex;flex-direction:column;gap:18px}
.consult-dashboard .panel{background:#fff!important;border:1px solid var(--border)!important;border-radius:16px!important;box-shadow:var(--shadow)!important;color:var(--text)!important}
.consult-card-heading{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:20px 20px 4px!important}
.consult-card-heading h2,.result-heading-row h2{font-size:17px!important;color:var(--text)!important;letter-spacing:-.2px!important;margin:0!important}
.consult-card-heading p{color:var(--muted)!important;font-size:11px!important;margin:4px 0 0!important}
.consult-step{width:30px!important;height:30px!important;min-width:30px!important;border-radius:10px!important;background:#eaf3ff!important;color:var(--blue)!important;display:grid!important;place-items:center!important;font-weight:800!important}
.query-mode-switch{margin:18px 20px 0!important;padding:4px!important;background:#f3f7fc!important;border:1px solid var(--border)!important;border-radius:11px!important;display:flex!important;gap:4px!important}
.query-mode{flex:1!important;height:36px!important;border-radius:8px!important;background:transparent!important;color:#61758f!important;font-weight:700!important;font-size:11px!important}
.query-mode.active{background:#fff!important;color:var(--blue)!important;box-shadow:0 2px 8px rgba(18,53,96,.08)!important}
.query-grid{padding:18px 20px 4px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.query-grid .field{min-width:0}
.query-grid .field>span{display:block!important;font-size:11px!important;font-weight:700!important;color:#526b89!important;margin-bottom:7px!important}
.custom-select-trigger,.neighborhood-toggle,.smart-query-input{height:43px!important;border:1px solid var(--border)!important;border-radius:10px!important;background:#fff!important;color:var(--text)!important}
.custom-select-trigger{width:100%!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;font-size:12px!important}
.custom-select-menu{background:#fff!important;border:1px solid var(--border)!important;border-radius:10px!important;box-shadow:var(--shadow)!important;overflow:hidden!important}
.custom-select-menu button{width:100%!important;text-align:left!important;background:#fff!important;color:var(--text)!important;padding:10px 12px!important;font-size:12px!important}
.custom-select-menu button:hover{background:#f1f7fd!important;color:var(--blue)!important}
.neighborhood-choice-field{grid-column:1/-1}
.neighborhood-toggle{width:100%!important;padding:0 12px!important;display:flex!important;align-items:center!important;gap:9px!important;font-size:12px!important;color:#61758f!important}
.neighborhood-toggle b{margin-left:auto;background:#eaf3ff;color:var(--blue);padding:3px 7px;border-radius:999px;font-size:10px}
.neighborhood-panel{margin:0 20px 12px!important;border:1px solid var(--border)!important;border-radius:12px!important;background:#f9fbfd!important;overflow:hidden}
.neighborhood-panel-head{padding:12px 14px!important;border-bottom:1px solid var(--border)!important}
.multi-box{margin:12px!important;border-color:var(--border)!important;border-radius:10px!important;background:#fff!important}
.query-status-row{padding:8px 20px 0!important}
.location-ready{font-size:11px!important;color:#68809d!important}
.ready-dot{background:#eaf8f2!important;color:#168458!important}
.query-actions,.approved-query-actions{padding:16px 20px 20px!important;display:flex!important;gap:9px!important;flex-wrap:wrap!important}
.btn.primary,.primary-btn{background:var(--blue)!important;color:#fff!important;border-radius:10px!important;min-height:40px!important;padding:0 15px!important;font-weight:700!important;box-shadow:0 5px 14px rgba(0,84,184,.15)!important}
.btn.primary:hover,.primary-btn:hover{background:#00489d!important}
.btn.secondary,.secondary-btn{background:#fff!important;color:#45627f!important;border:1px solid var(--border)!important;border-radius:10px!important;min-height:40px!important;padding:0 14px!important;font-weight:700!important}
.btn.orange{background:var(--orange)!important;color:#fff!important;border-radius:10px!important}
.approved-selection-card{padding:18px 20px!important}
.section-kicker,.quick-actions-title{font-size:10px!important;letter-spacing:.12em!important;font-weight:800!important;color:#7b8da5!important}
.selection-summary-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:12px!important}
.summary-item{display:flex!important;align-items:center!important;gap:10px!important;background:#f7faff!important;border:1px solid #e6eef7!important;border-radius:11px!important;padding:12px!important}
.summary-icon{width:34px!important;height:34px!important;border-radius:10px!important;background:#eaf3ff!important;color:var(--blue)!important;display:grid!important;place-items:center!important}
.summary-item span{display:block!important;font-size:10px!important;color:var(--muted)!important}.summary-item strong{display:block!important;font-size:12px!important;margin-top:3px!important;color:var(--text)!important}
.result-heading-row{padding:20px 20px 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.result-heading-row .consult-card-heading{padding:0!important}
.validated-badge{font-size:9px!important;font-weight:800!important;color:#168458!important;background:#eaf8f2!important;border-radius:999px!important;padding:6px 8px!important;white-space:nowrap}
.result-location-line{padding:0 20px 14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}.result-location-line h2{font-size:19px!important;color:var(--text)!important;margin:0!important}
.soft-pill{background:#f1f5f9!important;color:#61758f!important;border-radius:999px!important;padding:5px 8px!important;font-size:10px!important}
.result-metrics{padding:0 20px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.result-metrics>div{border-radius:12px!important;border:1px solid var(--border)!important;background:#f9fbfd!important;padding:14px!important;min-width:0!important}
.metric-blue{border-top:3px solid var(--blue)!important}.metric-orange{border-top:3px solid var(--orange)!important}.metric-green{border-top:3px solid var(--green)!important}
.result-metrics strong{display:block!important;font-size:23px!important;color:var(--text)!important;margin-top:4px!important}.result-metrics>div>span:last-child{font-size:10px!important;color:var(--muted)!important}
.success-note{margin:14px 20px!important;border-radius:10px!important;background:#eaf8f2!important;color:#237456!important;border:1px solid #d5f0e3!important;padding:11px!important;font-size:11px!important}
.result-buttons{padding:0 20px 18px!important;display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.result-details{margin:0 20px 20px!important;border-top:1px solid var(--border)!important;padding-top:12px!important;color:#61758f!important;font-size:11px!important}.result-details summary{cursor:pointer;font-weight:700}
.quick-actions-card{padding:18px 20px!important}.quick-actions-grid{display:flex!important;gap:10px!important;margin-top:12px!important;flex-wrap:wrap!important}.quick-action{flex:1 1 180px!important;min-height:54px!important;border:1px solid var(--border)!important;background:#f9fbfd!important;border-radius:11px!important;color:var(--text)!important;padding:10px 12px!important;display:flex!important;align-items:center!important;gap:9px!important}.quick-action:hover{border-color:#b9d4ef!important;background:#f1f7fd!important}.quick-action svg{width:20px!important;height:20px!important;stroke:var(--blue)!important;fill:none!important;stroke-width:1.8!important}.quick-action small{color:var(--muted)!important;font-size:9px!important}
.smart-query-panel{margin:14px 20px!important;padding:14px!important;border:1px solid #d8e8f7!important;background:#f5f9ff!important;border-radius:12px!important}.smart-query-copy{display:flex!important;flex-direction:column!important;gap:4px!important;color:#526b89!important;font-size:11px!important}.smart-query-row{display:grid!important;grid-template-columns:1fr auto!important;gap:8px!important;margin-top:10px!important}.smart-query-input{display:flex!important;align-items:center!important;padding:0 11px!important;gap:8px!important}.smart-query-input input{border:0!important;outline:0!important;background:transparent!important;width:100%!important;color:var(--text)!important}.smart-query-hint{font-size:10px!important;color:var(--muted)!important;margin-top:8px!important}
@media(max-width:1050px){.consult-dashboard{grid-template-columns:1fr!important}.selection-summary-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:650px){.query-grid,.selection-summary-grid,.result-metrics{grid-template-columns:1fr!important}.result-heading-row,.result-location-line{align-items:flex-start!important;flex-direction:column!important}.smart-query-row{grid-template-columns:1fr!important}.query-actions .btn,.query-actions .primary-btn,.query-actions .secondary-btn,.result-buttons .btn{width:100%!important;justify-content:center!important}.rede-page-head .status{align-self:flex-start}.consult-dashboard{gap:14px!important}}

/* ===== RM Design System — formulários administrativos ===== */
.form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;padding:20px}.form-grid>label{grid-column:span 4;display:flex;flex-direction:column;gap:7px;min-width:0;color:#526b89;font-size:11px;font-weight:700}.form-grid>label.wide{grid-column:1/-1}.form-grid>label.third{grid-column:span 4}.form-grid>label.quarter{grid-column:span 3}.form-grid>label.half{grid-column:span 6}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:42px;border:1px solid #d6e1ee;border-radius:10px;background:#fff;color:var(--text);padding:0 12px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.form-grid textarea{padding:10px 12px;min-height:82px;resize:vertical;line-height:1.45}.form-grid input[type=file]{padding:8px 10px;min-height:44px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#78a9df;box-shadow:0 0 0 3px rgba(0,84,184,.08)}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#9aabc0}.form-grid .form-actions{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:2px}.form-grid>.form-actions .primary-btn,.form-grid>.form-actions .secondary-btn{min-width:145px}.form-grid .help-text{font-size:10px;color:var(--muted);font-weight:500;line-height:1.45}.panel>.form-grid{border-top:1px solid var(--border)}.panel>.form-grid:first-child{border-top:0}.panel .form-grid+.table-wrap{border-top:1px solid var(--border)}
@media(max-width:900px){.form-grid>label,.form-grid>label.third,.form-grid>label.half{grid-column:span 6}.form-grid>label.wide{grid-column:1/-1}.form-grid>label.quarter{grid-column:span 3}}
@media(max-width:600px){.form-grid{grid-template-columns:1fr;padding:16px}.form-grid>label,.form-grid>label.wide,.form-grid>label.third,.form-grid>label.quarter,.form-grid>label.half{grid-column:1/-1}.form-grid .form-actions{grid-column:1/-1}.form-grid .form-actions>*{width:100%}}


/* ===== RM Sistemas 1.0.27 — refinamento visual global ===== */
.page-head{position:relative}.page-head h1{color:#073b87}.page-head .crumb{letter-spacing:.01em}.panel{border-radius:18px}.panel-head{gap:18px}.panel-head>div:first-child{min-width:0}.panel-head h2{color:#073b87}.panel-head .eyebrow{color:#5f78a0;margin:0 0 5px}.panel-accent .panel-head{display:grid;grid-template-columns:minmax(170px,.34fr) minmax(220px,1fr) minmax(260px,1.2fr);align-items:center;gap:18px}.panel-accent .panel-head>p{margin:0;color:#7184a0;line-height:1.45}.panel-accent .panel-head>h2{margin:0;font-size:18px}.panel-accent .panel-head>.eyebrow{align-self:start;padding-top:3px}.panel-accent .panel-head{padding:20px 22px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.form-grid{background:#fff}.form-grid>label{color:#526b89}.form-grid input,.form-grid select,.form-grid textarea{box-shadow:0 1px 1px rgba(14,50,90,.02)}.form-grid input[type=file]{background:#f8fbff;cursor:pointer}.form-grid input[type=file]::file-selector-button{border:1px solid #cfe0f4;border-radius:8px;background:#fff;color:#0755b4;padding:7px 10px;margin-right:9px;font-weight:700;cursor:pointer}.file-selected-name{display:block;color:#168747;font-size:10px;font-weight:700;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice{border-radius:12px!important;border:1px solid #dce7f3!important;background:#f7faff!important;color:#58708f!important;padding:12px 14px!important}.notice.success{background:#ecf9f2!important;border-color:#cfeedd!important;color:#19754e!important}.notice.error{background:#fff1ef!important;border-color:#ffd7d1!important;color:#a13b31!important}.settings-sync-action{display:flex!important;flex-direction:column;justify-content:flex-end;gap:7px}.settings-sync-action .field-label{color:#526b89;font-size:11px;font-weight:700}.settings-sync-action button{min-height:42px}
.library-page-head{align-items:center}.library-head-stat{display:flex;align-items:center;gap:11px;background:#eaf3ff;border:1px solid #d6e6fa;border-radius:14px;padding:10px 16px;color:#0b56b6}.library-head-stat strong{font-size:24px;line-height:1}.library-head-stat span{font-size:11px;font-weight:700;color:#617b9d}.content-result-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.content-result-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,53,96,.09);border-color:#cbddef}.content-actions .btn-link{min-height:38px;padding:0 14px!important;border-radius:9px!important;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.content-actions .secondary{background:#fff!important;border:1px solid #d2e0ef!important;color:#1b4d8f!important}.content-actions .primary{background:linear-gradient(135deg,#0875ef,#0054b8)!important;color:#fff!important}.content-results-grid{align-items:stretch}.content-card-body{min-height:185px;display:flex;flex-direction:column}.content-actions{margin-top:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.content-tags span{border:1px solid #e1eaf4;background:#f6f9fd!important}.library-search-card{border-radius:18px!important}.library-search-form{gap:10px}.library-search-input{height:46px!important;border-radius:12px!important;background:#fff!important}.catalog-count{font-weight:700;color:#617a9c}
.rede-admin-actions{display:flex;justify-content:flex-end;margin:-8px 0 18px}.rede-admin-metrics .module-card{min-height:118px;align-items:flex-start}.rede-admin-metrics .module-text strong{font-size:24px;color:#073b87}.rede-admin-metrics .module-text small{font-size:11px}.rede-panel-head{padding:21px 23px}.rede-library-summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(160px,.55fr) minmax(160px,.55fr);gap:12px;padding:18px 22px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.rede-library-summary>div{min-width:0;background:#f8fbff;border:1px solid #e0eaf5;border-radius:12px;padding:12px 14px}.rede-library-summary span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:#8192aa;margin-bottom:6px}.rede-library-summary code{display:block;font-size:11px;color:#31577f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rede-library-summary strong{font-size:16px;color:#073b87}.rede-library-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:18px 22px;align-items:end}.rede-library-actions form:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.rede-library-actions label{display:flex;flex-direction:column;gap:7px;color:#526b89;font-size:11px;font-weight:700}.rede-library-actions input{height:42px;border:1px solid #d6e1ee;border-radius:10px;padding:0 12px;outline:0}.rede-library-actions input:focus{border-color:#78a9df;box-shadow:0 0 0 3px rgba(0,84,184,.08)}.status-pill{display:inline-flex!important;align-items:center!important;width:max-content!important;padding:5px 9px;border-radius:999px;background:#eef4fb;color:#607895;font-size:10px}.status-pill.on{background:#eaf8f1;color:#17744c}.status-pill.warn{background:#fff4e7;color:#a96816}
.admin-feature-card,.module-admin-card,.role-card,.settings-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.admin-feature-card:hover,.module-admin-card:hover,.role-card:hover,.settings-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,53,96,.08);border-color:#d0deef}
@media(max-width:1050px){.panel-accent .panel-head{grid-template-columns:1fr 1.4fr}.panel-accent .panel-head>p:last-child{grid-column:1/-1}.rede-library-summary{grid-template-columns:1fr 1fr}.rede-library-summary>div:first-child{grid-column:1/-1}.rede-library-actions{grid-template-columns:1fr}.rede-library-actions form:first-child{grid-template-columns:1fr}.rede-library-actions form:last-child{justify-self:start}}
@media(max-width:700px){.panel-accent .panel-head{grid-template-columns:1fr}.panel-accent .panel-head>p:last-child{grid-column:auto}.library-head-stat{width:100%;justify-content:center}.library-page-head{align-items:stretch}.rede-admin-actions{justify-content:stretch}.rede-admin-actions .primary-btn{width:100%;text-align:center}.rede-library-summary{grid-template-columns:1fr}.rede-library-summary>div:first-child{grid-column:auto}.content-actions .btn-link{flex:1 1 120px}.content-card-body{min-height:0}}


/* ===== RM Sistemas 1.0.30 — navegação por perfil e acabamento suave ===== */
.sidebar,.main-area,.mobile-nav-overlay{transition:transform .28s cubic-bezier(.22,.61,.36,1),margin-left .28s cubic-bezier(.22,.61,.36,1),width .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease}
.nav-item,.round-btn,.user-chip,.mobile-menu{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
html{scroll-behavior:smooth}

/* ===== RM Sistemas 1.0.28 — mobile dropdowns e acesso à Consulta Rede ===== */
/* Cada dropdown aberto ganha prioridade sobre os campos seguintes, evitando que
   Cidade/Bairros apareçam por cima da lista de Estados no celular. */
.custom-select.is-open{z-index:260!important}
.custom-select-menu{max-height:min(360px,52vh)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;scrollbar-gutter:stable!important;}
.custom-select-menu::-webkit-scrollbar{width:8px!important}
.custom-select-menu::-webkit-scrollbar-thumb{background:#bfd0e5!important;border-radius:8px!important}
.custom-select-menu::-webkit-scrollbar-track{background:#f3f7fc!important;border-radius:8px!important}
.custom-select-menu button{min-height:38px!important;padding:9px 12px!important}
.rede-admin-actions{margin:0 0 22px!important;display:block!important}
.rede-open-consulta{display:flex;align-items:center;gap:14px;width:100%;min-height:78px;padding:14px 18px;border:1px solid #cfe0f3;border-radius:18px;background:linear-gradient(135deg,#075fc9 0%,#0054b8 62%,#06469f 100%);color:#fff;text-decoration:none;box-shadow:0 12px 28px rgba(0,84,184,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.rede-open-consulta:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,84,184,.24);filter:brightness(1.02)}
.rede-open-icon{width:44px;height:44px;flex:0 0 44px;border-radius:13px;background:rgba(255,255,255,.15);display:grid;place-items:center;border:1px solid rgba(255,255,255,.2)}
.rede-open-icon svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round}
.rede-open-copy{min-width:0;display:flex;flex-direction:column;gap:3px;flex:1}
.rede-open-copy strong{font-size:16px;line-height:1.2;letter-spacing:-.01em}
.rede-open-copy small{font-size:11px;line-height:1.35;color:#dcecff}
.rede-open-arrow{font-size:25px;font-weight:500;line-height:1;opacity:.9;padding-left:6px}
@media(max-width:700px){
  .custom-select-menu{max-height:min(390px,54vh)!important;min-width:100%!important;border-radius:14px!important;padding:7px!important;box-shadow:0 18px 38px rgba(9,45,95,.20)!important}
  .custom-select-menu button{min-height:44px!important;padding:10px 13px!important;font-size:13px!important;border-radius:9px!important}
  .rede-open-consulta{min-height:88px;padding:15px 16px;border-radius:17px;gap:12px}
  .rede-open-icon{width:46px;height:46px;flex-basis:46px}
  .rede-open-copy strong{font-size:15px}
  .rede-open-copy small{font-size:10.5px}
  .rede-open-arrow{font-size:24px}
}


/* ===== RM Sistemas 1.0.29 — Rede mobile final overrides ===== */
@media(max-width:700px){
  .rede-admin-actions{display:block!important;width:100%!important;margin:0 0 22px!important}
  .rede-open-consulta{display:flex!important;align-items:center!important;width:100%!important;min-height:86px!important;padding:15px 16px!important;border-radius:17px!important;background:linear-gradient(135deg,#0868d8 0%,#0054b8 62%,#06469f 100%)!important;color:#fff!important;box-shadow:0 12px 28px rgba(0,84,184,.18)!important}
  .rede-open-copy{display:flex!important;flex-direction:column!important;visibility:visible!important;opacity:1!important;flex:1!important;min-width:0!important}
  .rede-open-copy strong{display:block!important;color:#fff!important;font-size:15px!important}
  .rede-open-copy small{display:block!important;color:#dcecff!important;font-size:10.5px!important}
}
