:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#253350;background:#f5f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}.hidden{display:none!important}.boot{padding:25vh 20px;text-align:center;color:#607092}.auth-layout{display:grid;place-items:center;min-height:100dvh;padding:25px;background:radial-gradient(circle at 15% 0,#e8edff 0,transparent 50%),#f5f7fb}.auth-card{width:min(100%,425px);background:white;border:1px solid #e6eaf4;border-radius:24px;padding:32px;box-shadow:0 25px 75px #122d6511}.brand{display:flex;align-items:center;gap:10px;font-weight:750;color:#253351}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:#596ae8;color:#fff;border-radius:13px;font-weight:900;letter-spacing:-1px}.brand small{display:block;color:#7d8da9;font-size:10px;letter-spacing:2px;margin-top:4px}.auth-card h1{font-size:30px;letter-spacing:-1px;margin:30px 0 8px}.muted{color:#8c9bb0;font-size:13px;line-height:1.55}.auth-card p{margin:0 0 25px}.form{display:grid;gap:13px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:750;color:#5b6882}.field input,.field select,.field textarea{padding:12px;border-radius:10px;border:1px solid #dce3ef;background:#fbfcff;color:#233350;outline-color:#6877e6;min-width:0}.field textarea{min-height:75px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:6px;border:1px solid #dce3ef;background:#fff;color:#536582;border-radius:10px;padding:11px 15px;font-size:12px;font-weight:800}.btn-primary{background:#5d6fea;color:#fff;border-color:#5d6fea}.btn-danger{color:#bb5661}.btn-full{width:100%}.subtle-button{border:0;background:none;color:#5d6fea;font-size:12px;font-weight:750;cursor:pointer}.auth-switch{display:block;text-align:center;margin-top:19px}.auth-error{color:#ae414f;font-size:12px;min-height:15px}.layout{display:flex;min-height:100dvh}.sidebar{width:240px;flex-shrink:0;background:#101d39;color:#c2d0e7;display:flex;flex-direction:column;padding:23px 15px;gap:30px}.sidebar .brand{color:#fff;padding:4px 8px}.sidebar .brand small{color:#8799c7}.sidebar nav{display:grid;gap:7px}.nav-btn{border:0;background:transparent;color:#b6c5df;border-radius:11px;padding:13px 14px;text-align:left;font-size:13px;font-weight:700}.nav-btn.active,.nav-btn:hover{background:#5e6fe7;color:#fff}.sidebar-bottom{margin-top:auto;background:#1e2e51;color:#a0b2d3;padding:15px;border-radius:13px;font-size:12px;line-height:1.55}.sidebar-bottom b{color:#fff}.workspace{flex:1;min-width:0}.topbar{min-height:70px;background:#fff;border-bottom:1px solid #e6ebf4;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 35px;color:#8492a9;font-size:12px}.topbar strong{color:#36445f}.topbar-right{display:flex;gap:14px;align-items:center}.content{max-width:1390px;margin:0 auto;padding:32px 36px 70px}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:27px}.heading small{font-size:10px;letter-spacing:1.7px;color:#758ab5;font-weight:850}.heading h1{font-size:29px;letter-spacing:-1.2px;margin:8px 0}.heading p{font-size:13px;color:#92a0b5;margin:0;line-height:1.5}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat,.card{background:#fff;border:1px solid #e7ecf5;border-radius:16px;box-shadow:0 5px 20px #172f5105}.stat{padding:21px}.stat label{font-size:12px;color:#8897ae}.stat b{display:block;font-size:29px;letter-spacing:-1px;margin:11px 0 4px}.stat small{font-size:11px;color:#98a6b8}.card{padding:21px;margin-bottom:18px}.card h2{font-size:15px;margin:0 0 15px}.toolbar{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:13px;margin-bottom:16px}.table-wrap{overflow:auto;border:1px solid #e7edf6;border-radius:10px}.table{border-collapse:collapse;width:100%;min-width:680px;text-align:left}.table th{background:#f9faff;color:#90a0b9;font-size:10px;letter-spacing:.5px;padding:14px}.table td{padding:13px;border-top:1px solid #eff2f8;font-size:12px}.table td small{display:block;color:#94a3b9;margin-top:5px}.table td b{color:#2d3b57}.actions{display:flex;gap:6px;justify-content:flex-end}.small-action{border:1px solid #e3e9f3;border-radius:8px;background:#fff;color:#556885;padding:7px 10px;font-size:11px;font-weight:700}.small-action.danger{color:#b95660}.chip{display:inline-block;padding:6px 9px;border-radius:99px;background:#e8f8f0;color:#268a65;font-size:10px;font-weight:750;white-space:nowrap}.chip.warn{color:#b77b28;background:#fff3d9}.chip.danger{color:#c3545e;background:#ffeded}.chip.off{color:#6d7c98;background:#eef1f7}.empty{padding:25px;color:#8b9bb5;text-align:center}.filters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:15px}.filter-card{border:1px solid #e7ecf5;border-radius:13px;padding:10px;min-width:0}.filter-image{aspect-ratio:9/13;border-radius:9px;overflow:hidden;background:repeating-conic-gradient(#eef0f6 0 25%,#fff 0 50%) 50%/17px 17px;display:grid;place-items:center}.filter-image img{width:100%;height:100%;object-fit:contain}.filter-card b,.filter-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-card b{font-size:12px;margin:10px 0 6px}.filter-card small{font-size:10px;color:#93a2ba}.filter-card .actions{justify-content:flex-start;margin-top:11px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.overlay{position:fixed;inset:0;background:#0b17359e;display:flex;align-items:center;justify-content:center;padding:17px;z-index:100;backdrop-filter:blur(4px)}.modal{background:#fff;max-height:94dvh;overflow:auto;border-radius:20px;padding:25px;width:min(520px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal-head h2{margin:0;font-size:21px}.modal .form{gap:15px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}.note{padding:13px;border-radius:11px;background:#eff3ff;color:#536b9d;font-size:12px;line-height:1.6}.client-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.category-tile{padding:18px;border-radius:13px;border:1px solid #e4ebf8;background:#fff;text-align:left;color:#253755;font-weight:750}.category-tile small{display:block;color:#8394b1;font-size:11px;margin-top:8px}.camera-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:25px}.camera-frame{position:relative;aspect-ratio:9/16;max-width:340px;width:100%;margin:auto;border-radius:18px;background:#101b38;overflow:hidden}.camera-frame video,.camera-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.camera-frame img{object-fit:fill}.camera-controls{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:17px 0}.picker{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;max-height:430px;overflow:auto}.pick{border:2px solid transparent;padding:5px;border-radius:10px;background:#f1f3f8;cursor:pointer}.pick.active{border-color:#6075ec}.pick img{width:100%;aspect-ratio:9/16;object-fit:contain}.pick small{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pending{margin:30px auto;max-width:520px;text-align:center}.pending h2{margin:10px}#toast{position:fixed;bottom:21px;right:21px;background:#243653;color:white;padding:13px 16px;border-radius:11px;font-size:12px;z-index:120;opacity:0;transform:translateY(8px);transition:all .2s;pointer-events:none}#toast.show{opacity:1;transform:none}@media(max-width:980px){.stats{grid-template-columns:repeat(2,1fr)}.sidebar{width:210px}.content{padding:25px}.camera-layout{grid-template-columns:1fr}}@media(max-width:700px){.layout{display:block}.sidebar{width:100%;padding:11px;gap:12px}.sidebar .brand{padding:0 6px}.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px}.nav-btn{padding:10px;flex-shrink:0;white-space:nowrap;font-size:11px}.topbar{min-height:51px;padding:10px 14px}.content{padding:21px 14px 50px}.heading h1{font-size:24px}.heading{align-items:flex-start}.stats{gap:9px}.stat,.card{padding:15px}.stat b{font-size:24px}.two-cols{grid-template-columns:1fr}.modal{padding:19px}.camera-layout{gap:12px}.camera-frame{max-width:310px}.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar .btn{width:100%}}


/* Gestão integrada de Categorias + Filtros PNG. */
.category-management .toolbar{align-items:center;margin-bottom:14px}
.category-management .toolbar>div{min-width:0;flex:1}
.category-management .toolbar h2,
.category-management + .card .toolbar h2{font-size:16px;letter-spacing:-.3px;margin:0 0 4px}
.category-management .toolbar p,
.category-management + .card .toolbar p{margin:0;max-width:670px}
.category-management .table{min-width:570px}
.category-management .category-count{
  display:inline-flex;background:#eef2ff;color:#586ba0;
  border-radius:999px;padding:6px 10px;font-weight:750;
  font-size:11px;white-space:nowrap;
}
.filter-new-category{
  background:#f0f4ff;
  border:1px solid #dce5ff;border-radius:11px;
  padding:13px;
}
.filter-new-category label{color:#4557a6}
.filter-new-category .muted{font-size:11px;margin-top:2px}
.category-company-locked{
  background:#f3f5fa;border-radius:9px;padding:12px;
  border:1px solid #dfe5f0;color:#596b8b;font-size:12px;font-weight:700;
}
#filterCategory{width:100%}
@media(max-width:700px){
  .category-management .toolbar{align-items:stretch;flex-direction:column}
  .category-management .toolbar .btn{width:100%}
  .category-management .table{min-width:530px}
}


/* Navegação responsiva do painel administrativo.
   Desktop: barra lateral fixa. Celular: gaveta oculta até tocar em ☰. */
.admin-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-topbar-start{display:flex;align-items:center;min-width:0;gap:12px}
.admin-breadcrumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-menu-toggle,.sidebar-close,.mobile-menu-backdrop{display:none}
body.mobile-menu-lock{overflow:hidden}
@media(max-width:700px){
  .admin-layout{display:block;min-height:100dvh}
  .admin-layout .workspace{min-width:0;width:100%}
  .admin-layout .topbar{
    min-height:62px;padding:10px 17px;
    display:flex;justify-content:space-between;align-items:center;
    gap:12px;position:relative;z-index:1;
  }
  .admin-layout .topbar-right{display:none}
  .admin-layout .admin-breadcrumb{font-size:12px;white-space:normal;line-height:1.45}
  .admin-layout .admin-breadcrumb strong{display:block;font-size:13px;color:#2a3651}
  .mobile-menu-toggle{
    flex:0 0 auto;width:45px;height:45px;
    display:grid;place-items:center;border-radius:13px;
    border:1px solid #dfe6f1;background:#f7f9ff;color:#263f7b;
    box-shadow:0 2px 10px #1b306a0b;
    font-size:24px;line-height:1;cursor:pointer;
  }
  .mobile-menu-toggle:focus-visible,.sidebar-close:focus-visible{
    outline:3px solid #769bff;outline-offset:2px;
  }
  .admin-layout .sidebar{
    display:flex;
    position:fixed;inset:0 auto 0 0;
    width:min(330px,86vw);max-width:86vw;
    height:100dvh;padding:21px 16px calc(20px + env(safe-area-inset-bottom,0px));
    overflow-y:auto;overscroll-behavior:contain;
    background:#101d39;
    flex-direction:column;gap:28px;
    transform:translate3d(-104%,0,0);
    visibility:hidden;pointer-events:none;
    transition:transform .22s ease,visibility .22s ease;
    z-index:91;box-shadow:12px 0 35px #08142b40;
  }
  .admin-layout.admin-menu-open .sidebar{
    transform:translate3d(0,0,0);
    visibility:visible;pointer-events:auto;
  }
  .admin-layout .sidebar .brand{padding:0 5px;gap:8px;min-width:0}
  .admin-layout .sidebar .brand-mark{flex-shrink:0}
  .admin-layout .sidebar .brand span:last-child{font-size:13px}
  .admin-layout .sidebar-close{
    display:grid;place-items:center;
    width:37px;height:37px;flex-shrink:0;
    color:#e2eafc;background:#ffffff18;
    border:1px solid #ffffff2b;border-radius:10px;font-size:18px;
  }
  .admin-layout .sidebar nav{
    display:grid;grid-template-columns:1fr;gap:7px;
    overflow:visible;flex:initial;
  }
  .admin-layout .sidebar .nav-btn{
    font-size:14px;padding:14px 15px;
    width:100%;text-align:left;white-space:normal;
    border-radius:11px;min-height:49px;
  }
  .admin-layout .sidebar-bottom{
    display:block;margin-top:auto;
    padding:15px;background:#1e2e51;
    overflow-wrap:anywhere;
  }
  .admin-layout .sidebar-bottom p{margin:9px 0 14px}
  .admin-layout .sidebar-bottom .btn{width:100%}
  .admin-layout .mobile-menu-backdrop{
    display:block;position:fixed;inset:0;border:0;
    background:#071329a8;opacity:0;visibility:hidden;
    pointer-events:none;transition:opacity .22s,visibility .22s;
    z-index:90;cursor:default;
  }
  .admin-layout.admin-menu-open .mobile-menu-backdrop{
    opacity:1;visibility:visible;pointer-events:auto;
  }
}
@media(prefers-reduced-motion:reduce){
  .admin-layout .sidebar,.admin-layout .mobile-menu-backdrop{
    transition:none;
  }
}


/* Identidade da plataforma: azul anil / azul-marinho escuro.
   Cores cadastradas por empresa continuam exclusivas da tela inicial do cliente. */
:root{
  --cms-navy:#001893;
  --cms-indigo:#001893;
  --cms-indigo-hover:#001270;
  --cms-soft:#F0F3FA;
}
.brand-mark{
  background:var(--cms-indigo);
  color:#fff;
}
.sidebar{background:#001893;}
.sidebar .nav-btn.active,
.sidebar .nav-btn:hover{
  background:var(--cms-indigo);
  color:#fff;
}
.btn-primary{
  background:var(--cms-indigo);
  border-color:var(--cms-indigo);
  color:#fff;
}
.btn-primary:hover{background:var(--cms-indigo-hover);border-color:var(--cms-indigo-hover);}
.subtle-button{color:var(--cms-indigo);}
.field input:focus,
.field select:focus,
.field textarea:focus{outline-color:var(--cms-indigo);}
.mobile-menu-toggle{
  background:var(--cms-indigo);
  color:#fff;border-color:var(--cms-indigo);
}
.mobile-menu-toggle:hover{background:var(--cms-indigo-hover);}
.filter-card .pick.active{border-color:var(--cms-indigo);}
#toast{background:#001893;}
@media(max-width:700px){
  .admin-layout .sidebar{background:#001893;}
  .admin-layout .mobile-menu-toggle{
    background:var(--cms-indigo);
    color:#fff;border-color:var(--cms-indigo);
  }
  .admin-layout .mobile-menu-toggle:hover{background:var(--cms-indigo-hover);}
}

/* Azul oficial aprovado: #001893.
   Aplicar somente à identidade Filtros Studio, não às cores das empresas. */
.btn-primary,.nav-btn.active,.sidebar .nav-btn.active,
.brand-mark,.mobile-menu-toggle{
  background-color:var(--cms-indigo);
}
.btn-primary{border-color:var(--cms-indigo);}
.btn-primary:hover,.sidebar .nav-btn:hover{background-color:var(--cms-indigo-hover);}
.filter-card .pick.active,.pick.active{border-color:var(--cms-indigo);}
@media(max-width:700px){
  .admin-layout .sidebar .nav-btn.active{background:var(--cms-indigo-hover);}
  .admin-layout .mobile-menu-toggle{background:var(--cms-indigo);border-color:var(--cms-indigo);}
}


/* Rodapé institucional — visível no login e painel, sem interferir na câmera. */
.studio-credits{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:4px;
  width:100%;
  padding:18px 16px calc(18px + env(safe-area-inset-bottom,0px));
  color:#74829a;
  font-size:11px;
  font-weight:450;
  line-height:1.5;
  letter-spacing:0;
  text-align:center;
}
.studio-credits strong{
  color:#001893;
  font-weight:800;
}
.studio-credits-admin{
  margin-top:auto;
  border-top:1px solid #e5ebf5;
  background:#f7f9fd;
}
.admin-layout .workspace{
  display:flex;
  flex-direction:column;
  min-height:100dvh;
}
.admin-layout .workspace>.content{
  width:100%;
  flex:1 0 auto;
}
.auth-layout{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
}
.studio-credits-auth{
  flex:0 0 auto;
  max-width:425px;
  padding-top:3px;
  padding-bottom:4px;
  background:transparent;
}
@media(max-width:600px){
  .studio-credits{font-size:10px;gap:3px;padding-left:12px;padding-right:12px;}
}


/* Testar filtros: seleção por empresa/categoria sem trocar a conta autenticada. */
.admin-test-card{
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width:970px;
  margin:0 auto;
  padding:25px;
}
.admin-test-heading{
  display:flex;
  align-items:center;
  gap:15px;
}
.admin-test-heading h2{
  margin:0 0 5px;
  color:#263855;
  font-size:18px;
  letter-spacing:-.35px;
}
.admin-test-heading .muted{margin:0;}
.admin-test-symbol{
  display:grid;
  place-items:center;
  flex:0 0 48px;
  height:48px;
  border-radius:15px;
  color:#fff;
  background:#001893;
  font-size:22px;
}
.admin-test-selection{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px;
}
.admin-test-selection .field{min-width:0;}
.admin-test-selection select{
  width:100%;
  min-height:47px;
  font-size:13px;
  border-radius:11px;
  background:#f9fbff;
  border:1px solid #dbe4f3;
  color:#253758;
}
.admin-test-selection select:focus-visible{
  outline:2px solid #001893;
  outline-offset:2px;
}
.admin-test-summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  padding:15px 0;
  border-top:1px solid #e9edf6;
  border-bottom:1px solid #e9edf6;
  font-size:13px;
  color:#6e7c94;
}
.admin-test-summary strong{font-size:17px;color:#001893;}
.admin-test-summary .btn{
  min-height:45px;
  font-size:12px;
  border-radius:11px;
}
.admin-test-filter-thumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:12px;
}
.test-filter-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  width:86px;
  max-width:86px;
  font-size:10px;
  color:#52617c;
  text-align:center;
  overflow-wrap:anywhere;
}
.test-filter-thumb{
  display:grid;
  place-items:center;
  width:76px;
  height:106px;
  padding:4px;
  background:repeating-conic-gradient(#ecf0f8 0 25%,#fff 0 50%) 50%/16px 16px;
  border:1px solid #dbe3f0;
  border-radius:12px;
  overflow:hidden;
}
.test-filter-thumb img{
  display:block;
  max-width:100%;
  width:100%;
  height:100%;
  object-fit:contain;
}
.admin-test-explanation{
  color:#8491a6;
  margin:0;
  font-size:12px;
  line-height:1.6;
}
.admin-test-empty{margin:0;}
@media(max-width:700px){
  .admin-test-card{padding:18px 14px;gap:14px;}
  .admin-test-selection{grid-template-columns:1fr;gap:11px;}
  .admin-test-heading h2{font-size:16px;}
  .admin-test-summary{align-items:stretch;flex-direction:column;}
  .admin-test-summary .btn{width:100%;}
}


/* Controle de suspensão de clientes e tela segura de contato com suporte. */
.actions .client-access-pause{
  border:1px solid #f2c8cd;
  background:#fff6f6;
  color:#ad3042;
  font-weight:750;
}
.actions .client-access-resume{
  border:1px solid #a9dfc4;
  background:#f0fbf4;
  color:#116e48;
  font-weight:780;
}
.settings-support-hint{
  margin:-5px 0 9px;
  color:#71819c;
  font-size:12px;
  line-height:1.5;
}
.access-paused-layout{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:21px;
  width:100%;
  min-height:100dvh;
  padding:28px 18px calc(25px + env(safe-area-inset-bottom,0px));
  background:linear-gradient(160deg,#f8faff 0%,#f1f4fb 100%);
}
.access-paused-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:15px;
  width:min(100%,460px);
  padding:32px 27px 25px;
  border-radius:21px;
  border:1px solid #dfe6f2;
  background:#fff;
  box-shadow:0 17px 35px #0c224310;
  text-align:center;
}
.access-paused-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  color:#001893;
  font-size:14px;
  letter-spacing:-.35px;
}
.access-paused-brand .brand-mark{
  width:43px;
  height:43px;
  flex:0 0 43px;
  border-radius:12px;
  display:grid;
  place-items:center;
  font-weight:850;
  font-size:14px;
}
.access-paused-brand strong{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1.25;
  text-align:left;
}
.access-paused-brand small{
  color:#8190aa;
  font-size:10px;
  font-weight:750;
  letter-spacing:1.7px;
}
.access-paused-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin-top:10px;
  border-radius:17px;
  background:#f0f3fd;
  font-size:27px;
}
.access-paused-card h1{
  margin:0;
  max-width:340px;
  font-size:clamp(21px,5.3vw,27px);
  line-height:1.2;
  letter-spacing:-.75px;
  font-weight:850;
  color:#152857;
}
.access-paused-description{
  margin:0;
  max-width:355px;
  font-size:13px;
  line-height:1.75;
  color:#657693;
}
.support-phone{
  margin:3px 0 0;
  padding:13px 19px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  border-radius:12px;
  background:#f5f7ff;
  border:1px solid #e0e6fc;
}
.support-phone span{
  color:#75849b;
  font-size:11px;
}
.support-phone strong{
  color:#001893;
  font-size:19px;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.support-not-configured{
  font-size:12px;
  line-height:1.6;
  max-width:350px;
  margin:0;
}
.support-whatsapp-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:360px;
  min-height:48px;
  padding:12px 15px;
  border-radius:12px;
  text-align:center;
  text-decoration:none;
  background:#001893;
  color:#fff;
  font-size:13px;
  font-weight:790;
}
.access-paused-actions{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
  padding-top:14px;
  border-top:1px solid #edf0f7;
}
.access-paused-actions .btn{
  min-height:41px;
  border-radius:11px;
  font-size:12px;
}
.access-paused-logout{
  color:#657590;
  background:#f7f8fb;
}
@media(max-width:450px){
  .access-paused-card{padding:26px 17px 21px;gap:13px;}
  .access-paused-actions{flex-direction:column;}
  .access-paused-actions .btn{width:100%;}
  .support-phone strong{font-size:17px;}
}


/* Link de atendimento no login: substitui qualquer registro público de conta. */
.auth-support-link{
  display:flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  min-height:42px;
  padding:10px 20px;
  margin:17px auto 0;
  color:#001893;
  font-size:12px;
  font-weight:850;
  letter-spacing:1.35px;
  border:1px solid #d9e1f3;
  border-radius:11px;
  background:#f4f6ff;
  text-align:center;
  text-decoration:none;
  transition:background .18s,border-color .18s;
}
.auth-support-link:hover{
  background:#e8eeff;
  border-color:#b8c5ec;
}
.auth-support-link:focus-visible{
  outline:3px solid #001893;
  outline-offset:3px;
}


/* Acesso simplificado: clientes usam nome de usuário; admin mantém seu e-mail. */
.auth-login-help{
  margin:-4px 0 4px;
  color:#7886a0;
  font-size:11px;
  line-height:1.45;
  text-align:left;
}
.username-hint{
  margin:-7px 0 10px;
  color:#7786a0;
  font-size:11px;
  line-height:1.5;
}


/* Cliente gratuito: contato e campos financeiros opcionais. */
.optional-billing-section{
  display:flex;
  flex-direction:column;
  gap:9px;
  margin-top:15px;
  padding:17px;
  border:1px solid #e1e7f2;
  background:#f8faff;
  border-radius:15px;
}
.optional-billing-section>strong{color:#25365b;font-size:14px;}
.optional-billing-section>strong span{font-size:11px;font-weight:500;color:#8592aa;}
.optional-billing-section>.muted{font-size:12px;line-height:1.6;margin:0 0 6px;}
.optional-billing-section .field{margin:0;}
.free-client-label{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:#ecf8f1;color:#28704d;font-size:11px;font-weight:700;white-space:nowrap;}
@media(max-width:600px){.optional-billing-section{padding:13px;}}


/* Categorias: ordenar por arrastar com mouse, toque ou setas. */
.category-order-controls{
  display:flex;align-items:end;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin:-2px 0 15px;
}
.category-company-picker{display:grid;gap:5px;min-width:210px;max-width:330px;flex:1;color:#657594;font-size:11px;font-weight:750}
.category-company-picker select{
  width:100%;min-height:41px;padding:9px 12px;border:1px solid #dce5f2;border-radius:10px;
  background:#f9fbff;color:#273a5c;font-size:12px;font-weight:650;
}
.category-order-hint{color:#8290a7;font-size:11px;line-height:1.55;padding-bottom:3px}
.category-sort-table{min-width:670px}
.category-sort-table thead th:first-child,
.category-sort-table tbody td:first-child{width:64px;text-align:center}
.category-order-grip-cell{padding:7px 10px!important}
.category-drag-handle{
  display:inline-grid;place-items:center;width:38px;height:38px;
  border:1px solid #dce5f4;border-radius:10px;
  color:#001893;background:#f1f4ff;
  cursor:grab;font-size:25px;font-weight:800;line-height:1;
  touch-action:none;user-select:none;-webkit-user-select:none;
}
.category-drag-handle:active,.category-row-dragging .category-drag-handle{cursor:grabbing;background:#e1e8ff}
.category-drag-handle:focus-visible,.category-company-picker select:focus-visible{
  outline:2px solid #001893;outline-offset:3px;
}
.category-row-dragging{background:#eef2ff!important;box-shadow:inset 0 0 0 2px #001893}
.category-row-dragging td{background:#eef2ff}
.category-actions{align-items:center}
.category-move-button{
  min-width:32px;min-height:33px;padding:5px 7px;
  border-color:#dce5f2;color:#001893;font-size:17px;line-height:1;
}
.category-move-button:disabled,.category-drag-handle:disabled{
  opacity:.35;cursor:not-allowed;
}
@media(max-width:700px){
  .category-order-controls{align-items:stretch;flex-direction:column;gap:8px}
  .category-company-picker{max-width:none;width:100%}
  .category-order-hint{font-size:11px}
  .category-sort-table{min-width:635px}
  .category-drag-handle{width:40px;height:42px}
  .category-actions{gap:4px}
}
