*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17194b}body{background:#f6f7fb}a{text-decoration:none;color:inherit}button,input{font:inherit}.customer-shell{min-height:100vh;display:grid;grid-template-columns:268px 1fr}.customer-sidebar{position:sticky;top:0;height:100vh;padding:28px 22px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;border-right:1px solid #e7e8f0}.customer-brand{font-weight:950;font-size:21px;color:#161856}.customer-area-label{display:block;margin-top:6px;color:#7b8194;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px}.customer-nav{display:grid;gap:7px;margin-top:34px}.customer-nav a,.customer-nav>span{min-height:46px;padding:0 14px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:800}.customer-nav a.active{background:#eeeaff;color:#6942d6}.customer-nav>span{color:#8d92a2;background:#fafafd;cursor:default}.customer-nav small{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:#a0a5b3}.customer-sidebar-bottom{display:grid;gap:8px}.customer-sidebar-bottom a,.customer-sidebar-bottom button{min-height:42px;padding:0 12px;border-radius:12px;display:flex;align-items:center;background:none;border:0;color:#5e6477;font-size:13px;font-weight:800;cursor:pointer}.customer-sidebar-bottom form{margin:0}.customer-sidebar-bottom button{width:100%}.customer-sidebar-bottom .admin-switch{background:#f0ebff;color:#6d42d8}.customer-content{padding:42px max(30px,calc((100vw - 1500px)/2));min-width:0}.customer-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:34px 36px;border-radius:26px;background:linear-gradient(135deg,#fff5e7,#f3edff);border:1px solid #eee7f6}.customer-kicker,.card-eyebrow{display:block;color:#7550d8;font-size:10px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.customer-welcome h1,.customer-page-heading h1{margin:8px 0 0;font-size:38px;letter-spacing:-1.4px}.customer-welcome p,.customer-page-heading p{margin:8px 0 0;color:#6a7186;font-size:15px}.customer-admin-entry{padding:12px 16px;border-radius:13px;background:#1d1b52;color:#fff;font-size:12px;font-weight:900;white-space:nowrap}.customer-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.customer-card,.customer-support-card{padding:26px;border-radius:22px;background:#fff;border:1px solid #e8e9f0;box-shadow:0 10px 28px rgba(39,38,82,.04)}.customer-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.customer-card h2,.customer-support-card h2{margin:7px 0 0;font-size:22px}.customer-card>p,.license-card p,.customer-support-card p{margin:13px 0 0;color:#6d7488;font-size:14px;line-height:1.55}.status-pill{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900}.status-pill.success{background:#e8f7ed;color:#2b874c}.status-pill.neutral{background:#f0f1f5;color:#73798b}.account-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.account-summary div{padding:12px;border-radius:14px;background:#f8f8fc;min-width:0}.account-summary dt{font-size:9px;font-weight:900;text-transform:uppercase;color:#979cac}.account-summary dd{margin:5px 0 0;font-size:12px;font-weight:800;overflow-wrap:anywhere}.customer-link-button{display:inline-flex;margin-top:4px;padding:11px 14px;border-radius:12px;background:#eeeaff;color:#6840d4;font-size:12px;font-weight:900}.customer-disabled-action{display:inline-flex;margin-top:18px;color:#a0a5b2;font-size:11px;font-weight:800}.customer-support-card{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.customer-page-heading{margin-bottom:20px}.customer-account-detail dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}.customer-account-detail dl div{padding:16px;border-radius:15px;background:#f8f8fc}.customer-account-detail dt{font-size:10px;font-weight:900;text-transform:uppercase;color:#989dac}.customer-account-detail dd{margin:6px 0 0;font-size:14px;font-weight:800}.customer-info-note{margin:20px 0 0!important;padding:14px;border-radius:14px;background:#fff8e9;color:#7c6b46!important}.customer-mobile-header{display:none}.customer-login-page{background:linear-gradient(135deg,#fff9f1,#f3efff)}.customer-login-shell{min-height:100vh;width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr 440px;gap:44px;align-items:center}.customer-login-brand{padding:30px}.customer-login-brand>span{display:block;margin-top:10px;color:#7650d9;font-size:12px;font-weight:900;letter-spacing:1.8px;text-transform:uppercase}.customer-login-brand h1{max-width:650px;margin:20px 0 0;font-size:52px;line-height:1.02;letter-spacing:-2px}.customer-login-brand p{max-width:650px;margin:20px 0 0;color:#666e83;font-size:17px;line-height:1.55}.customer-login-card{padding:34px;border-radius:26px;background:#fff;border:1px solid #e7e4ef;box-shadow:0 20px 60px rgba(61,47,101,.10)}.customer-login-card h2{margin:9px 0 0;font-size:34px}.customer-login-card>p{margin:8px 0 22px;color:#7a8091}.customer-form{display:grid;gap:16px}.customer-form label{display:grid;gap:7px}.customer-form label>span{font-size:12px;font-weight:900}.customer-form input{width:100%;padding:13px 14px;border:1px solid #dbdde6;border-radius:13px;outline:none}.customer-form input:focus{border-color:#7450dc;box-shadow:0 0 0 3px rgba(116,80,220,.10)}.customer-form button{min-height:48px;border:0;border-radius:14px;background:#7041dc;color:#fff;font-weight:900;cursor:pointer}.customer-form .errorlist{margin:0;padding-left:18px;color:#b83d4f;font-size:12px}.customer-back-link{display:inline-flex;margin-top:18px;color:#6f7485;font-size:12px;font-weight:800}@media(max-width:900px){.customer-shell{grid-template-columns:1fr}.customer-sidebar{display:none}.customer-mobile-header{position:sticky;top:0;z-index:30;height:66px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e7e8ef}.customer-mobile-header details{position:relative}.customer-mobile-header summary{list-style:none;font-size:25px;cursor:pointer}.customer-mobile-header summary::-webkit-details-marker{display:none}.customer-mobile-header nav{position:absolute;right:0;top:42px;width:250px;padding:10px;display:grid;gap:4px;background:#fff;border:1px solid #e5e6ee;border-radius:16px;box-shadow:0 18px 44px rgba(43,40,84,.15)}.customer-mobile-header nav a,.customer-mobile-header nav button{min-height:42px;padding:0 12px;border:0;border-radius:11px;background:none;text-align:left;font-size:13px;font-weight:800}.customer-mobile-header nav form{margin:0}.customer-content{padding:24px 14px 54px}.customer-overview-grid{grid-template-columns:1fr}.customer-welcome{align-items:flex-start;flex-direction:column;padding:26px 22px}.customer-welcome h1,.customer-page-heading h1{font-size:32px}.customer-admin-entry{width:100%;text-align:center}.account-summary{grid-template-columns:1fr}.customer-support-card{align-items:flex-start;flex-direction:column}.customer-account-detail dl{grid-template-columns:1fr}.customer-login-shell{width:calc(100% - 28px);grid-template-columns:1fr;gap:18px;padding:28px 0}.customer-login-brand{padding:10px 6px}.customer-login-brand h1{font-size:38px}.customer-login-brand p{font-size:15px}.customer-login-card{padding:24px}}
.customer-auth-links{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px;color:#777e90;font-size:12px}.customer-auth-links a{color:#6d42d8;font-weight:900}.customer-recovery-note{margin:14px 0 0!important;padding:12px 14px;border-radius:13px;background:#f7f4ff;color:#77728b!important;font-size:11.5px!important;line-height:1.45!important}.customer-form label small{color:#858b9c;font-size:11px;line-height:1.35}.customer-form .errorlist{margin:0;padding-left:18px;color:#b83d4f;font-size:12px}

.customer-code-form input{font-size:24px;font-weight:900;letter-spacing:8px;text-align:center}.customer-auth-divider{display:flex;align-items:center;gap:10px;margin:20px 0;color:#9a9faf;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:1.2px}.customer-auth-divider:before,.customer-auth-divider:after{content:"";height:1px;flex:1;background:#e8e9ef}.customer-secondary-button{background:#eeeaff!important;color:#6840d4!important}.customer-auth-messages{display:grid;gap:8px;margin:14px 0}.customer-auth-message{padding:11px 12px;border-radius:12px;background:#e9f7ed;color:#2c7e48;font-size:12px;font-weight:800}

.customer-support-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.customer-support-form{display:grid;gap:16px;margin-top:20px}.customer-support-form label{display:grid;gap:7px}.customer-support-form label>span{font-size:12px;font-weight:900}.customer-support-form input,.customer-support-form select,.customer-support-form textarea{width:100%;padding:13px 14px;border:1px solid #dbdde6;border-radius:13px;background:#fff;color:#17194b;outline:none}.customer-support-form textarea{resize:vertical;min-height:132px}.customer-support-form input:focus,.customer-support-form select:focus,.customer-support-form textarea:focus{border-color:#7450dc;box-shadow:0 0 0 3px rgba(116,80,220,.10)}.customer-support-form button{min-height:48px;border:0;border-radius:14px;background:#7041dc;color:#fff;font-weight:900;cursor:pointer}.customer-support-form .errorlist{margin:0;padding-left:18px;color:#b83d4f;font-size:12px}.customer-ticket-list{display:grid;gap:12px;margin-top:18px}.customer-ticket-item{padding:16px;border:1px solid #ececf3;border-radius:16px;background:#fafafd}.customer-ticket-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.customer-ticket-topline strong{font-size:11px;letter-spacing:.8px;color:#7650d9}.customer-ticket-item h3{margin:10px 0 0;font-size:16px}.customer-ticket-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;color:#9095a4;font-size:11px;font-weight:800}.customer-ticket-item p{margin:10px 0 0;color:#697085;font-size:13px;line-height:1.5}.ticket-status-open{background:#e8f7ed;color:#2b874c}.ticket-status-in_progress{background:#fff3d9;color:#9a6d12}.ticket-status-closed{background:#eef0f4;color:#72798a}.customer-empty-state{display:grid;gap:6px;margin-top:18px;padding:28px;border:1px dashed #dfe1e9;border-radius:16px;color:#7c8294}.customer-empty-state strong{color:#34375d}.customer-message-stack{display:grid;gap:10px;margin-bottom:18px}.customer-message{padding:12px 14px;border-radius:13px;background:#e9f7ed;color:#2b7d49;font-size:13px;font-weight:800}
@media(max-width:900px){.customer-support-layout{grid-template-columns:1fr}.customer-ticket-form-card,.customer-ticket-list-card{padding:20px}.customer-ticket-topline{align-items:flex-start}.customer-ticket-meta{flex-direction:column;gap:4px}}

.status-pill.warning{background:#fff3d9;color:#9a6d12}.status-pill.danger{background:#fde9ec;color:#a63c4f}.customer-license-hero,.customer-license-alert,.customer-license-neutral{max-width:980px}.customer-license-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.customer-license-grid>div{padding:16px;border-radius:15px;background:#f8f8fc;min-width:0}.customer-license-grid span{display:block;color:#969bab;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.customer-license-grid strong{display:block;margin-top:6px;font-size:14px;overflow-wrap:anywhere}.customer-license-note{margin-top:18px;padding:14px 16px;border-radius:14px;background:#fff5df;color:#7d662f;font-size:13px;line-height:1.5}.customer-license-alert{border-color:#f1dfbc}.customer-license-alert>p,.customer-license-neutral>p{color:#6d7488;line-height:1.55}.customer-license-neutral{background:linear-gradient(135deg,#fff,#faf8ff)}
@media(max-width:900px){.customer-license-grid{grid-template-columns:1fr}.customer-license-hero,.customer-license-alert,.customer-license-neutral{padding:20px}}


/* Customer shell v03 — navegação consolidada */
.customer-sidebar{padding:30px 20px 24px;background:linear-gradient(180deg,#fff 0%,#fbfbfe 100%)}
.customer-sidebar>div:first-child{padding:0 6px}
.customer-brand{letter-spacing:-.45px}
.customer-area-label{margin-top:7px}
.customer-nav{gap:6px;margin-top:28px}
.customer-nav a,.customer-nav>.customer-nav-pending{min-height:44px;padding:0 13px;border-radius:12px}
.customer-nav a{color:#444a63;transition:background .15s ease,color .15s ease,transform .15s ease}
.customer-nav a:hover{background:#f4f2fb;color:#5f3dc5}
.customer-nav a.active{background:#eeeaff;color:#6840d4;box-shadow:inset 3px 0 0 #7650d9}
.customer-nav>.customer-nav-pending{display:flex;align-items:center;justify-content:space-between;color:#9a9eac;background:transparent;border:1px dashed #e8e8ef}
.customer-nav>.customer-nav-heading{
  min-height:auto;padding:0 8px;border-radius:0;background:transparent;color:#9ca1b0;
  font-size:9px;font-weight:900;letter-spacing:1.45px;text-transform:uppercase;cursor:default
}
.customer-nav>.customer-nav-heading-spaced{margin-top:13px}
.customer-nav>.customer-nav-heading small{display:none}
.customer-nav>.customer-nav-pending small{font-size:8px;padding:4px 6px;border-radius:999px;background:#f2f2f6;color:#9ba0ad}
.customer-sidebar-bottom{padding-top:16px;border-top:1px solid #ececf2}
.customer-sidebar-bottom a,.customer-sidebar-bottom button{border-radius:10px}
.customer-sidebar-bottom .admin-switch{background:#efeaff}
.customer-content{max-width:1280px;width:100%;margin:0 auto;padding:42px 38px 64px}
.customer-mobile-menu-label,.customer-mobile-menu-pending,.customer-mobile-menu-divider{display:none}

@media(max-width:900px){
  .customer-mobile-header{height:68px;padding:0 16px;box-shadow:0 6px 22px rgba(39,38,82,.04)}
  .customer-mobile-header nav{top:44px;width:min(290px,calc(100vw - 28px));padding:12px}
  .customer-mobile-header nav a,.customer-mobile-header nav button{min-height:40px;border-radius:10px}
  .customer-mobile-menu-label{
    display:block;padding:10px 12px 5px;color:#9a9faf;font-size:9px;font-weight:900;
    letter-spacing:1.15px;text-transform:uppercase
  }
  .customer-mobile-menu-pending{
    min-height:40px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;
    color:#9a9eac;font-size:12px;font-weight:800
  }
  .customer-mobile-menu-pending small{
    padding:4px 6px;border-radius:999px;background:#f2f2f6;color:#9ba0ad;
    font-size:8px;text-transform:uppercase;letter-spacing:.45px
  }
  .customer-mobile-menu-divider{display:block;height:1px;margin:8px 4px;background:#ececf2}
  .customer-content{padding:24px 14px 54px}
}


/* Customer overview v03 — hierarquia de conta, licença e assinatura */
.customer-overview-welcome{padding:36px 38px}
.customer-overview-primary{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:18px;margin-top:22px}
.customer-overview-primary .customer-card{min-height:100%;display:flex;flex-direction:column}
.customer-overview-account-summary{grid-template-columns:1fr 1fr}
.customer-overview-primary .customer-link-button{margin-top:auto;align-self:flex-start}
.customer-overview-license-note{
  margin:18px 0 22px;padding:13px 14px;border-radius:14px;background:#f7f5fc;
  color:#6f7187;font-size:12px;line-height:1.5
}
.customer-overview-section{margin-top:28px}
.customer-section-heading{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:14px;padding:0 2px
}
.customer-section-heading h2{margin:7px 0 0;font-size:24px;letter-spacing:-.4px}
.customer-section-heading>p{
  max-width:520px;margin:0;color:#7a8092;font-size:12px;line-height:1.55;text-align:right
}
.customer-overview-services{
  overflow:hidden;border:1px solid #e8e9f0;border-radius:22px;background:#fff;
  box-shadow:0 10px 28px rgba(39,38,82,.035)
}
.customer-service-row{
  min-height:92px;padding:18px 22px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;
  gap:16px;align-items:center
}
.customer-service-row+.customer-service-row{border-top:1px solid #eeeeF4}
.customer-service-icon{
  width:44px;height:44px;border-radius:14px;display:grid;place-items:center;
  background:#f1edff;color:#6840d4;font-size:13px;font-weight:950;letter-spacing:-.2px
}
.customer-service-copy h3{margin:0;font-size:16px}
.customer-service-copy p{margin:5px 0 0;color:#7a8092;font-size:12px;line-height:1.45}
.customer-service-status{
  padding:6px 9px;border-radius:999px;background:#f3f3f6;color:#979ca9;
  font-size:9px;font-weight:900;letter-spacing:.55px;text-transform:uppercase;white-space:nowrap
}
.customer-overview-support{margin-top:22px}

@media(max-width:900px){
  .customer-overview-welcome{padding:26px 22px}
  .customer-overview-primary{grid-template-columns:1fr;gap:14px;margin-top:16px}
  .customer-overview-account-summary{grid-template-columns:1fr}
  .customer-section-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .customer-section-heading>p{text-align:left}
  .customer-service-row{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:16px}
  .customer-service-icon{width:40px;height:40px;border-radius:12px}
  .customer-service-status{grid-column:2;justify-self:start}
}


/* Customer account v01 — identidade e acesso */
.customer-account-heading{max-width:760px}
.customer-account-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;max-width:1040px
}
.customer-account-panel{display:flex;flex-direction:column;min-height:310px}
.customer-account-panel h2{margin:7px 0 0;font-size:22px}
.customer-account-facts{display:grid;gap:10px;margin:22px 0 0}
.customer-account-facts>div{
  padding:16px;border-radius:15px;background:#f8f8fc;border:1px solid #f0f0f5
}
.customer-account-facts dt{
  color:#969bab;font-size:9px;font-weight:900;letter-spacing:.8px;text-transform:uppercase
}
.customer-account-facts dd{
  margin:6px 0 0;color:#2f3356;font-size:14px;font-weight:850;overflow-wrap:anywhere
}
.customer-account-caption{
  margin:auto 0 0!important;padding-top:20px;color:#7a8092!important;font-size:12px!important;line-height:1.55!important
}

@media(max-width:900px){
  .customer-account-grid{grid-template-columns:1fr;gap:14px}
  .customer-account-panel{min-height:auto}
  .customer-account-caption{margin-top:20px!important}
}


/* Minha Rede v01 — leitura de limites reais da licença */
.customer-service-action{
  align-self:center;
  color:#6540c7;
  font-size:11px;
  font-weight:900;
  white-space:nowrap
}
.customer-service-action:hover{text-decoration:underline}
.customer-network-heading{max-width:800px}
.customer-network-summary{max-width:1040px}
.customer-network-summary>p{
  margin:18px 0 0;
  color:#6f7487;
  font-size:13px;
  line-height:1.55
}
.customer-network-section{max-width:1120px;margin-top:28px}
.customer-network-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px
}
.customer-network-card{
  min-height:142px;
  padding:20px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:15px;
  align-items:start;
  border:1px solid #e9e9f0;
  border-radius:20px;
  background:#fff;
  box-shadow:0 9px 26px rgba(39,38,82,.035)
}
.customer-network-card-icon{
  width:48px;
  height:48px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:#f0ecff;
  color:#6741cf;
  font-size:15px;
  font-weight:950
}
.customer-network-card-label{
  display:block;
  color:#969baa;
  font-size:9px;
  font-weight:900;
  letter-spacing:.8px;
  text-transform:uppercase
}
.customer-network-card strong{
  display:block;
  margin-top:5px;
  color:#2f3356;
  font-size:22px;
  line-height:1.1
}
.customer-network-card p{
  margin:9px 0 0;
  color:#72788c;
  font-size:12px;
  line-height:1.48
}
.customer-network-health{
  grid-column:1/-1;
  background:linear-gradient(135deg,#fff 0%,#fff9f4 100%);
  border-color:#eee4dc
}
.customer-network-health .customer-network-card-icon{
  background:#fff0e5;
  color:#b9664d
}
.customer-network-note{
  max-width:1120px;
  margin-top:18px;
  padding:24px 26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  border-radius:20px;
  background:#f7f6fb;
  border:1px solid #eceaf3
}
.customer-network-note h2{margin:7px 0 0;font-size:20px}
.customer-network-note p{
  max-width:780px;
  margin:8px 0 0;
  color:#72788c;
  font-size:12px;
  line-height:1.5
}
.customer-network-neutral-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:22px
}
.customer-link-button.secondary{
  background:#fff;
  color:#555b72;
  border:1px solid #dadce5
}

@media(max-width:900px){
  .customer-service-action{grid-column:2;justify-self:start}
  .customer-network-grid{grid-template-columns:1fr}
  .customer-network-health{grid-column:auto}
  .customer-network-note{align-items:flex-start;flex-direction:column}
}


.customer-network-beta{
  max-width:1120px;
  margin-top:28px;
  padding:24px 26px;
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:18px;
  align-items:start;
  border:1px solid #e8e5f1;
  border-radius:22px;
  background:linear-gradient(135deg,#fff 0%,#f7f4ff 100%);
  box-shadow:0 10px 28px rgba(39,38,82,.035)
}
.customer-network-beta-mark{
  width:56px;
  height:56px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:#eee8ff;
  color:#6840d4;
  font-size:24px;
  font-weight:950
}
.customer-network-beta h2{
  margin:7px 0 0;
  color:#2f3356;
  font-size:22px
}
.customer-network-beta p{
  margin:10px 0 0;
  color:#70768a;
  font-size:12.5px;
  line-height:1.55
}
.customer-network-no-limits{margin-top:28px;max-width:1040px}

@media(max-width:900px){
  .customer-network-beta{
    grid-template-columns:1fr;
    padding:22px 20px
  }
}


/* SEC-01C — aprovação de login web pelo app */
.customer-approval-card{text-align:left}
.customer-approval-icon{
  width:58px;height:58px;margin:18px 0 14px;border-radius:18px;
  display:grid;place-items:center;background:#ece8ff;color:#6840d4;
  font-size:25px;font-weight:950
}
.customer-approval-card h2{margin-bottom:8px}
.customer-approval-status{
  margin:20px 0 0;padding:14px 15px;border-radius:14px;
  display:flex;align-items:center;gap:10px;
  background:#f7f6fb;border:1px solid #e9e7f0;
  color:#555b72;font-size:12px;font-weight:800
}
.customer-approval-status[data-state="approved"]{background:#edf9f2;border-color:#d9efe2;color:#27764a}
.customer-approval-status[data-state="denied"]{background:#fff1f0;border-color:#f1dcda;color:#a34f49}
.customer-approval-status[data-state="expired"]{background:#fff8eb;border-color:#efe4ca;color:#92702e}
.customer-approval-dot{
  width:9px;height:9px;border-radius:50%;background:#7452d2;
  box-shadow:0 0 0 5px rgba(116,82,210,.11)
}
.customer-approval-status[data-state="approved"] .customer-approval-dot{background:#3e9d68;box-shadow:0 0 0 5px rgba(62,157,104,.11)}
.customer-approval-status[data-state="denied"] .customer-approval-dot{background:#c76158;box-shadow:0 0 0 5px rgba(199,97,88,.11)}
.customer-approval-status[data-state="expired"] .customer-approval-dot{background:#ba8b31;box-shadow:0 0 0 5px rgba(186,139,49,.11)}
.customer-approval-details{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px
}
.customer-approval-details>div{
  padding:12px 13px;border-radius:12px;background:#fafafd;border:1px solid #eeeeF4
}
.customer-approval-details span{
  display:block;color:#969baa;font-size:8px;font-weight:900;
  letter-spacing:.75px;text-transform:uppercase
}
.customer-approval-details strong{
  display:block;margin-top:5px;color:#353a5d;font-size:12px
}
.customer-approval-hidden-form{display:none}

@media(max-width:620px){
  .customer-approval-details{grid-template-columns:1fr}
}


.customer-auth-messages{display:grid;gap:8px;margin:14px 0 2px}
.customer-auth-message{
  margin:0!important;padding:11px 12px;border-radius:12px;
  background:#eef8f3;border:1px solid #dceee4;color:#2f7651!important;
  font-size:11.5px!important;font-weight:750;line-height:1.45!important
}


/* SEC-01E — confirmação visual após autorização pelo app */
.customer-approval-confirmation[hidden]{display:none}
.customer-approval-confirmation{
  position:fixed;inset:0;z-index:120;
  display:grid;place-items:center;padding:24px
}
.customer-approval-confirmation-backdrop{
  position:absolute;inset:0;background:rgba(28,27,54,.38);
  backdrop-filter:blur(5px)
}
.customer-approval-confirmation-dialog{
  position:relative;z-index:1;width:min(440px,100%);
  padding:30px;border-radius:24px;background:#fff;
  border:1px solid #e4e8e6;
  box-shadow:0 26px 80px rgba(31,36,56,.22);
  text-align:center
}
.customer-approval-confirmation-icon{
  width:64px;height:64px;margin:0 auto 16px;border-radius:20px;
  display:grid;place-items:center;background:#eaf8ef;color:#318757;
  font-size:30px;font-weight:950
}
.customer-approval-confirmation-dialog h2{
  margin:8px 0 0;color:#2f3356;font-size:26px
}
.customer-approval-confirmation-dialog p{
  margin:12px auto 0;max-width:340px;color:#6f7588;
  font-size:13px;line-height:1.55
}
.customer-approval-confirmation-progress{
  height:4px;margin-top:22px;overflow:hidden;border-radius:999px;background:#edf0ef
}
.customer-approval-confirmation-progress span{
  display:block;height:100%;width:100%;border-radius:inherit;background:#4a9a6c;
  transform-origin:left;animation:customerApprovalComplete 1.4s linear forwards
}
@keyframes customerApprovalComplete{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}


/* 3B.1 — profissionais de saúde / crianças autorizáveis */
.customer-professional-summary{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px
}
.customer-professional-summary h2{margin:8px 0 0}
.customer-professional-summary p{margin:10px 0 0;max-width:760px}
.customer-professional-children{margin-top:28px}
.customer-professional-child-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:16px
}
.customer-professional-child-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:20px;
  border:1px solid #e6e8ee;
  border-radius:18px;
  background:#fff
}
.customer-professional-child-card strong{
  display:block;
  margin-top:4px;
  color:#303552;
  font-size:18px
}
.customer-professional-child-card p{
  margin:5px 0 0;
  color:#777d90;
  font-size:12px
}
.customer-professional-child-status{
  display:inline-flex;
  margin-top:12px;
  padding:6px 9px;
  border-radius:999px;
  background:#edf8f2;
  color:#347552;
  font-size:10px;
  font-weight:850;
  letter-spacing:.2px
}
.customer-inline-form{margin-top:16px}
.customer-inline-form .customer-link-button{
  appearance:none;
  border:0;
  cursor:pointer
}

@media(max-width:780px){
  .customer-professional-summary{display:grid}
  .customer-professional-child-grid{grid-template-columns:1fr}
}


.customer-inline-link{
  display:inline-flex;
  margin-top:10px;
  color:#6541c9;
  font-size:11.5px;
  font-weight:850;
  text-decoration:none
}
.customer-inline-link:hover{text-decoration:underline}


.customer-security-note{
  margin-top:10px;
  padding:10px 12px;
  border-radius:12px;
  background:#f7f5ff;
  color:#5f5a78;
  font-size:11.5px;
  line-height:17px
}

.customer-password-card{margin-top:18px;max-width:760px}.customer-password-card>p{margin:12px 0 18px;color:#6d7488;font-size:14px;line-height:1.55}.customer-password-form{max-width:520px}.customer-password-form button{width:max-content;min-width:160px;padding:0 20px}.customer-password-form .errorlist{margin:0;padding-left:18px;color:#b83d4f;font-size:12px}.customer-password-form small{color:#858b9c;font-size:11px;line-height:1.35}
@media(max-width:720px){.customer-password-card{margin-top:14px}.customer-password-form{max-width:none}.customer-password-form button{width:100%}}


/* Segurança da conta */
.customer-security-card{max-width:680px}
.customer-security-card .customer-account-caption{margin:14px 0 20px!important;padding-top:0}
.customer-security-form{max-width:520px}
.customer-security-form button{margin-top:4px}
