.hidden{display:none!important}.v4-action-group{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.v4-action-group .primary-button{width:auto;min-width:175px;flex:1}.v4-action-group .outline-button{height:auto;padding:.8rem 1rem}.v4-admin{margin-top:42px}.v4-admin-head{margin-bottom:20px}.v4-admin-head h2{font-size:1.8rem}.v4-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.v4-panel{background:#fff;border:1px solid #d8e6ee;border-radius:18px;padding:23px;min-width:0}.v4-panel h3{font-size:1.18rem;margin:0 0 16px;color:#153b5b}.v4-panel form label{display:block;font-weight:650;color:#173c5b;margin-bottom:12px}.v4-panel form input,.v4-panel form select,.v4-panel form textarea{width:100%;display:block;margin-top:5px;background:#fff;border:1px solid #cfdeea;color:#12304a;border-radius:10px;padding:12px;font:inherit}.v4-panel .v4-inline-check{display:flex;align-items:center;gap:8px}.v4-inline-check input{width:18px!important;height:18px;margin:0!important}.v4-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v4-person,.v4-admin-record{padding:14px 0;border-top:1px solid #e4e9ed}.v4-item-name{font-weight:750;color:#113753;overflow-wrap:anywhere}.v4-item-detail{font-size:.84rem;color:#667e94;margin:4px 0 8px;overflow-wrap:anywhere}.v4-tag{display:inline-flex;border-radius:8px;padding:4px 8px;font-size:.72rem;font-weight:750;background:#eaf0f4;color:#35546e}.v4-tag.yes{background:#e6f7f2;color:#087765}.v4-tag.no{background:#fff2e8;color:#95562c}.v4-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.v4-mini{border:1px solid #ccdee9;background:white;color:#194a6a;padding:8px 10px;border-radius:8px;font-weight:700;cursor:pointer}.v4-mini.alert{color:#a63735;border-color:#f1c2c2}.v4-mini:disabled{opacity:.45;cursor:not-allowed}.v4-status{margin:10px 0;padding:10px 12px;background:#e7f2ff;border-radius:10px;color:#21516e}.feedback.warn{background:#fff8e9;color:#805620;border:1px solid #f1d9a2}.auth-card>p{line-height:1.6}.v4-notice{color:#51718a;line-height:1.5}.v4-panel .primary-button{font-size:1rem}.v4-panel .outline-button{min-height:50px}.v4-panel input:focus,.v4-panel textarea:focus{outline:2px solid #83b9ce}.auth-layout .auth-card input[type=email],.auth-layout .auth-card input[type=password]{margin-bottom:14px}.auth-layout .auth-card label{display:block;margin-bottom:12px}.auth-card button{cursor:pointer}@media(max-width:850px){.v4-admin-grid{grid-template-columns:1fr}.v4-action-group{flex-direction:column}.v4-form-grid{grid-template-columns:1fr}}

/* Favoritos do portal e favoritos do navegador, Chrome e Edge */
.record-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:10px;min-width:0}
.record-favorite,.record-browser-bookmark{border:1px solid #cbdfe9;background:#f5f9fb;color:#225371;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700;line-height:1.4;text-decoration:none;max-width:100%;text-align:left}
.record-favorite:hover,.record-browser-bookmark:hover{background:#e8f3f7;border-color:#90b9cd;text-decoration:none}
.record-favorite.is-favorite{background:#fff5d8;color:#80551b;border-color:#ead38d}
.record-favorite:focus-visible,.record-browser-bookmark:focus-visible{outline:3px solid #60a6c7;outline-offset:2px}
.bookmark-help{background:#f1f7fa;border:1px solid #c4dae7;border-radius:13px;padding:17px 20px;margin:22px 0 14px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.bookmark-help strong{font-size:14px;color:#173b59}.bookmark-help p{font-size:12px;line-height:1.65;color:#4f7086;margin:5px 0 0}
.bookmark-help .outline-button{flex-shrink:0}
@media(max-width:600px){.bookmark-help{flex-direction:column;align-items:stretch}.bookmark-help .outline-button{width:100%}.record-favorite,.record-browser-bookmark{width:100%;text-align:center}}

/* Navegação do site Gestão do Serviço de Pediatria */
.hero h1{font-size:clamp(33px,4.7vw,53px);max-width:760px}
.hero h1 span{font-weight:360;color:#bfe4f4}
.hero p{max-width:670px;margin:5px 0 0}
.portal-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 25px;border-bottom:1px solid #dde8ef;padding-bottom:15px}
.nav-item{background:#fff;border:1px solid #d2e1eb;border-radius:11px;color:#315771;font-size:12px;font-weight:700;min-height:40px;padding:10px 14px;line-height:1.4;white-space:normal;text-align:center}
.nav-item:hover,.nav-item:focus-visible{background:#eef5f9;border-color:#8bb8d1}
.nav-item.selected{background:#173e5f;color:#fff;border-color:#173e5f}
.home-view{margin:14px 0 48px}
.home-intro h3{font-size:24px;margin:0 0 6px;color:#153953;letter-spacing:-.5px}
.home-intro p{font-size:14px;line-height:1.5;color:#687f91;margin:0 0 22px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.module-card{min-width:0;min-height:206px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;border-radius:16px;border:1px solid #d9e6ee;padding:22px;background:white;color:#113753;box-shadow:0 6px 20px #193a5509;transition:transform .13s,box-shadow .13s,border-color .13s}
.module-card:hover{transform:translateY(-2px);border-color:#91b9d0;box-shadow:0 10px 25px #193a5519}
.module-icon{display:grid;place-items:center;background:#edf5f7;color:#1b6c83;border-radius:12px;width:47px;height:47px;font-size:25px;margin-bottom:18px}
.module-main{display:flex;flex-direction:column;gap:7px;flex:1}
.module-main strong{font-size:17px;line-height:1.35;letter-spacing:-.25px}
.module-main small{font-size:12px;line-height:1.6;color:#647c8f;font-weight:400}
.module-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-size:11px;font-weight:700;color:#2d7397;margin-top:14px}
.module-count{font-size:10px;color:#74889a;background:#f1f6f8;padding:5px 9px;border-radius:99px}
.section-intro{margin:0 0 19px}
.back-to-home{display:inline-flex;background:none;border:0;color:#28678b;font-size:12px;font-weight:700;padding:0 0 16px;cursor:pointer}
.back-to-home:hover{text-decoration:underline}
.section-intro h3{font-size:26px;color:#123953;margin:0 0 6px;letter-spacing:-.6px}
.section-intro p{font-size:13px;color:#647b8e;margin:0 0 16px;line-height:1.6}
.placeholder-card{border-style:dashed;background:#f8fbfc;box-shadow:none!important;opacity:.88}
.placeholder-label{display:inline-block;border-radius:99px;background:#e9eff3;color:#587084;padding:8px 12px;font-size:12px;font-weight:700}
.v4-admin{margin-top:7px!important;margin-bottom:42px}
#portal-section .cards{margin-top:16px}
#portal-section .toolbar{margin-top:6px}
@media(max-width:970px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.portal-navigation{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}.nav-item{flex:0 0 auto;scroll-snap-align:start}.module-grid{grid-template-columns:1fr;gap:11px}.module-card{min-height:142px;padding:18px}.module-icon{margin-bottom:10px}.module-foot{margin-top:8px}.section-intro h3{font-size:23px}.hero{min-height:215px}.hero h1{font-size:35px}}

/* Documentos e protocolos aprovados */
.document-help{border:1px solid #d8e7ef;background:#f4f8fb;border-radius:10px;padding:12px 14px;color:#42647c;font-size:12px;line-height:1.6;margin:0 0 15px}
.document-help strong{color:#174868}
.record-form-tip{font-size:12px;color:#53758b;margin:-6px 0 15px;line-height:1.6}
@media(max-width:680px){.document-help{font-size:12px}}

/* Catálogo com 172 protocolos: pesquisa imediata, resultados por lotes e cartões compactos. */
#portal-section:has(.protocol-card) .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.protocol-card{padding:17px!important;min-height:unset!important;display:flex;flex-direction:column;gap:4px}
.protocol-card h3{font-size:15px;line-height:1.38;margin:5px 0!important;overflow-wrap:anywhere}
.protocol-card p{font-size:11px;line-height:1.45;margin:3px 0 10px!important}
.protocol-card .record-icon{font-size:19px!important;width:35px;height:35px;margin-bottom:4px}
.protocol-card .record-category{font-size:10px!important}
.protocol-card .record-action,.protocol-card .record-favorite,.protocol-card .record-browser-bookmark{font-size:11px!important;padding:8px 10px!important}
.protocol-card .record-actions{gap:5px!important;margin-top:auto!important}
.protocol-more{display:block;grid-column:1/-1;margin:12px auto 18px;border:1px solid #b8d5e6;background:#eef7fc;color:#174e76;padding:13px 22px;font-family:inherit;font-size:14px;font-weight:700;border-radius:12px;cursor:pointer;max-width:100%}
.protocol-more:hover{background:#e3eff8}
@media(max-width:950px){#portal-section:has(.protocol-card) .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#portal-section:has(.protocol-card) .cards{grid-template-columns:1fr}}

/* Formatos explícitos de documentos e permissões informativas */
.record-icon[class*="type-"]{font-size:13px;font-weight:850;letter-spacing:.1px}
.record-icon.type-excel,.record-icon.type-sheets{background:#e6f5ed;color:#08734a}
.record-icon.type-word,.record-icon.type-docs,.record-icon.type-documento{background:#e9f1ff;color:#245eaa}
.record-icon.type-pdf{background:#fff0ec;color:#b43d31}
.record-icon.type-powerpoint{background:#fff2e5;color:#9d5218}
.record-icon.type-album{background:#f5ecff;color:#6942a2;font-size:22px}
.record-icon.type-outro{background:#ecf1f4;color:#46637a;font-size:22px}
.record-access.editable{background:#e6effe;color:#215a9e}
.access-tip{margin:0 0 15px!important;padding:10px 12px;border-left:3px solid #7eabc6;background:#f1f7fa;border-radius:0 7px 7px 0}
.format-grid{grid-template-columns:1fr 1fr}
@media(max-width:680px){.format-grid{grid-template-columns:1fr}}
.protocol-card .record-icon[class*="type-"]{font-size:11px!important}

/* Persistência de sessão, opcional e explícita para cada computador. */
#remember-option{margin:-3px 0 18px}
.auth-card label.remember-session{display:flex;gap:10px;align-items:center;cursor:pointer;margin:0 0 5px;color:#244b67;line-height:1.4;font-size:13px}
.auth-card label.remember-session input[type=checkbox]{display:inline-block;flex:0 0 19px;width:19px;height:19px;min-height:19px;padding:0;margin:0;accent-color:#1b5d83}
.remember-help{margin:0 0 0 29px;color:#70889b;font-size:11px;line-height:1.5}

/* Administração: filtros por área e pesquisa nominal, com lista em página inteira. */
.admin-existing-panel{grid-column:1/-1;min-width:0}
.admin-records-heading h3{margin:0 0 4px}
.admin-records-heading p{color:#607b90;font-size:13px;margin:0 0 16px;line-height:1.5}
.admin-records-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) minmax(240px,1.6fr) auto;gap:13px;align-items:end;background:#f4f8fa;border:1px solid #dbe7ee;border-radius:12px;padding:16px;margin:14px 0 12px}
.admin-records-toolbar label{font-size:13px;font-weight:700;color:#173c5b;min-width:0;margin:0}
.admin-records-toolbar select,.admin-records-toolbar input{display:block;width:100%;height:44px;border:1px solid #cbdde9;border-radius:9px;background:#fff;color:#153852;font:inherit;font-weight:400;margin-top:6px;padding:9px 12px}
.admin-records-toolbar .outline-button{height:44px;min-height:44px;padding:0 16px;white-space:nowrap}
.admin-record-count{font-size:12px;color:#4e728a;font-weight:650;margin:12px 0 13px}
.admin-existing-panel .v4-admin-record{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:13px 0}
.admin-record-info{min-width:0;flex:1}
.admin-existing-panel .v4-buttons{margin-top:0;flex-shrink:0;justify-content:flex-end}
.admin-record-more{display:block;margin:20px auto 3px;border:1px solid #b9d6e6;background:#eef7fc;color:#174e76;padding:12px 20px;font:inherit;font-size:13px;font-weight:750;border-radius:11px;cursor:pointer}
.admin-record-more:hover{background:#e3f0f8}
@media(max-width:850px){.admin-records-toolbar{grid-template-columns:1fr 1fr}.admin-records-toolbar .outline-button{grid-column:1/-1;justify-self:start}}
@media(max-width:600px){.admin-records-toolbar{grid-template-columns:1fr}.admin-records-toolbar .outline-button{grid-column:auto;width:100%}.admin-existing-panel .v4-admin-record{align-items:stretch;flex-direction:column;gap:0}.admin-existing-panel .v4-buttons{justify-content:flex-start}}
