.gbui-contacts{width:100%;min-width:0}.gbui-contacts[hidden],.gbui-contacts [hidden]{display:none!important}
.gbui-contacts__card{background:#fff;border:1px solid #ebebeb;border-radius:16px;padding:18px 20px 16px;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.gbui-contacts__card[data-login-card]{cursor:pointer}
.gbui-contacts__header{display:flex;align-items:center;margin-bottom:14px}.gbui-contacts__header.has-title-icon{gap:10px}.gbui-contacts__title-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f5f5f5;color:#3a3a3a;flex:none}.gbui-contacts__title-icon svg{width:18px;height:18px;fill:currentColor}.gbui-contacts__title{margin:0;font-size:18px;line-height:1.2;font-weight:700;color:#2f2f2f}
.gbui-contacts__list{display:flex;flex-direction:column}.gbui-contacts__item{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e9e9e9}.gbui-contacts__item:last-child{border-bottom:0}.gbui-contacts__item-icon,.gbui-contacts__lock{display:grid;place-items:center}.gbui-contacts__item-icon svg{width:20px;height:20px;fill:currentColor}.gbui-contacts__lock{justify-self:end;color:#c9a43b}.gbui-contacts__lock svg{width:12px;height:12px;fill:currentColor}.gbui-contacts__item-body{display:flex;flex-direction:column;gap:1px;min-width:0}.gbui-contacts__label{display:block;margin:0;font-size:12px;line-height:1;color:#999}.gbui-contacts__value{display:block;margin:0;min-height:0;font-size:14px;line-height:1.1;font-weight:500;color:#303030;overflow-wrap:anywhere}.gbui-contacts__value a{color:inherit;text-decoration:none}.gbui-contacts__item.is-unlocked{grid-template-columns:28px minmax(0,1fr)}.gbui-contacts__item.is-unlocked .gbui-contacts__lock{display:none}.gbui-contacts__item.is-empty{display:none}.gbui-contacts__item.is-profile-locked .gbui-contacts__value{font-size:12px;color:#666;display:flex;align-items:center;min-height:18px}.gbui-contacts__item.is-login-locked{padding:14px 0}.gbui-contacts__item.is-login-locked .gbui-contacts__item-body{justify-content:center;gap:0}.gbui-contacts__item.is-login-locked .gbui-contacts__label{font-size:13px;color:#8a8a8a;font-weight:500}
.gbui-contacts__footer{padding-top:16px;margin-top:10px;border-top:1px solid #ececec}.gbui-contacts__button{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;text-decoration:none;padding:10px 14px;border:1px solid #e98686;border-radius:10px;background:#fff;color:#d74b4b;font-weight:700;cursor:pointer;transition:all .18s ease}.gbui-contacts__button:hover{background:#fff7f7;border-color:#de6b6b}
.gbui-contacts__correction{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:16px;margin-top:16px;border-top:1px solid #ececec}.gbui-contacts__correction-prompt{font-size:13px;line-height:1.35;color:#555}.gbui-contacts__correction-button{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:9px 14px;border:0;border-radius:8px;background:#d71920;color:#fff;font-weight:700;cursor:pointer}.gbui-contacts__correction-button svg{width:16px;height:16px;fill:currentColor}
.gbui-contacts__empty-state{text-align:center;padding:14px 4px 6px}.gbui-contacts__empty-image{display:block;width:92px;height:auto;max-height:120px;object-fit:contain;margin:0 auto 12px}.gbui-contacts__empty-title{max-width:340px;margin:0 auto 7px;font-size:18px;line-height:1.25}.gbui-contacts__empty-description,.gbui-contacts__empty-line-text{max-width:360px;margin:0 auto;color:#666;font-size:13px;line-height:1.45}.gbui-contacts__empty-line-text{margin-top:8px}.gbui-contacts__empty-notice{display:flex;flex-direction:column;gap:3px;max-width:360px;margin:12px auto 0;padding:11px 13px;border-radius:8px;background:#fff3f3;text-align:left}.gbui-contacts__empty-notice strong{color:#d71920;font-size:13px}.gbui-contacts__empty-notice small{color:#666;font-size:11px}.gbui-contacts__correction--empty{margin-top:12px;padding-top:12px}
.gbui-contacts__modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:20px}.gbui-contacts__modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}.gbui-contacts__modal-dialog{position:relative;width:min(480px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:14px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.gbui-contacts__modal-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:28px;cursor:pointer}.gbui-contacts__modal-title{margin:0 35px 20px 0}.gbui-contacts__relationship{display:grid;gap:10px;margin-bottom:18px}.gbui-contacts__relationship label{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid #ddd;border-radius:8px;cursor:pointer}.gbui-contacts__field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.gbui-contacts__field input,.gbui-contacts__field textarea{width:100%;border:1px solid #ccc;border-radius:7px;padding:10px 12px;font:inherit}.gbui-contacts__field input{min-height:44px}.gbui-contacts__form-submit{width:100%;min-height:44px;border:0;border-radius:7px;background:#c93333;color:#fff;font-weight:700;cursor:pointer}.gbui-contacts__form-error{margin-bottom:10px;color:#b32d2e;font-size:13px}.gbui-contacts__form-success{margin-bottom:10px;color:#198754;font-size:13px}.gbui-contacts__hp{position:absolute!important;left:-9999px!important;opacity:0!important}@media(max-width:767px){.gbui-contacts__card{padding:16px}.gbui-contacts__correction{align-items:stretch;flex-direction:column}.gbui-contacts__correction-button{width:100%}.gbui-contacts__empty-state{padding:10px 2px 3px}.gbui-contacts__empty-title{font-size:17px}.gbui-contacts__empty-notice{text-align:center}.gbui-contacts__modal{padding:12px}.gbui-contacts__modal-dialog{padding:20px}.gbui-contacts__item{grid-template-columns:24px minmax(0,1fr) 16px;gap:10px}}

/* Guia Brás typography bridge — guia-bras-ui.
 * Elementor remains the font loader. The component only consumes its global tokens.
 */
.gbui-contacts{
  --gb-component-font-body:var(--gb-font-body,var(--e-global-typography-text-font-family,"Inter"));
  --gb-component-font-heading:var(--gb-font-heading,var(--e-global-typography-primary-font-family,var(--e-global-typography-secondary-font-family,"Open Sans")));
  font-family:var(--gb-component-font-body),Arial,sans-serif!important;
}
.gbui-contacts :where(p,li,dt,dd,label,a,button,input,select,textarea,option,table,th,td,small,summary,[role="button"],[role="tab"],[role="option"],[class*="__label"],[class*="-label"],[class*="__text"],[class*="-text"],[class*="__copy"],[class*="-copy"],[class*="__description"],[class*="-description"],[class*="__meta"],[class*="-meta"],[class*="__message"],[class*="-message"],[class*="__help"],[class*="-help"],[class*="__value"],[class*="-value"],[class*="__condition"],[class*="-condition"],[class*="__temp"],[class*="-temp"]){
  font-family:var(--gb-component-font-body),Arial,sans-serif!important;
}
.gbui-contacts :where(h1,h2,h3,h4,h5,h6,legend,[class*="__title"],[class*="-title"],[class*="__heading"],[class*="-heading"]),
.gbui-contacts :where(h1,h2,h3,h4,h5,h6,legend,[class*="__title"],[class*="-title"],[class*="__heading"],[class*="-heading"]) :where(a,span,strong,small,b,em),
.gbui-contacts :where([class*="__copy"],[class*="-copy"],[class*="__main"],[class*="-main"]) > strong{
  font-family:var(--gb-component-font-heading),Arial,sans-serif!important;
}
