/* VG FISCALIZA: consulta e chat de protocolo com contraste final */

body.portal-publico .protocol-strip{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 8% 16%,rgba(37,99,235,.12),transparent 28%),
    linear-gradient(135deg,#eef6ff 0%,#ffffff 58%,#e9f4ff 100%) !important;
  border:1px solid rgba(37,99,235,.18) !important;
  box-shadow:0 24px 70px rgba(15,35,71,.10) !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

body.portal-publico .protocol-strip h2,
body.portal-publico .protocol-strip p,
body.portal-publico .protocol-strip strong,
body.portal-publico .protocol-strip small,
body.portal-publico .protocol-strip label{
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

body.portal-publico .protocol-strip p,
body.portal-publico .protocol-strip small{
  color:#425b7c !important;
  -webkit-text-fill-color:#425b7c !important;
}

body.portal-publico .strip-illustration{
  background:#ffffff !important;
  color:#0f5ee8 !important;
  -webkit-text-fill-color:#0f5ee8 !important;
  border:1px solid rgba(37,99,235,.14) !important;
  box-shadow:0 16px 42px rgba(37,99,235,.14) !important;
}

body.portal-publico .strip-search input{
  height:54px !important;
  border-radius:14px !important;
  border:1px solid rgba(15,35,71,.18) !important;
  background:#ffffff !important;
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 12px 28px rgba(15,35,71,.06) !important;
}

body.portal-publico .strip-search input::placeholder{
  color:#6b7d96 !important;
  -webkit-text-fill-color:#6b7d96 !important;
}

body.portal-publico .strip-search .btn,
body.portal-publico .strip-search button{
  height:54px !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#0f9f52,#087a3a) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 16px 36px rgba(8,122,58,.24) !important;
}

body.portal-publico .search-result{
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

body.portal-publico .portal-search-ok,
body.portal-publico .portal-search-alert{
  margin-top:4px !important;
  border-radius:18px !important;
  padding:14px 16px !important;
  background:#ffffff !important;
  border:1px solid rgba(37,99,235,.16) !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
  box-shadow:0 14px 34px rgba(15,35,71,.07) !important;
}

body.portal-publico .portal-search-alert{
  border-color:rgba(245,158,11,.24) !important;
  background:#fff9ee !important;
}

body.portal-publico .trust-section,
body.portal-publico .trust-section article,
body.portal-publico .trust-section strong,
body.portal-publico .trust-section small{
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

body.portal-publico .trust-section small{
  color:#52657f !important;
  -webkit-text-fill-color:#52657f !important;
}

body.portal-publico .protocol-system-link{
  display:none !important;
}

body.portal-publico .protocol-progress-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  margin-top:8px !important;
  margin-right:8px !important;
  padding:10px 14px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#0f5ee8,#0b3b83) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:.82rem !important;
  font-weight:950 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
  cursor:pointer !important;
  box-shadow:0 14px 30px rgba(15,94,232,.24) !important;
}

body.portal-publico .protocol-progress-link:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 38px rgba(15,94,232,.30) !important;
}

body.portal-publico.portal-chat-open{
  overflow:hidden !important;
}

.portal-chat-modal-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483200 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:22px !important;
  overflow:hidden !important;
  overscroll-behavior:contain !important;
  background:rgba(5,20,42,.54) !important;
  backdrop-filter:blur(18px) saturate(140%) !important;
}

.portal-chat-modal{
  width:min(980px,96vw) !important;
  height:min(760px,92vh) !important;
  max-height:min(760px,92vh) !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  overflow:hidden !important;
  border-radius:28px !important;
  background:#ffffff !important;
  border:1px solid rgba(255,255,255,.78) !important;
  box-shadow:0 34px 110px rgba(2,14,35,.42) !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

.portal-chat-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding:22px 24px !important;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.20),transparent 32%),
    linear-gradient(135deg,#0b3b83,#0f5ee8) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.portal-chat-head span{
  display:inline-flex !important;
  margin-bottom:8px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  font-size:12px !important;
  font-weight:900 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.portal-chat-head h2{
  margin:0 !important;
  font-size:clamp(22px,3vw,34px) !important;
  line-height:1.05 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.portal-chat-head p,
.portal-chat-head strong{
  margin:8px 0 0 !important;
  color:rgba(255,255,255,.86) !important;
  -webkit-text-fill-color:rgba(255,255,255,.86) !important;
}

.portal-chat-close{
  width:44px !important;
  height:44px !important;
  display:grid !important;
  place-items:center !important;
  flex:0 0 auto !important;
  border:1px solid rgba(255,255,255,.28) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.16) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:26px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

.portal-chat-body{
  min-height:0 !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:300px minmax(0,1fr) !important;
  background:linear-gradient(180deg,#f8fbff,#eef5ff) !important;
}

.portal-chat-summary{
  padding:18px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  border-right:1px solid rgba(37,99,235,.12) !important;
  background:rgba(255,255,255,.62) !important;
}

.portal-chat-summary div{
  padding:13px !important;
  border-radius:16px !important;
  background:#ffffff !important;
  border:1px solid rgba(37,99,235,.12) !important;
  box-shadow:0 12px 24px rgba(15,35,71,.05) !important;
}

.portal-chat-summary small{
  display:block !important;
  margin-bottom:5px !important;
  font-size:11px !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
  color:#60728d !important;
  -webkit-text-fill-color:#60728d !important;
}

.portal-chat-summary strong{
  display:block !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
  line-height:1.35 !important;
}

.portal-chat-box{
  min-height:0 !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-rows:minmax(0,1fr) auto auto !important;
}

.portal-chat-thread{
  min-height:0 !important;
  max-height:none !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  scroll-behavior:auto !important;
  padding:20px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
}

.portal-chat-message{
  width:fit-content !important;
  max-width:min(640px,86%) !important;
  padding:13px 15px !important;
  border-radius:18px !important;
  border:1px solid rgba(37,99,235,.12) !important;
  background:#ffffff !important;
  box-shadow:0 12px 28px rgba(15,35,71,.08) !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

.portal-chat-message.cidadao{
  align-self:flex-end !important;
  background:linear-gradient(135deg,#0f5ee8,#2583ff) !important;
  border-color:rgba(37,99,235,.22) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.portal-chat-message.gabinete{
  align-self:flex-start !important;
}

.portal-chat-message strong,
.portal-chat-message p,
.portal-chat-message small{
  color:inherit !important;
  -webkit-text-fill-color:inherit !important;
}

.portal-chat-message p{
  margin:6px 0 !important;
  line-height:1.45 !important;
}

.portal-chat-message small{
  display:block !important;
  opacity:.72 !important;
  font-size:12px !important;
}

.portal-chat-composer{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:10px !important;
  padding:16px 20px 10px !important;
  border-top:1px solid rgba(37,99,235,.12) !important;
  background:#ffffff !important;
}

.portal-chat-composer textarea{
  min-height:54px !important;
  max-height:140px !important;
  resize:vertical !important;
  padding:14px 15px !important;
  border-radius:16px !important;
  border:1px solid rgba(37,99,235,.18) !important;
  background:#f8fbff !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86) !important;
}

.portal-chat-composer textarea::placeholder{
  color:#6b7d96 !important;
  -webkit-text-fill-color:#6b7d96 !important;
}

.portal-chat-composer button{
  min-width:110px !important;
  border:0 !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#0f9f52,#087a3a) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-weight:950 !important;
  cursor:pointer !important;
  box-shadow:0 16px 34px rgba(8,122,58,.24) !important;
}

.portal-chat-note{
  display:block !important;
  padding:0 20px 18px !important;
  color:#087a3a !important;
  -webkit-text-fill-color:#087a3a !important;
  font-weight:850 !important;
}

.portal-finalizado{
  margin:16px 20px !important;
  padding:14px !important;
  border-radius:16px !important;
  background:#fff7ed !important;
  border:1px solid #fed7aa !important;
  color:#9a3412 !important;
  -webkit-text-fill-color:#9a3412 !important;
  font-weight:900 !important;
}

.portal-locked-note{
  margin:16px 20px 18px !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  background:#eff6ff !important;
  border:1px solid rgba(37,99,235,.18) !important;
  color:#174078 !important;
  -webkit-text-fill-color:#174078 !important;
  font-weight:900 !important;
  box-shadow:0 12px 28px rgba(15,35,71,.06) !important;
}

@media(max-width:820px){
  .portal-chat-modal-overlay{padding:12px !important;}
  .portal-chat-modal{border-radius:22px !important;max-height:94vh !important;}
  .portal-chat-body{grid-template-columns:1fr !important;}
  .portal-chat-summary{border-right:0 !important;border-bottom:1px solid rgba(37,99,235,.12) !important;}
  .portal-chat-thread{max-height:330px !important;}
  .portal-chat-composer{grid-template-columns:1fr !important;}
  .portal-chat-composer button{height:50px !important;}
}

/* VG FISCALIZA - acabamento do popup de protocolo */
body.portal-publico .portal-chat-modal{
  height:min(760px,92vh) !important;
  max-height:92vh !important;
  overflow:hidden !important;
  border-radius:30px !important;
  background:#f8fbff !important;
}

body.portal-publico .portal-chat-head{
  min-height:130px !important;
  padding:26px 28px !important;
  background:
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(135deg,#103f91 0%,#135ee4 52%,#0f73ff 100%) !important;
}

body.portal-publico .portal-chat-head p strong{
  display:inline-flex !important;
  margin-left:6px !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.portal-publico .portal-chat-body{
  grid-template-columns:290px minmax(0,1fr) !important;
  background:#eef5ff !important;
}

body.portal-publico .portal-chat-summary{
  background:linear-gradient(180deg,#f8fbff,#ffffff) !important;
}

body.portal-publico .portal-chat-summary div{
  border-radius:18px !important;
  border-color:rgba(37,99,235,.14) !important;
  box-shadow:0 14px 30px rgba(15,35,71,.06) !important;
}

body.portal-publico .portal-chat-box{
  background:#eef5ff !important;
}

body.portal-publico .portal-chat-thread{
  padding:22px !important;
  background:
    radial-gradient(circle at 80% 12%,rgba(37,99,235,.08),transparent 34%),
    linear-gradient(180deg,#f2f7ff,#eef5ff) !important;
}

body.portal-publico .portal-chat-message{
  border-radius:20px !important;
  font-weight:800 !important;
}

body.portal-publico .portal-chat-message.cidadao{
  background:linear-gradient(135deg,#155fe6,#2d85ff) !important;
  box-shadow:0 16px 34px rgba(37,99,235,.22) !important;
}

body.portal-publico .portal-chat-composer{
  grid-template-columns:minmax(0,1fr) 104px 112px !important;
  align-items:stretch !important;
  padding:18px 20px 12px !important;
}

body.portal-publico .portal-chat-modal .portal-chat-composer textarea{
  min-height:72px !important;
  border-radius:17px !important;
  background:#ffffff !important;
  color:#10233f !important;
  -webkit-text-fill-color:#10233f !important;
}

body.portal-publico .portal-chat-modal .portal-chat-composer button,
body.portal-publico .portal-chat-modal .portal-chat-composer button[type="button"]{
  min-height:72px !important;
  display:grid !important;
  place-items:center !important;
  border:0 !important;
  border-radius:17px !important;
  background:linear-gradient(135deg,#10a85a,#087a3a) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:14px !important;
  font-weight:950 !important;
  text-align:center !important;
}

body.portal-publico .portal-chat-file{
  min-height:72px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(37,99,235,.18) !important;
  border-radius:17px !important;
  background:#ffffff !important;
  color:#123f91 !important;
  -webkit-text-fill-color:#123f91 !important;
  font-size:13px !important;
  font-weight:950 !important;
  cursor:pointer !important;
  box-shadow:0 12px 24px rgba(15,35,71,.06) !important;
}

body.portal-publico .portal-chat-file input{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

body.portal-publico .portal-chat-note{
  color:#087a3a !important;
  -webkit-text-fill-color:#087a3a !important;
}

body.portal-publico .portal-closed-overlay{
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:rgba(1,11,8,.76) !important;
  backdrop-filter:blur(12px) !important;
}

body.portal-publico .portal-closed-card{
  position:relative !important;
  width:min(720px,calc(100vw - 32px)) !important;
  min-height:360px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  padding:46px 42px 34px !important;
  border-radius:30px !important;
  border:1px solid rgba(34,197,94,.28) !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(34,197,94,.18),transparent 42%),
    linear-gradient(180deg,#061d15,#03110c) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.04) inset !important;
  color:#f4fff8 !important;
  -webkit-text-fill-color:#f4fff8 !important;
  text-align:center !important;
}

body.portal-publico .portal-closed-icon{
  width:70px !important;
  height:70px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:24px !important;
  background:linear-gradient(135deg,#22c55e,#0b7a3b) !important;
  color:#03110c !important;
  -webkit-text-fill-color:#03110c !important;
  font-size:34px !important;
  font-weight:1000 !important;
  box-shadow:0 18px 42px rgba(34,197,94,.26) !important;
}

body.portal-publico .portal-closed-card span{
  color:#86efac !important;
  -webkit-text-fill-color:#86efac !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
}

body.portal-publico .portal-closed-card h2{
  max-width:520px !important;
  margin:0 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:clamp(26px,3vw,38px) !important;
  line-height:1.08 !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
}

body.portal-publico .portal-closed-card p{
  max-width:460px !important;
  margin:0 !important;
  color:#d8fbe7 !important;
  -webkit-text-fill-color:#d8fbe7 !important;
  font-size:17px !important;
  font-weight:850 !important;
  line-height:1.5 !important;
}

body.portal-publico .portal-closed-card small{
  color:rgba(216,251,231,.72) !important;
  -webkit-text-fill-color:rgba(216,251,231,.72) !important;
  font-weight:900 !important;
}

body.portal-publico .portal-rating-box,
body.portal-publico .portal-rating-thanks{
  width:min(520px,100%) !important;
  margin-top:10px !important;
  padding:18px !important;
  border-radius:24px !important;
  border:1px solid rgba(134,239,172,.22) !important;
  background:rgba(255,255,255,.055) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}

body.portal-publico .portal-rating-box h3{
  margin:0 0 12px !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:19px !important;
  line-height:1.2 !important;
  font-weight:950 !important;
}

body.portal-publico .portal-stars{
  display:inline-flex !important;
  flex-direction:row-reverse !important;
  justify-content:center !important;
  gap:7px !important;
  margin-bottom:14px !important;
}

body.portal-publico .portal-stars input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}

body.portal-publico .portal-stars label{
  margin:0 !important;
  cursor:pointer !important;
  color:rgba(255,255,255,.30) !important;
  -webkit-text-fill-color:rgba(255,255,255,.30) !important;
  font-size:34px !important;
  line-height:1 !important;
  filter:drop-shadow(0 5px 12px rgba(0,0,0,.24)) !important;
  transition:transform .14s ease,color .14s ease !important;
}

body.portal-publico .portal-stars label:hover,
body.portal-publico .portal-stars label:hover ~ label,
body.portal-publico .portal-stars input:checked ~ label{
  color:#facc15 !important;
  -webkit-text-fill-color:#facc15 !important;
  transform:translateY(-1px) scale(1.04) !important;
}

body.portal-publico .portal-rating-comment{
  display:block !important;
  margin:0 !important;
  color:#d8fbe7 !important;
  -webkit-text-fill-color:#d8fbe7 !important;
  text-align:left !important;
  font-size:13px !important;
  font-weight:900 !important;
}

body.portal-publico .portal-rating-comment small{
  color:rgba(216,251,231,.70) !important;
  -webkit-text-fill-color:rgba(216,251,231,.70) !important;
}

body.portal-publico .portal-rating-comment textarea{
  min-height:82px !important;
  margin-top:8px !important;
  border-radius:16px !important;
  border:1px solid rgba(134,239,172,.22) !important;
  background:rgba(0,0,0,.20) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  resize:vertical !important;
}

body.portal-publico .portal-rating-comment textarea::placeholder{
  color:rgba(216,251,231,.52) !important;
  -webkit-text-fill-color:rgba(216,251,231,.52) !important;
}

body.portal-publico .portal-rating-submit{
  width:100% !important;
  min-height:48px !important;
  margin-top:12px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#22c55e,#16a34a) !important;
  color:#03110c !important;
  -webkit-text-fill-color:#03110c !important;
  font-size:14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
  box-shadow:0 16px 34px rgba(34,197,94,.24) !important;
}

body.portal-publico .portal-rating-thanks strong{
  display:block !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:18px !important;
}

body.portal-publico .portal-rating-thanks small{
  display:block !important;
  margin-top:6px !important;
}

body.portal-publico .portal-closed-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
}

body.portal-publico .portal-search-closed{
  border:1px solid rgba(34,197,94,.24) !important;
  background:linear-gradient(180deg,#062117,#03110c) !important;
  color:#f4fff8 !important;
  -webkit-text-fill-color:#f4fff8 !important;
  box-shadow:0 18px 46px rgba(0,0,0,.24) !important;
}

body.portal-publico .portal-search-closed small{
  color:#c9f7dc !important;
  -webkit-text-fill-color:#c9f7dc !important;
}

@media(max-width:820px){
  body.portal-publico .portal-chat-body{grid-template-columns:1fr !important;}
  body.portal-publico .portal-chat-composer{grid-template-columns:1fr !important;}
  body.portal-publico .portal-chat-modal .portal-chat-composer button{min-height:52px !important;}
  body.portal-publico .portal-chat-file{min-height:52px !important;}
}

/* Avaliacao antes do WhatsApp */
body.portal-publico.portal-rating-open{
  overflow:hidden !important;
}

body.portal-publico .portal-rating-modal-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483300 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:18px !important;
  background:rgba(1,11,8,.78) !important;
  backdrop-filter:blur(16px) saturate(150%) !important;
}

body.portal-publico .portal-rating-modal{
  position:relative !important;
  width:min(540px,100%) !important;
  max-height:90vh !important;
  overflow:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:12px !important;
  padding:30px 28px 24px !important;
  border-radius:28px !important;
  border:1px solid rgba(34,197,94,.32) !important;
  background:
    radial-gradient(circle at 50% -10%,rgba(34,197,94,.22),transparent 38%),
    linear-gradient(180deg,#062419 0%,#03120d 100%) !important;
  box-shadow:0 34px 90px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.06) !important;
  color:#f4fff8 !important;
  -webkit-text-fill-color:#f4fff8 !important;
  text-align:center !important;
}

body.portal-publico .portal-rating-modal-close{
  position:absolute !important;
  top:14px !important;
  right:14px !important;
  width:40px !important;
  height:40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.06) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:24px !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

body.portal-publico .portal-rating-modal-icon{
  width:62px !important;
  height:62px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,#22c55e,#0f8a46) !important;
  color:#03120d !important;
  -webkit-text-fill-color:#03120d !important;
  font-size:30px !important;
  box-shadow:0 18px 42px rgba(34,197,94,.24) !important;
}

body.portal-publico .portal-rating-modal-kicker{
  color:#86efac !important;
  -webkit-text-fill-color:#86efac !important;
  font-size:12px !important;
  font-weight:950 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}

body.portal-publico .portal-rating-modal h2{
  margin:0 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:clamp(25px,4.6vw,34px) !important;
  line-height:1.08 !important;
  font-weight:1000 !important;
  letter-spacing:0 !important;
}

body.portal-publico .portal-rating-modal p{
  max-width:420px !important;
  margin:0 !important;
  color:#d8fbe7 !important;
  -webkit-text-fill-color:#d8fbe7 !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.48 !important;
}

body.portal-publico .portal-pre-rating-stars{
  display:flex !important;
  justify-content:center !important;
  gap:7px !important;
  margin:2px 0 0 !important;
}

body.portal-publico .portal-pre-rating-stars button{
  width:46px !important;
  height:46px !important;
  border:1px solid rgba(250,204,21,.20) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.06) !important;
  color:rgba(255,255,255,.38) !important;
  -webkit-text-fill-color:rgba(255,255,255,.38) !important;
  font-size:29px !important;
  line-height:1 !important;
  cursor:pointer !important;
  transition:transform .16s ease, background .16s ease, color .16s ease, border-color .16s ease !important;
}

body.portal-publico .portal-pre-rating-stars button:hover,
body.portal-publico .portal-pre-rating-stars button.is-selected{
  transform:translateY(-2px) scale(1.03) !important;
  border-color:rgba(250,204,21,.58) !important;
  background:rgba(250,204,21,.14) !important;
  color:#facc15 !important;
  -webkit-text-fill-color:#facc15 !important;
}

body.portal-publico .portal-pre-rating-comment{
  width:100% !important;
  display:block !important;
  color:#d8fbe7 !important;
  -webkit-text-fill-color:#d8fbe7 !important;
  text-align:left !important;
  font-size:13px !important;
  font-weight:950 !important;
}

body.portal-publico .portal-pre-rating-comment textarea{
  width:100% !important;
  min-height:96px !important;
  margin-top:9px !important;
  padding:14px 15px !important;
  border-radius:18px !important;
  border:1px solid rgba(134,239,172,.24) !important;
  background:rgba(0,0,0,.24) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  resize:vertical !important;
  outline:none !important;
}

body.portal-publico .portal-pre-rating-comment textarea:focus{
  border-color:rgba(34,197,94,.74) !important;
  box-shadow:0 0 0 4px rgba(34,197,94,.13) !important;
}

body.portal-publico .portal-pre-rating-comment textarea::placeholder{
  color:rgba(216,251,231,.52) !important;
  -webkit-text-fill-color:rgba(216,251,231,.52) !important;
}

body.portal-publico .portal-pre-rating-actions{
  width:100% !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}

body.portal-publico .portal-pre-rating-actions button{
  min-height:50px !important;
  border-radius:999px !important;
  font-size:14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
  transition:transform .16s ease, box-shadow .16s ease, opacity .16s ease !important;
}

body.portal-publico .portal-pre-rating-submit{
  border:0 !important;
  background:linear-gradient(135deg,#30e887,#16a34a) !important;
  color:#02120c !important;
  -webkit-text-fill-color:#02120c !important;
  box-shadow:0 18px 42px rgba(34,197,94,.24) !important;
}

body.portal-publico .portal-pre-rating-skip{
  border:1px solid rgba(134,239,172,.30) !important;
  background:linear-gradient(180deg,rgba(17,72,47,.88),rgba(5,31,21,.92)) !important;
  color:#f4fff8 !important;
  -webkit-text-fill-color:#f4fff8 !important;
}

body.portal-publico .portal-pre-rating-actions button:hover{
  transform:translateY(-1px) !important;
}

body.portal-publico .portal-pre-rating-actions button:disabled,
body.portal-publico .portal-pre-rating-stars button:disabled{
  cursor:not-allowed !important;
  opacity:1 !important;
}

body.portal-publico .portal-pre-rating-submit:disabled{
  border:1px solid rgba(134,239,172,.20) !important;
  background:rgba(134,239,172,.10) !important;
  color:#b8dac5 !important;
  -webkit-text-fill-color:#b8dac5 !important;
  box-shadow:none !important;
  filter:none !important;
}

@media(max-width:560px){
  body.portal-publico .portal-rating-modal-overlay{padding:12px !important;}
  body.portal-publico .portal-rating-modal{padding:28px 18px 20px !important;border-radius:24px !important;gap:10px !important;}
  body.portal-publico .portal-pre-rating-stars{gap:5px !important;}
  body.portal-publico .portal-pre-rating-stars button{width:42px !important;height:42px !important;font-size:27px !important;border-radius:14px !important;}
}
