@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--surface:#f5f7fa;--text:#16191f;--muted:#707681;--line:#e5e9ef;--blue:#1677ff;--blue2:#00a8ff;--danger:#c62828;--shadow:0 22px 70px rgba(0,0,0,.12)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:var(--surface);color:var(--text)}a{color:var(--blue);text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}
.brand-mark{font-family:Manrope,Arial,sans-serif;font-size:38px;font-weight:800;letter-spacing:-2px;line-height:1}.brand-mark b{color:var(--blue2)}.brand-product{margin-top:7px;color:#73c7ff;font-size:10px;font-weight:800;letter-spacing:4px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.95fr) minmax(500px,1.05fr)}.brand-panel{position:relative;padding:64px;display:flex;align-items:flex-end;color:#fff;background:radial-gradient(circle at 75% 25%,rgba(22,119,255,.30),transparent 28%),linear-gradient(145deg,#090b10 0%,#111722 56%,#0d1118 100%);overflow:hidden}.brand-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px}.brand-panel__content{position:relative;z-index:2;max-width:590px}.brand-panel h1{margin:48px 0 20px;font-family:Manrope,Arial,sans-serif;font-size:clamp(44px,4.5vw,68px);line-height:1.03;letter-spacing:-2.8px}.brand-panel p{max-width:540px;margin:0;color:rgba(255,255,255,.67);font-size:16px;line-height:1.75}.brand-badges{margin-top:30px;display:flex;gap:9px;flex-wrap:wrap}.brand-badges span{padding:8px 12px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.04);font-size:11px;color:rgba(255,255,255,.76)}
.login-panel{padding:42px;display:grid;place-items:center}.card{width:min(100%,440px);padding:38px 34px;border:1px solid #eaedf1;border-radius:22px;background:#fff;box-shadow:var(--shadow)}.card__header{margin-bottom:27px;text-align:center}.eyebrow{display:inline-block;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1.5px}.card h2{margin:9px 0 8px;font-family:Manrope,Arial,sans-serif;font-size:29px;letter-spacing:-1px}.card__header p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.mobile-brand{display:none;text-align:center;margin-bottom:28px}.mobile-brand .brand-mark{color:#15171c;font-size:30px}.mobile-brand .brand-product{color:var(--blue)}
.field{margin-bottom:16px}.field label{display:block;margin-bottom:7px;font-size:12px;font-weight:700}.field input,.field select{width:100%;height:50px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;outline:none;font-size:14px}.field input:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(22,119,255,.08)}.field-error{display:block;min-height:15px;margin-top:5px;color:var(--danger);font-size:10px}
.btn{min-height:50px;border-radius:10px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800}.btn-primary{width:100%;background:linear-gradient(135deg,#126be5,#00a2ff);color:#fff}.btn-secondary{padding:0 15px;border:1px solid var(--line);background:#fff;color:#30343b}.btn-danger{padding:0 15px;border:1px solid #ffd2d2;background:#fff5f5;color:#a42a2a}.btn:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.35);pointer-events:none}
.access-options{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);text-align:center}.access-options p{margin:0 0 12px;color:var(--muted);font-size:11px;line-height:1.55}.access-options .btn{width:100%;border:1px solid #cfe4ff;background:#eef7ff;color:#0868ce}
.message{display:none;margin:16px 0 0;padding:12px 14px;border-radius:10px;font-size:11px;line-height:1.5}.message.show{display:block}.message.error{background:#fff3f3;border:1px solid #ffd8d8;color:#9e2929}.message.success{background:#eefaf3;border:1px solid #cdebd8;color:#17663d}
.privacy-box{margin-top:22px;padding:14px;border:1px solid #e6e9ee;border-radius:11px;background:#fafbfc;color:#777d86;font-size:10px;line-height:1.55;text-align:center}.login-footer{margin-top:24px;text-align:center;color:#a0a5ad;font-size:9px}
.cookie-notice{position:fixed;z-index:100;left:18px;right:18px;bottom:18px;max-width:720px;margin:0 auto;padding:15px 17px;display:none;align-items:center;justify-content:space-between;gap:20px;border-radius:12px;background:rgba(13,15,19,.97);color:#fff}.cookie-notice.show{display:flex}.cookie-notice p{margin:4px 0 0;color:rgba(255,255,255,.62);font-size:10px}.cookie-notice__actions{display:flex;gap:10px;align-items:center}.cookie-notice__actions button{border:0;border-radius:8px;padding:9px 12px;background:var(--blue);color:#fff}
.topbar{position:sticky;top:0;z-index:20;background:#0e1117!important;color:#fff!important}.topbar__inner{width:min(1180px,calc(100% - 32px));min-height:70px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar .brand-mark{font-size:25px;color:#fff}.topbar .brand-product{font-size:8px;margin-top:4px}.topbar__right{display:flex;align-items:center;gap:12px}.user-chip{text-align:right}.user-chip strong{display:block;font-size:11px;color:#fff}.user-chip span{display:block;color:#aab2be;font-size:9px}
.dashboard{width:min(1180px,calc(100% - 32px));margin:30px auto 60px;color:#16191f}.hero-dashboard{margin-bottom:24px}.hero-dashboard h1{margin:5px 0;font-family:Manrope,Arial,sans-serif;font-size:34px}.hero-dashboard p{margin:0;color:var(--muted);font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat,.panel{padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff;color:#16191f}.stat span{color:var(--muted);font-size:10px}.stat strong{display:block;margin-top:7px;font-size:27px}.stat small{color:#9da2aa;font-size:9px}.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.panel__header h3{margin:0}.panel__header span{color:#707681}.condo-list,.quick-actions{display:grid;gap:10px}.condo-item,.quick-action{padding:15px;border:1px solid #edf0f3;border-radius:11px;background:#fff;color:#16191f}.condo-item span,.quick-action span{display:block;margin-top:4px;color:#707681;font-size:10px}
.form-page{width:min(760px,calc(100% - 32px));margin:34px auto 60px}.form-card{width:min(100%,560px);margin:0 auto;padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.form-card h1{margin:5px 0 7px;font-family:Manrope,Arial,sans-serif;font-size:29px}.form-card .lead{margin:0 0 24px;color:var(--muted);font-size:12px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.info-box{margin-bottom:20px;padding:14px;border:1px solid #d6eaff;border-radius:10px;background:#f3f9ff;color:#386180;font-size:10px}.loading{padding:30px;text-align:center;color:var(--muted)}.hidden{display:none!important}
.invite-result{margin-top:18px;padding:18px;border:1px solid #cfe4ff;border-radius:12px;background:#f4f9ff}.invite-result__title{margin-bottom:6px;font-weight:800;color:#155fae}.invite-result p{margin:0 0 12px;color:#647184;font-size:11px;line-height:1.55}.invite-link-row{display:flex;gap:8px}.invite-link-row input{min-width:0;flex:1;height:46px;padding:0 12px;border:1px solid #dce5ef;border-radius:9px;background:#fff;color:#252a31;font-size:11px}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.brand-panel{display:none}.login-panel{padding:24px}.mobile-brand{display:block}.stats{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:600px){.login-panel{padding:15px;align-items:start}.card{margin-top:18px;padding:28px 21px}.row{grid-template-columns:1fr;gap:0}.stats{grid-template-columns:1fr 1fr;gap:9px}.cookie-notice{left:10px;right:10px;bottom:10px;flex-direction:column;align-items:flex-start}.invite-link-row{flex-direction:column}.invite-link-row .btn{width:100%}}

.helper{color:#7b828c;font-size:10px;line-height:1.5}

/* ===== ST•ONE V4.2 — VALIDAÇÃO DO CONVITE ===== */
.invite-validation{
  display:flex;
  gap:13px;
  align-items:flex-start;
  margin:0 0 20px;
  padding:15px;
  border:1px solid #d9e7f7;
  border-radius:11px;
  background:#f5f9fe;
}
.invite-validation strong{
  display:block;
  margin-top:1px;
  font-size:12px;
}
.invite-validation p{
  margin:4px 0 0;
  color:#707681;
  font-size:10px;
  line-height:1.5;
}
.validation-icon{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e6f1ff;
  color:#1677ff;
  font-weight:800;
}
.validation-icon--loading{
  letter-spacing:1px;
}
.invite-validation--success{
  border-color:#ccebd9;
  background:#f0faf4;
}
.invite-validation--success .validation-icon{
  background:#d9f3e4;
  color:#167044;
}
.invite-validation--error{
  border-color:#ffd6d6;
  background:#fff5f5;
}
.invite-validation--error .validation-icon{
  background:#ffe0e0;
  color:#b42b2b;
}
.invite-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:18px;
}
.invite-summary__item{
  min-height:82px;
  padding:13px;
  border:1px solid #e5e9ef;
  border-radius:10px;
  background:#fff;
}
.invite-summary__item span{
  display:block;
  margin-bottom:6px;
  color:#7b828c;
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.invite-summary__item strong{
  display:block;
  color:#171a20;
  font-size:12px;
  line-height:1.35;
}
.invite-summary__item small{
  display:block;
  margin-top:4px;
  color:#8b9199;
  font-size:9px;
}
@media(max-width:600px){
  .invite-summary{grid-template-columns:1fr}
}

/* ===== ST•ONE V4.3 — CRIAÇÃO DA CONTA ===== */
.invite-summary__item--wide{
  grid-column:1 / -1;
}
@media(max-width:600px){
  .invite-summary__item--wide{grid-column:auto}
}

/* ===== ST•ONE V4.5 — SOLICITAÇÕES ===== */
.request-toolbar{margin-bottom:14px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);border-radius:13px;background:#fff}
.request-toolbar strong{display:block;font-size:12px}.request-toolbar span{display:block;margin-top:3px;color:#818792;font-size:9px}
.request-list{display:grid;gap:11px}
.request-card{padding:17px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.request-card__main{min-width:0;display:flex;align-items:center;gap:15px}
.request-card__unit{width:66px;height:60px;flex:0 0 66px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #d7e9ff;border-radius:10px;background:#f2f8ff}
.request-card__unit span{color:#7b8795;font-size:8px;text-transform:uppercase}.request-card__unit strong{margin-top:2px;color:#1168c3;font-size:18px}
.request-card__info{min-width:0}.request-card__info strong{display:block;font-size:13px}.request-card__info span{display:block;margin-top:4px;color:#606773;font-size:10px}.request-card__info small{display:block;margin-top:5px;color:#949aa3;font-size:9px}
.request-card__side{display:flex;align-items:center;gap:10px}.status-pill{padding:7px 9px;border-radius:999px;font-size:8px;font-weight:800;white-space:nowrap}.status-pill--pending{background:#fff4df;color:#986000}
.empty-state{padding:50px 20px;text-align:center;border:1px solid var(--line);border-radius:15px;background:#fff}.empty-state__icon{width:42px;height:42px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:#eaf8f0;color:#187247;font-weight:800}.empty-state strong{display:block;font-size:13px}.empty-state p{max-width:420px;margin:7px auto 0;color:#7c828c;font-size:10px;line-height:1.55}
.modal-backdrop{position:fixed;z-index:200;inset:0;padding:20px;display:grid;place-items:center;background:rgba(8,11,16,.58)}
.modal-card{width:min(100%,620px);max-height:calc(100vh - 40px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28)}
.modal-header{padding:22px 24px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #edf0f3}.modal-header h2{margin:5px 0 0;font-family:Manrope,Arial,sans-serif;font-size:24px}.modal-close{width:34px;height:34px;border:1px solid #e4e7eb;border-radius:9px;background:#fff;color:#555b64;font-size:21px}
.modal-body{padding:22px 24px 24px}
.request-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.detail-box{padding:13px;border:1px solid #e7eaee;border-radius:10px;background:#fafbfc}.detail-box--wide{grid-column:1 / -1}.detail-box span{display:block;margin-bottom:5px;color:#848a94;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.detail-box strong{display:block;font-size:11px;word-break:break-word}
.document-check{margin-bottom:17px;padding:14px;border:1px solid #d8e8fa;border-radius:11px;background:#f6faff}.document-check label{display:flex;align-items:flex-start;gap:11px;cursor:pointer}.document-check input{width:18px;height:18px;margin-top:1px}.document-check strong{display:block;font-size:11px}.document-check small{display:block;margin-top:4px;color:#747c87;font-size:9px;line-height:1.5}
.textarea{width:100%;min-height:92px;padding:12px 13px;resize:vertical;border:1px solid var(--line);border-radius:10px;outline:none;color:#22262d;font-family:Inter,Arial,sans-serif;font-size:12px}.textarea:focus{border-color:#1677ff;box-shadow:0 0 0 4px rgba(22,119,255,.08)}
.modal-actions{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn-reject{width:100%;border:1px solid #ffd0d0;background:#fff5f5;color:#a32929}
@media(max-width:700px){.request-card{align-items:flex-start;flex-direction:column}.request-card__side{width:100%;justify-content:space-between}.request-detail-grid{grid-template-columns:1fr}.detail-box--wide{grid-column:auto}.modal-actions{grid-template-columns:1fr}}

/* ===== ST•ONE V4.6 — PORTAL DO MORADOR / MORADORES ===== */
.resident-dashboard{width:min(1120px,calc(100% - 32px));margin:34px auto 60px}.resident-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.resident-hero h1{margin:5px 0 6px;font-family:Manrope,Arial,sans-serif;font-size:34px;letter-spacing:-1.2px}.resident-hero p{margin:0;color:var(--muted);font-size:12px}.unit-badge{min-width:108px;padding:13px 18px;text-align:center;border:1px solid #d9e9fb;border-radius:13px;background:#fff}.unit-badge span{display:block;color:#7d8793;font-size:8px;font-weight:800;letter-spacing:1px}.unit-badge strong{display:block;margin-top:3px;color:#126bc9;font-size:24px}.resident-summary-grid{display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:12px;margin:18px 0}.resident-summary{padding:17px;border:1px solid var(--line);border-radius:13px;background:#fff}.resident-summary>span{display:block;color:#858b94;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.resident-summary strong{display:block;margin-top:7px;font-size:13px}.resident-summary small{display:block;margin-top:4px;color:#8a9098;font-size:9px}.resident-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.resident-action{min-height:108px;padding:18px;display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#171a20}.resident-action__icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:12px;background:#eef6ff;color:#126fd4;font-weight:800}.resident-action>div:nth-child(2){flex:1}.resident-action strong{display:block;font-size:12px}.resident-action span{display:block;margin-top:5px;color:#7d838c;font-size:9px;line-height:1.5}.resident-action>b{color:#1677ff}.resident-action--primary{border-color:#cfe4ff;box-shadow:0 8px 25px rgba(22,119,255,.06)}.resident-action--disabled{opacity:.58}.resident-notice{margin-top:18px}.compact-btn{width:auto!important;padding:0 18px}.privacy-banner{margin-bottom:16px;padding:16px 18px;display:flex;align-items:flex-start;gap:13px;border:1px solid #d6e9ff;border-radius:13px;background:#f5faff}.privacy-banner__icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:#e2f1ff;color:#116fcf;font-size:18px}.privacy-banner strong{font-size:11px}.privacy-banner p{margin:4px 0 0;color:#6f7884;font-size:9px;line-height:1.55}.people-toolbar{margin-bottom:13px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);border-radius:12px;background:#fff}.people-toolbar strong{display:block;font-size:12px}.people-toolbar span:not(.status-pill){display:block;margin-top:4px;color:#858b94;font-size:9px}.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.person-card{padding:15px;display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.person-photo{width:62px;height:62px;flex:0 0 62px;overflow:hidden;display:grid;place-items:center;border-radius:50%;background:#eef3f8;color:#8290a0;font-size:22px}.person-photo img{width:100%;height:100%;object-fit:cover}.person-info{min-width:0;flex:1}.person-info strong{display:block;font-size:12px}.person-info span{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#777e88;font-size:9px}.person-info small{display:block;margin-top:5px;color:#9a9fa6;font-size:8px}.person-status{padding:6px 8px;border-radius:999px;font-size:7px;font-weight:800;white-space:nowrap}.person-status--active{background:#e9f8ef;color:#187247}.person-status--pending{background:#fff4df;color:#986000}.person-status--rejected{background:#fff0f0;color:#a52b2b}.resident-modal-card{width:min(100%,680px)}.face-guide{margin-bottom:18px;padding:15px;display:grid;grid-template-columns:130px 1fr;gap:16px;align-items:center;border:1px solid #d8e9fb;border-radius:12px;background:#f7fbff}.face-guide__visual{text-align:center}.face-oval{width:72px;height:88px;margin:0 auto 7px;display:grid;place-items:center;border:2px solid #62aaf8;border-radius:48% 48% 45% 45%;background:#e9f4ff;color:#1677ff;font-size:30px}.face-guide__visual span{color:#3980c7;font-size:7px;font-weight:800;letter-spacing:.6px}.face-guide strong{font-size:11px}.face-guide p{margin:5px 0 9px;color:#727b87;font-size:9px;line-height:1.5}.face-rules{display:flex;gap:6px;flex-wrap:wrap}.face-rules span{padding:5px 7px;border-radius:999px;background:#fff;border:1px solid #e2eaf2;color:#68727e;font-size:7px}.photo-upload{padding:12px;display:flex!important;align-items:center;gap:13px;border:1px dashed #b9cde2;border-radius:12px;background:#fbfdff;cursor:pointer}.photo-preview{width:68px;height:68px;flex:0 0 68px;overflow:hidden;display:grid;place-items:center;border-radius:50%;background:#eaf3fc;color:#1677ff;font-size:25px}.photo-preview img{width:100%;height:100%;object-fit:cover}.photo-upload strong{display:block;font-size:11px}.photo-upload small{display:block;margin-top:4px;color:#858c96;font-size:8px}.biometric-consent{margin:18px 0 4px;padding:14px;display:flex;align-items:flex-start;gap:11px;border:1px solid #dce5ee;border-radius:11px;background:#fafcfe;cursor:pointer}.biometric-consent input{width:18px;height:18px;margin:1px 0 0;flex:0 0 18px}.biometric-consent strong{display:block;font-size:10px}.biometric-consent small{display:block;margin-top:4px;color:#777f89;font-size:8px;line-height:1.55}
@media(max-width:700px){.resident-hero{align-items:flex-start;flex-direction:column}.resident-hero .compact-btn{width:100%!important}.resident-summary-grid,.resident-actions,.people-grid{grid-template-columns:1fr}.unit-badge{align-self:stretch}.people-toolbar{align-items:flex-start;flex-direction:column}.face-guide{grid-template-columns:1fr}.person-card{align-items:flex-start}.person-status{margin-left:auto}}

/* ST•ONE Access V4.6.1 — melhoria de legibilidade no cadastro facial */
.face-guide strong{font-size:14px;line-height:1.35}
.face-guide p{margin:7px 0 12px;color:#65707d;font-size:13px;line-height:1.55}
.face-guide__visual span{font-size:9px;line-height:1.3}
.face-rules{gap:8px}
.face-rules span{padding:6px 9px;font-size:11px;font-weight:700;line-height:1.2}
.face-rules span:nth-child(-n+3){background:#edf9f2;border-color:#cdebd9;color:#167348}
.face-rules span:nth-child(n+4){background:#fff3f3;border-color:#f1d4d4;color:#a43b3b}
.helper{font-size:13px;line-height:1.5}
.photo-upload strong{font-size:13px;line-height:1.35}
.photo-upload small{margin-top:5px;font-size:12px;line-height:1.4}
.biometric-consent strong{font-size:13px;line-height:1.35}
.biometric-consent small{margin-top:5px;font-size:12px;line-height:1.5}
@media(max-width:700px){.face-guide strong{font-size:15px}.face-guide p{font-size:13px}.face-rules span{font-size:11px}.helper{font-size:12px}.biometric-consent small{font-size:12px}}

/* ST•ONE Access V4.7 — formas de acesso FACIAL / TAG */
.access-method-field{margin-top:18px}.access-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.access-method-card{position:relative;padding:15px;display:flex!important;align-items:flex-start;gap:12px;border:1px solid #dce5ee;border-radius:12px;background:#fff;cursor:pointer;transition:.18s ease}.access-method-card:hover{border-color:#b9d9ff}.access-method-card--selected{border-color:#7eb9ff;background:#f5faff;box-shadow:0 0 0 2px rgba(22,119,255,.06)}.access-method-card input{position:absolute;opacity:0;pointer-events:none}.access-method-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:#eaf4ff;color:#1677ff;font-size:20px;font-weight:800}.access-method-card strong{display:block;font-size:13px;line-height:1.3}.access-method-card small{display:block;margin-top:5px;color:#727b87;font-size:11px;line-height:1.45}.access-warning{margin-top:10px;padding:12px 14px;border:1px solid #ffe0a7;border-radius:11px;background:#fffaf0;color:#805700}.access-warning strong{display:block;font-size:12px}.access-warning span{display:block;margin-top:4px;font-size:11px;line-height:1.5}.tag-access-note{margin:12px 0 18px;padding:18px;display:flex;gap:14px;align-items:flex-start;border:1px solid #d7e9ff;border-radius:12px;background:#f6fbff}.tag-access-note__icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:#e5f2ff;color:#1477df;font-size:24px}.tag-access-note strong{font-size:14px}.tag-access-note p{margin:6px 0 0;color:#66717d;font-size:12px;line-height:1.55}.person-photo--tag{background:#eef6ff;color:#1477df}.face-rules .face-rule-good{background:#effbf3;border-color:#c8ead4;color:#207344;font-size:11px;font-weight:700}.face-rules .face-rule-bad{background:#fff3f3;border-color:#f3cdcd;color:#a73535;font-size:11px;font-weight:700}
@media(max-width:700px){.access-method-grid{grid-template-columns:1fr}.access-method-card{padding:14px}.tag-access-note{padding:15px}.access-warning span{font-size:12px}}
.resident-review{margin-bottom:16px;padding:16px;display:flex;gap:16px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff}.resident-review__photo{width:92px;height:92px;flex:0 0 92px;overflow:hidden;display:grid;place-items:center;border-radius:50%;background:#eef6ff;color:#1677ff;font-size:30px}.resident-review__photo img{width:100%;height:100%;object-fit:cover}.resident-review__info h3{margin:4px 0 2px;font-size:19px}.resident-review__info p{margin:0;color:#737c87;font-size:12px}.resident-review__badges{margin-top:10px;display:flex;gap:7px;flex-wrap:wrap}.admin-access-note{margin:0 0 18px}
@media(max-width:700px){.resident-review{align-items:flex-start}.resident-review__photo{width:76px;height:76px;flex-basis:76px}.resident-review__info h3{font-size:17px}}

/* ST•ONE V4.8 — ativação facial posterior */
.person-card{position:relative;flex-wrap:wrap}.person-card__actions{margin-left:auto;display:flex;align-items:center;gap:8px}.btn-face-activate{min-height:36px;padding:0 13px;border:1px solid #bcdcff;border-radius:9px;background:#f1f8ff;color:#0868ce;font-size:11px;font-weight:800;white-space:nowrap}.btn-face-activate:hover{background:#e6f3ff}.facial-pending-note{display:block;margin-top:5px;color:#9b6800!important;font-weight:700}.activation-person{display:flex;align-items:center;gap:13px;margin-bottom:18px;padding:14px 16px;border:1px solid #d5e8ff;border-radius:12px;background:#f4f9ff}.activation-person__icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:#e7f2ff;color:#0879f9;font-size:22px}.activation-person small{display:block;color:#0879f9;font-size:9px;font-weight:800;letter-spacing:1px}.activation-person strong{display:block;margin:2px 0 3px;font-size:14px}.activation-person span{display:block;color:#697482;font-size:12px;line-height:1.45}
@media(max-width:700px){.person-card__actions{width:100%;margin:10px 0 0 74px}.btn-face-activate{width:100%}}

/* ST•ONE V4.9 — fluxo inteligente de solicitações */
.notification-badge{display:inline-flex;align-items:center;margin-left:8px;padding:4px 8px;border-radius:999px;background:#eaf4ff;color:#0b6fd8;font-style:normal;font-size:9px;font-weight:800;vertical-align:middle}.quick-action--notifications strong{display:flex;align-items:center;justify-content:space-between;gap:8px}.dependency-note{color:#9a6b00!important;font-weight:700}.status-pill--waiting{background:#fff7e8;color:#926000}.status-pill--info{background:#eef6ff;color:#126fd4}.request-dependency{margin-top:12px;padding:12px 14px;border:1px solid #ffe1a6;border-radius:10px;background:#fffaf0;color:#795600;font-size:12px;line-height:1.5}.resident-request-card{padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.resident-request-card__info strong{display:block;font-size:13px}.resident-request-card__info span,.resident-request-card__info small{display:block;margin-top:4px;color:#747d88;font-size:11px}.resident-request-list{display:grid;gap:10px;margin-top:14px}.tag-request-panel{margin-bottom:16px;padding:18px;border:1px solid #d5e8ff;border-radius:14px;background:#f6fbff}.tag-request-panel h3{margin:0 0 5px;font-size:16px}.tag-request-panel p{margin:0;color:#687482;font-size:12px;line-height:1.55}.tag-request-actions{margin-top:14px}.select{width:100%;height:48px;padding:0 13px;border:1px solid #dce3ea;border-radius:10px;background:#fff;color:#20242a;font:inherit}.request-reason{margin-top:12px}.request-section-title{margin:26px 0 10px;font-size:18px}.request-card--blocked{background:#fffcf6}.request-card--blocked .open-request{border-color:#e5d4aa}.status-grid{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}
@media(max-width:700px){.resident-request-card{align-items:flex-start;flex-direction:column}.resident-request-card .status-pill{align-self:flex-start}.quick-action--notifications strong{align-items:flex-start;flex-direction:column}}
.message.show.warning{display:block;background:#fffaf0;border-color:#ffe1a6;color:#795600}

/* ST•ONE Access V4.10 — módulo de veículos */
.vehicle-toolbar{margin-bottom:18px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.vehicle-toolbar strong{display:block;font-size:15px}.vehicle-toolbar span{display:block;margin-top:4px;color:#727c87;font-size:11px}.vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.vehicle-card{padding:18px;display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.vehicle-card__icon{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:13px;background:#eef6ff;font-size:25px}.vehicle-card__info{min-width:0;flex:1}.vehicle-card__info span{display:block;color:#1677df;font-size:9px;font-weight:800;letter-spacing:.8px}.vehicle-card__info strong{display:block;margin-top:3px;font-size:18px;letter-spacing:.5px}.vehicle-card__info p{margin:5px 0 0;color:#727c87;font-size:11px;line-height:1.45}.vehicle-type-field>label{display:block;margin-bottom:8px;font-size:12px;font-weight:700}.vehicle-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.vehicle-type-card{position:relative;padding:14px;display:flex!important;align-items:center;gap:12px;border:1px solid #dce5ee;border-radius:12px;background:#fff;cursor:pointer}.vehicle-type-card input{position:absolute;opacity:0;pointer-events:none}.vehicle-type-card--selected{border-color:#7eb9ff;background:#f5faff;box-shadow:0 0 0 2px rgba(22,119,255,.05)}.vehicle-type-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:11px;background:#eaf4ff;font-size:22px}.vehicle-type-card strong{display:block;font-size:13px}.vehicle-type-card small{display:block;margin-top:4px;color:#777f89;font-size:10px;line-height:1.4}.vehicle-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vehicle-admin-review{margin-bottom:16px;padding:17px;display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.vehicle-admin-review__icon{width:62px;height:62px;flex:0 0 62px;display:grid;place-items:center;border-radius:14px;background:#eef6ff;font-size:30px}.vehicle-admin-review__info h3{margin:4px 0 2px;font-size:21px;letter-spacing:.6px}.vehicle-admin-review__info p{margin:0;color:#737c87;font-size:12px}
@media(max-width:700px){.vehicle-toolbar{align-items:flex-start;flex-direction:column}.vehicle-toolbar .btn{width:100%}.vehicle-grid,.vehicle-form-grid,.vehicle-type-grid{grid-template-columns:1fr}.vehicle-card{align-items:flex-start}.vehicle-card>.status-pill{margin-left:auto}}
.vehicle-card--actions{flex-wrap:wrap}.vehicle-card__info small{display:block;margin-top:7px;color:#65717e;font-size:10px;font-weight:700}.vehicle-card__actions{width:100%;display:flex;justify-content:flex-end;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.vehicle-card__actions .btn{padding:9px 12px;font-size:10px}.tag-price-box{margin:14px 0;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;border:1px solid #cfe4ff;border-radius:12px;background:#f6fbff}.tag-price-box span{font-size:12px;color:#65717e}.tag-price-box strong{font-size:20px;color:#126fd4}@media(max-width:700px){.vehicle-card__actions{flex-direction:column}.vehicle-card__actions .btn{width:100%}}

/* V4.12 - Vagas e tutela de uso */
.parking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.parking-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.parking-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.parking-card__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#eef6ff;color:#126fd4;font-weight:900}.parking-card h3{margin:10px 0 3px;font-size:19px}.parking-card p{margin:0;color:#727c87;font-size:11px;line-height:1.5}.parking-card__section{margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.parking-card__section span{display:block;color:#858b94;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.parking-card__section strong{display:block;margin-top:5px;font-size:13px}.parking-card__warning{margin-top:9px;color:#8a6300!important;font-size:10px!important;font-weight:700}.parking-card__actions{display:flex;gap:8px;margin-top:14px}.parking-card__actions .btn{flex:1}.tutela-received{border-color:#cfe4ff;background:#fbfdff}.tutela-confirm{margin:14px 0;padding:15px;border:1px solid #ffe0a3;border-radius:12px;background:#fffaf0;color:#715300;font-size:11px;line-height:1.6}.admin-parking-list{display:grid;gap:12px}.admin-parking-row{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.admin-parking-row strong{display:block;font-size:13px}.admin-parking-row span{display:block;margin-top:4px;color:#737c87;font-size:10px}.admin-parking-row__right{display:flex;align-items:center;gap:10px}.admin-parking-row__right .btn{white-space:nowrap}
@media(max-width:700px){.parking-grid{grid-template-columns:1fr}.parking-card__actions{flex-direction:column}.admin-parking-row{align-items:flex-start;flex-direction:column}.admin-parking-row__right{width:100%;align-items:flex-start;flex-direction:column}.admin-parking-row__right .btn{width:100%}}

/* ST•ONE Access V4.13 — revisão de cadastros importados */
.import-review-page{max-width:1180px}.import-toolbar{display:flex;gap:24px;align-items:end;justify-content:space-between;margin-bottom:22px}.import-condo-field{min-width:320px;margin:0}.import-summary{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:12px;flex:1;max-width:560px}.import-summary>div{background:rgba(255,255,255,.035);border:1px solid var(--border);border-radius:14px;padding:14px 16px}.import-summary span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.import-summary strong{font-size:24px}.import-units{display:grid;gap:20px}.import-unit{background:var(--card);border:1px solid var(--border);border-radius:22px;overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.18)}.import-unit__header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)}.import-unit__header h2{margin:2px 0 0;font-size:28px}.import-section{padding:22px 24px;border-bottom:1px solid var(--border)}.import-section__title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.import-section__title h3{margin:0}.import-section__title span{font-size:12px;color:var(--muted)}.import-form-grid,.import-vehicle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.import-form-grid label,.import-vehicle-grid label{font-size:12px;color:var(--muted);display:grid;gap:6px}.import-form-grid input,.import-form-grid select,.import-vehicle-grid input,.import-vehicle-grid select{width:100%;padding:11px 12px;border-radius:11px;border:1px solid var(--border);background:#0d1118;color:#fff}.import-people,.import-vehicles{display:grid;gap:12px}.import-person,.import-vehicle{border:1px solid var(--border);border-radius:16px;padding:14px;background:rgba(255,255,255,.018)}.import-person{display:flex;gap:14px;align-items:flex-start}.import-person__body{flex:1;min-width:0}.import-photo{width:72px;height:72px;flex:0 0 72px;border-radius:15px;border:1px dashed rgba(255,255,255,.22);display:grid;place-items:center;overflow:hidden;background:#0a0d12;font-size:24px;color:var(--muted)}.import-photo.has-photo{border-style:solid}.import-photo img,.photo-upload-preview img{width:100%;height:100%;object-fit:cover}.import-row-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.import-person__meta{font-size:12px;color:var(--muted);margin-top:5px}.import-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.btn-small{padding:8px 12px;font-size:12px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;letter-spacing:.04em;background:rgba(255,255,255,.07);color:#dbe5f2}.status-pendente{background:rgba(255,178,36,.12);color:#ffc65d}.status-ativo{background:rgba(50,205,129,.12);color:#70e0a6}.import-warning{margin-top:9px;padding:9px 11px;border:1px solid rgba(255,178,36,.24);background:rgba(255,178,36,.07);border-radius:10px;color:#ffd98d;font-size:12px}.import-vehicle-grid{grid-template-columns:120px 1fr 1.5fr 1fr 150px}.import-vehicle .btn{margin-top:10px}.import-approval{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:rgba(45,137,255,.055)}.import-approval div{display:grid;gap:4px}.import-approval span{font-size:12px;color:var(--muted);max-width:650px}.import-photo-modal{max-width:560px}.photo-upload-preview{width:180px;height:180px;border-radius:20px;border:1px dashed rgba(255,255,255,.24);overflow:hidden;display:grid;place-items:center;background:#0a0d12;margin:18px auto;color:var(--muted);font-size:34px}.modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.modal.hidden{display:none}.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.modal__card{position:relative;width:min(100%,760px);max-height:90vh;overflow:auto;background:#121821;border:1px solid var(--border);border-radius:22px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.45)}.modal__close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#fff;font-size:28px;cursor:pointer}
@media(max-width:900px){.import-toolbar{display:grid;align-items:stretch}.import-condo-field{min-width:0}.import-summary{max-width:none}.import-form-grid,.import-vehicle-grid{grid-template-columns:1fr 1fr}.import-approval{align-items:stretch;flex-direction:column}.import-approval .btn{width:100%}}
@media(max-width:560px){.import-summary{grid-template-columns:1fr}.import-form-grid,.import-vehicle-grid{grid-template-columns:1fr}.import-person{display:grid}.import-photo{width:92px;height:92px}.import-unit__header,.import-section,.import-approval{padding:18px}}

/* ST•ONE Access V4.13.1 — upload administrativo de foto */
.photo-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}
.photo-file-picker{display:flex!important;align-items:center;gap:12px;width:100%;padding:12px 14px!important;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:#0d131b;cursor:pointer;transition:.18s ease}
.photo-file-picker:hover{border-color:rgba(43,145,255,.55);background:#101923}
.photo-file-picker__icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:rgba(31,139,255,.12);color:#45a8ff;font-size:21px;font-weight:500}
.photo-file-picker__copy{min-width:0;flex:1;display:block}
.photo-file-picker__copy strong{display:block;color:#f2f6fb;font-size:12px}
.photo-file-picker__copy small{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#798696;font-size:10px;font-weight:500}
.photo-file-picker__action{flex:0 0 auto;padding:8px 11px;border-radius:9px;background:rgba(255,255,255,.06);color:#cdd7e3;font-size:10px;font-weight:800}
.photo-file-hint{display:block;margin-top:7px;color:#778391!important;font-size:10px!important}

/* V4.14 — ID do sistema de acessos e sugestões de marcas */
.access-system-box{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(220px,1.3fr) auto;gap:10px;align-items:end;margin-top:12px;padding:12px;border:1px solid rgba(45,137,255,.18);background:rgba(45,137,255,.045);border-radius:13px}.access-system-box label{display:grid;gap:6px;font-size:11px;color:var(--muted)}.access-system-box input{width:100%;padding:10px 11px;border-radius:10px;border:1px solid var(--border);background:#0d1118;color:#fff}.access-system-box .btn{margin:0;white-space:nowrap}@media(max-width:760px){.access-system-box{grid-template-columns:1fr}.access-system-box .btn{width:100%}}

/* V4.14.1 — regra visual de capacidade de veículos */
.vehicle-type-card--disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
.vehicle-type-card--disabled input{cursor:not-allowed}


/* V4.14.3 — ID do sistema de acessos protegido por alteração explícita */
.access-system-box{grid-template-columns:minmax(145px,.7fr) minmax(220px,1.3fr) auto;align-items:center}
.access-system-value{display:grid;gap:4px;min-width:0}.access-system-value span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.access-system-value strong{font-size:13px;color:#eef5ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-system-value--name strong{font-weight:600;color:#c8d3df}.access-system-edit{grid-column:1/3;display:grid;gap:6px}.access-system-edit.hidden{display:none!important}.access-system-edit label{display:grid;gap:6px}.access-system-edit input{max-width:260px}.access-system-box .btn{justify-self:end}@media(max-width:760px){.access-system-box{grid-template-columns:1fr}.access-system-edit{grid-column:auto}.access-system-edit input{max-width:none}.access-system-box .btn{justify-self:stretch}}

/* V4.14.4 — contraste reforçado no cartão do sistema de acessos */
.access-system-box{background:#eaf3ff;border-color:#b8d6ff}
.access-system-value span{color:#53657a;font-weight:700}
.access-system-value strong{color:#102033;font-weight:800}
.access-system-value--name strong{color:#24364a;font-weight:700}
.access-system-value strong:empty::after{content:'Não informado';color:#66788d;font-weight:600}

/* ST•ONE Access V4.15 — diretórios administrativos */
.stat-link{display:block;color:var(--text);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.stat-link:hover{transform:translateY(-2px);border-color:#b9d7ff;box-shadow:0 12px 30px rgba(22,119,255,.08)}.stat-link small{color:#6d7783}.admin-directory-page{max-width:1180px}.directory-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}.directory-toolbar>div strong{display:block;font-size:15px}.directory-toolbar>div span{display:block;margin-top:5px;color:var(--muted);font-size:11px}.directory-search{display:grid;gap:6px;min-width:300px}.directory-search span{font-size:10px;font-weight:700;color:#687381;text-transform:uppercase;letter-spacing:.05em}.directory-search input{width:100%;padding:11px 13px;border:1px solid #dce3eb;border-radius:10px;background:#f9fbfd;color:#17202a;outline:none}.directory-search input:focus{border-color:#8dc1ff;box-shadow:0 0 0 3px rgba(22,119,255,.08)}.directory-list{display:grid;gap:10px}.directory-row{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(380px,1.8fr) auto;align-items:center;gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}.directory-main{min-width:0}.directory-main>strong{display:block;margin-top:4px;font-size:14px;color:#111923}.directory-main>small{display:block;margin-top:4px;color:#7a8490;font-size:10px;line-height:1.45}.directory-kicker{display:block;color:#1475df;font-size:9px;font-weight:800;letter-spacing:.08em}.directory-meta{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px}.directory-meta>div{min-width:0;padding:10px 12px;border-radius:10px;background:#f5f8fc}.directory-meta span{display:block;color:#718094;font-size:9px;text-transform:uppercase;letter-spacing:.04em}.directory-meta strong{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1b2b3d;font-size:11px}.directory-meta--compact{grid-template-columns:repeat(2,minmax(120px,1fr))}.directory-empty{padding:32px;text-align:center;border:1px dashed #d7dfe8;border-radius:14px;background:#fff;color:#7b8590}.unit-directory-row{grid-template-columns:100px minmax(280px,1.5fr) minmax(260px,1fr)}.unit-number-box{width:86px;height:70px;display:grid;align-content:center;justify-items:center;border-radius:13px;background:#eef6ff;border:1px solid #cfe4ff}.unit-number-box span{font-size:8px;font-weight:800;letter-spacing:.08em;color:#1677ff}.unit-number-box strong{margin-top:3px;font-size:23px;color:#102033}.responsible-name+ .responsible-name{margin-top:8px;padding-top:8px;border-top:1px solid #eef1f4}.responsible-name strong{display:block;margin-top:4px;font-size:13px;color:#111923}.responsible-name span{display:block;margin-top:3px;color:#7a8490;font-size:10px}.responsible-name--empty strong{color:#8a4e19}.parking-link-arrow{display:inline!important;margin:0 5px!important;color:#1677ff!important;font-size:13px!important}.admin-parking-row>div>strong{font-size:14px;color:#17202a}
@media(max-width:820px){.directory-toolbar{align-items:stretch;flex-direction:column}.directory-search{min-width:0}.directory-row,.unit-directory-row{grid-template-columns:1fr}.directory-meta,.directory-meta--compact{grid-template-columns:1fr 1fr}.unit-number-box{width:100%;height:auto;padding:12px;justify-items:start}.unit-number-box strong{font-size:20px}}
@media(max-width:520px){.directory-meta,.directory-meta--compact{grid-template-columns:1fr}}
/* ST•ONE V4.16 — ficha da unidade e perfil gestor */
.directory-row--link{transition:.18s ease;cursor:pointer}.directory-row--link:hover{border-color:#b8d8ff;box-shadow:0 10px 28px rgba(24,79,140,.08);transform:translateY(-1px)}
.unit-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.unit-overview-card{padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff}.unit-overview-card span{display:block;color:#74808d;font-size:10px}.unit-overview-card strong{display:block;margin-top:6px;color:#121a24;font-size:21px}.detail-section{margin-top:14px;padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff}.detail-section .panel__header>div>span{display:block;margin-top:4px;color:#78828d;font-size:10px}.detail-list{display:grid;gap:9px}.detail-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 15px;border:1px solid #e7ebef;border-radius:12px;background:#fbfcfe}.detail-row>div:first-child{min-width:0}.detail-row strong{display:block;margin-top:4px;color:#111923;font-size:13px}.detail-row small{display:block;margin-top:4px;color:#74808d;font-size:10px;line-height:1.45}.detail-row__actions{display:flex;align-items:center;gap:8px}.detail-row__actions .btn{min-height:38px;padding:0 12px}.permission-note{padding:6px 10px;border-radius:999px;background:#eef6ff;color:#126bd9;font-size:9px;font-weight:800}.btn-inline{width:auto;padding:0 16px}.manager-card{width:min(100%,620px)}.permissions-box strong{display:block;margin-bottom:5px;color:#17304a}.permissions-box span{display:block;line-height:1.55}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.modal__backdrop{position:absolute;inset:0;background:rgba(7,12,20,.58)}.modal__card{position:relative;z-index:2;width:min(100%,520px);padding:26px;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.25)}.modal__card h3{margin:7px 0 4px;font-size:23px}.modal__card .lead{margin:0 0 20px;color:#6e7885;font-size:11px;line-height:1.5}.modal__close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#55606d;font-size:25px}.modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:17px}.modal__actions .btn-primary{width:auto}.invite-copy{display:flex;gap:9px;margin-top:10px}.invite-copy input{flex:1;min-width:0;padding:0 12px;border:1px solid #cfe0f2;border-radius:10px;background:#fff}.invite-copy .btn{flex:0 0 auto}
@media(max-width:820px){.unit-overview-grid{grid-template-columns:1fr 1fr}.detail-row{align-items:flex-start;flex-direction:column}.detail-row__actions{width:100%;justify-content:space-between}.invite-copy{flex-direction:column}.invite-copy input{height:46px}}
@media(max-width:520px){.unit-overview-grid{grid-template-columns:1fr}.modal__actions{flex-direction:column-reverse}.modal__actions .btn{width:100%}}

/* ST•ONE V4.17 — Histórico / auditoria */
.audit-filters{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(150px,.7fr) minmax(220px,1fr) auto;gap:14px;align-items:end}.audit-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#657184;text-transform:uppercase;letter-spacing:.04em}.audit-filters input,.audit-filters select{width:100%;min-height:44px;border:1px solid #d9e0e8;border-radius:10px;background:#fff;color:#182331;padding:0 12px;font-size:14px;text-transform:none;letter-spacing:0}.audit-list{display:grid;gap:12px}.audit-item{border:1px solid #e2e7ee;border-radius:14px;padding:16px;background:#fff}.audit-item__top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.audit-item__top>div{display:grid;gap:4px}.audit-item__top strong{font-size:15px;color:#17212f}.audit-item__top span{font-size:12px;color:#6a7584}.audit-item__top em{font-style:normal;font-size:12px;font-weight:800;color:#1769aa;background:#eef7ff;border:1px solid #d7ebfa;border-radius:999px;padding:6px 9px;white-space:nowrap}.audit-item__meta{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:12px;font-size:13px;color:#5a6675}.audit-item__data{margin-top:12px;padding:10px 12px;border-radius:10px;background:#f7f9fb;color:#465363;font-size:12px;line-height:1.55;word-break:break-word}@media(max-width:760px){.audit-filters{grid-template-columns:1fr}.audit-item__top{flex-direction:column}.audit-item__top em{align-self:flex-start}}

/* ST•ONE V4.18 — Notificações por e-mail */
.email-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:8px 0 18px}.email-summary article{padding:18px;border:1px solid var(--border,#dbe3ec);border-radius:16px;background:#fff}.email-summary span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:800}.email-summary strong{display:block;margin-top:6px;font-size:1.9rem;color:#0f172a}.notice-box{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;background:#eef6ff;border:1px solid #bfdbfe;color:#0f172a}.notice-box span{color:#475569}.email-list{display:grid;gap:14px;margin-top:18px}.email-card{border:1px solid #dbe3ec;border-radius:18px;background:#fff;padding:18px}.email-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.email-card__top h3{margin:4px 0 0;color:#0f172a}.email-card__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.email-card__grid>div{display:flex;flex-direction:column;gap:3px;padding:12px;background:#f8fafc;border-radius:12px}.email-card__grid span{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:800}.email-card__grid strong{color:#0f172a}.email-card__grid small{color:#64748b}.email-card__note{margin-top:12px;color:#475569}@media(max-width:760px){.email-summary,.email-card__grid{grid-template-columns:1fr}.email-card__top{flex-direction:column}}

/* ===== ST•ONE V4.19 — CADASTRO ADMINISTRATIVO DE MORADOR ===== */
.detail-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.detail-header-actions .btn{min-height:42px}.modal__card .info-box{margin-top:4px;margin-bottom:16px}.modal__card .helper{display:block;margin-top:6px}.btn-inline{width:auto;padding-left:18px;padding-right:18px}
@media(max-width:600px){.detail-header-actions{width:100%;align-items:stretch}.detail-header-actions .btn{width:100%}}
/* V4.19.1 — foto no cadastro administrativo */
.optional-label{font-weight:500;color:#7a8595}.file-input-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.file-picker{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dbe3ec;border-radius:12px;padding:12px 14px;cursor:pointer;background:#fff;margin-top:10px}.file-picker span{font-weight:700;color:#147cf3}.file-picker small{color:#788596;text-align:right}.photo-upload-preview{width:112px;height:112px;border-radius:16px;border:1px dashed #b9c8d8;background:#f5f8fb;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-top:8px}.photo-upload-preview img{width:100%;height:100%;object-fit:cover}.photo-upload-preview span{font-size:30px;color:#8ba0b5}

/* V4.21 — miniatura protegida dos moradores na Ficha da Unidade */
.resident-summary{display:flex;align-items:center;gap:12px;min-width:0}.resident-summary__copy{min-width:0}.resident-thumb{width:54px;height:54px;flex:0 0 54px;border-radius:13px;overflow:hidden;display:grid;place-items:center;background:#0d1117;border:1px solid #202a36;color:#7aaef8;font-size:18px}.resident-thumb img{width:100%;height:100%;object-fit:cover;display:block}.detail-row--resident>div:first-child{min-width:0}@media(max-width:820px){.resident-summary{width:100%}}

/* V4.21 — agrupamento de unidades por bloco no Residencial Tanguá A */
.unit-block-group{margin:0 0 28px}.unit-block-group__header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 12px;padding:0 4px}.unit-block-group__header h2{margin:3px 0 0;font-size:22px}.unit-block-group__header>span{font-size:13px;color:#6b7280}.unit-block-group__list{display:grid;gap:10px}.unit-block-group+.unit-block-group{padding-top:8px;border-top:1px solid rgba(148,163,184,.18)}@media(max-width:700px){.unit-block-group__header{align-items:flex-start;flex-direction:column;gap:6px}}

/* V4.20 — blocos expansíveis + cadastro administrativo de veículos */
.unit-block-accordion .unit-block-group__header{width:100%;border:0;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;cursor:pointer;text-align:left;align-items:center;transition:.18s ease;box-shadow:0 7px 18px rgba(15,23,42,.04)}
.unit-block-accordion .unit-block-group__header:hover{border-color:#bfd5ef;background:#fafdff}
.unit-block-accordion .unit-block-group__list{display:none;margin-top:10px}
.unit-block-accordion.is-open .unit-block-group__list{display:grid}
.unit-block-header-meta{display:flex;align-items:center;gap:12px;color:#64748b;font-size:13px}
.unit-block-chevron{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;background:#eef6ff;color:#147cf3;font-size:18px;transition:transform .18s ease}
.unit-block-accordion.is-open .unit-block-chevron{transform:rotate(180deg)}
.unit-block-accordion+.unit-block-accordion{border-top:0;padding-top:0}
#addVehicleParking,#addVehicleType{width:100%;min-height:44px;padding:0 12px;border:1px solid #d9e0e8;border-radius:10px;background:#fff;color:#182331}
@media(max-width:700px){.unit-block-accordion .unit-block-group__header{align-items:center;flex-direction:row}.unit-block-header-meta>span:first-child{display:none}}


/* V4.21 - classificação operacional das unidades */
.unit-filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.unit-filter-chip{appearance:none;border:1px solid #dfe6ee;background:#fff;color:#4b5563;border-radius:12px;padding:10px 13px;display:flex;align-items:center;gap:9px;cursor:pointer;font:inherit;transition:.16s ease;box-shadow:0 5px 14px rgba(15,23,42,.035)}.unit-filter-chip span{font-size:12px;font-weight:750}.unit-filter-chip strong{min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#f1f5f9;color:#334155;display:inline-flex;align-items:center;justify-content:center;font-size:12px}.unit-filter-chip:hover{border-color:#b9cde5;transform:translateY(-1px)}.unit-filter-chip.is-active{border-color:#2384ec;background:#eef7ff;color:#1268b9}.unit-filter-chip.is-active strong{background:#2384ec;color:#fff}.unit-filter-chip--alert:not(.is-active) strong{background:#fff1f0;color:#c2413a}.unit-class-badge{display:inline-flex;width:max-content;margin-top:7px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.02em}.unit-class-badge--active{background:#eaf9f1;color:#17784a}.unit-class-badge--pending{background:#fff7df;color:#9a6500}.unit-class-badge--missing{background:#fff0ef;color:#b83d35}.unit-class-badge--muted{background:#f1f5f9;color:#64748b}@media(max-width:700px){.unit-filter-bar{display:grid;grid-template-columns:1fr 1fr}.unit-filter-chip{justify-content:space-between}.unit-block-header-meta>span:first-child{display:inline}}


/* ST•ONE V4.23 — logo como Home + leitura padronizada de vagas */
.brand-home{display:block;width:max-content;color:inherit;text-decoration:none;cursor:pointer}
.brand-home:visited,.brand-home:hover,.brand-home:active{color:inherit;text-decoration:none}
.brand-home:focus-visible{outline:2px solid #2384ec;outline-offset:5px;border-radius:4px}

/* ST•ONE V4.24 — prévia do condomínio + painel dedicado do Síndico/Gestor */
.condo-item--link{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(220px,.8fr) auto;align-items:center;gap:20px;text-decoration:none;color:inherit;transition:.16s ease}.condo-item--link:hover{border-color:#b9d4f3;background:#fbfdff;transform:translateY(-1px)}.condo-item--link>div:first-child{display:grid;gap:5px}.condo-item--link>b{color:#147cf3;font-size:12px;white-space:nowrap}.condo-item__manager{display:grid;gap:3px}.condo-item__manager span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#7a8594}.condo-item__manager strong{font-size:12px}.condo-item__manager small{font-size:10px;color:#6b7280}.condo-profile-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:18px;margin-bottom:18px}.condo-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.condo-data-grid>div,.manager-contact>div,.manager-profile-list>div{padding:14px;border-radius:12px;background:#f7f9fc;border:1px solid #e6ebf1;display:grid;gap:4px}.condo-data-grid span,.manager-contact span,.manager-profile-list span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#778393;font-weight:800}.condo-data-grid strong,.manager-contact strong,.manager-profile-list strong{font-size:14px;color:#17212f}.condo-manager-card{text-align:center}.manager-avatar{width:62px;height:62px;margin:4px auto 12px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#0f6fe8,#10a6f5);color:#fff;font-size:24px;font-weight:900}.manager-name{display:block;font-size:18px}.manager-unit{display:block;margin:5px 0 15px;color:#667384;font-size:11px}.manager-contact{display:grid;gap:9px;text-align:left}.condo-manager-button{width:100%;margin-top:12px}.condo-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.manager-profile-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.manager-resident-switch{margin-top:14px;text-decoration:none}.manager-scope-note{margin-top:18px;display:flex;flex-direction:column;gap:4px}.resident-action--manager{border-color:#b8d9ff!important;background:#f4f9ff!important}.resident-action--manager .resident-action__icon{background:#147cf3!important;color:#fff!important}
@media(max-width:850px){.condo-item--link{grid-template-columns:1fr}.condo-profile-grid{grid-template-columns:1fr}.condo-data-grid,.condo-action-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.condo-data-grid,.condo-action-grid,.manager-profile-list{grid-template-columns:1fr}}

/* V4.25 — transição seletiva do novo responsável */
.transition-card{margin:18px 0;padding:18px;border:1px solid rgba(10,132,255,.22);border-radius:16px;background:rgba(10,132,255,.045)}
.transition-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.transition-option{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;cursor:pointer}
.transition-option input{margin-top:4px;width:18px;height:18px;accent-color:#0a84ff}
.transition-option span{display:flex;flex-direction:column;gap:3px}.transition-option small{color:#6b7280;line-height:1.35}
.warning-box{border-color:#f1c36a;background:#fff8e7}.warning-box strong{display:block;margin-bottom:4px}
.stat-attention strong{color:#0a84ff}
@media(max-width:700px){.transition-options{grid-template-columns:1fr}}


/* ST•ONE V4.26 — plataforma modular, consentimento WhatsApp e assinatura Stier */
.communication-consent{margin:18px 0;padding:16px;border:1px solid #dce6f0;border-radius:14px;background:#f8fbff}.communication-consent__title{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:#17212f;margin-bottom:10px}.consent-check{display:flex;gap:11px;align-items:flex-start;cursor:pointer}.consent-check input{width:18px;height:18px;margin-top:2px;accent-color:#0a84ff;flex:0 0 18px}.consent-check span{display:grid;gap:4px}.consent-check strong{font-size:13px;color:#17212f}.consent-check small,.consent-purpose{font-size:11px;line-height:1.45;color:#687587}.consent-purpose{display:block;margin:10px 0 0 29px}.module-panel{margin-bottom:18px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.module-card{border:1px solid #e2e8f0;border-radius:14px;padding:15px;background:#f8fafc;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.module-card>div{display:grid;gap:5px}.module-card strong{font-size:14px;color:#17212f}.module-card span{font-size:11px;line-height:1.4;color:#6b7280}.module-card em{font-style:normal;font-size:9px;font-weight:900;letter-spacing:.05em;color:#64748b;background:#e9eef4;border-radius:999px;padding:5px 8px;white-space:nowrap}.module-card.is-active{border-color:#b9d8fb;background:#f5faff}.module-card.is-active em{background:#e5f4ff;color:#0b70d1}.stone-platform-footer{width:min(1180px,calc(100% - 32px));margin:28px auto 14px;padding:12px 4px 4px;border-top:1px solid rgba(148,163,184,.18);display:flex;align-items:center;justify-content:space-between;gap:14px;opacity:.62;font-size:10px;color:#687587}.stone-platform-footer__brand{display:flex;align-items:center;gap:8px}.stone-platform-footer__brand img{width:72px;height:auto;display:block}.stone-platform-footer__links{display:flex;align-items:center;gap:7px}.stone-platform-footer a{color:inherit;text-decoration:none}.stone-platform-footer a:hover{color:#147cf3}.app-shell+.stone-platform-footer,.form-page+.stone-platform-footer{position:relative;z-index:3}@media(max-width:720px){.module-grid{grid-template-columns:1fr}.stone-platform-footer{flex-direction:column;justify-content:center;text-align:center;opacity:.7}.stone-platform-footer__brand img{width:66px}}

/* ST•ONE V4.27 — Entregas: câmera, encomendas e retirada por QR */
.deliveries-page{max-width:1180px}.deliveries-hero{background:linear-gradient(135deg,#07131f,#0b2741)}.deliveries-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.delivery-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.delivery-form label{display:grid;gap:7px;font-size:11px;font-weight:800;color:#475569}.delivery-form input,.delivery-form select,.qr-valid input{width:100%;min-height:44px;border:1px solid #d9e0e8;border-radius:10px;background:#fff;padding:0 12px;font:inherit}.delivery-form__wide{grid-column:1/-1}.delivery-photo{position:relative;padding:18px;border:1px dashed #9fc4ea;border-radius:14px;background:#f6fbff;cursor:pointer}.delivery-photo input{position:absolute;inset:0;opacity:0;cursor:pointer}.delivery-photo strong{font-size:14px;color:#147cf3}.delivery-photo small{font-weight:500;color:#6b7280}.delivery-photo img{position:relative;z-index:2;width:min(320px,100%);max-height:220px;object-fit:cover;border-radius:12px;margin-top:8px}.delivery-list{display:grid;gap:11px}.delivery-card{display:grid;grid-template-columns:92px 1fr;gap:13px;padding:11px;border:1px solid #e3e9ef;border-radius:14px;background:#fff}.delivery-card.is-waiting{border-color:#b8d8fb;background:#fafdff}.delivery-card>img,.delivery-card__no-photo{width:92px;height:82px;border-radius:10px;object-fit:cover;background:#eef4f9;display:grid;place-items:center;color:#789}.delivery-card__body{min-width:0;display:grid;gap:5px}.delivery-card__top{display:flex;justify-content:space-between;gap:10px}.delivery-card__top span{font-size:9px;font-weight:900;color:#0b70d1;background:#e8f5ff;border-radius:999px;padding:5px 8px;height:max-content}.delivery-card p{margin:0;color:#475569;font-size:13px}.delivery-card small{color:#7a8594;font-size:10px}.qr-display{display:grid;justify-items:center;gap:10px;margin-top:18px;padding:20px;border-radius:16px;background:#f6f9fc}.qr-display #qrCode{padding:12px;background:#fff;border-radius:12px}.qr-display>strong{font-size:22px;letter-spacing:.08em}.qr-reader{max-width:520px;margin:0 auto 15px;overflow:hidden;border-radius:14px}.qr-valid{display:grid;gap:10px;padding:16px;margin:12px 0;border:1px solid #b9dfca;border-radius:14px;background:#f2fbf6}.qr-valid>strong{color:#17784a;font-size:17px}.qr-valid label{display:flex;align-items:center;gap:8px;padding:9px;background:#fff;border-radius:9px;font-size:12px}.qr-valid label input[type=checkbox]{width:18px;height:18px;min-height:0}.qr-valid label:has(#withdrawName){display:grid}.resident-action--deliveries .resident-action__icon{background:#e8f5ff!important;color:#147cf3!important}@media(max-width:680px){.delivery-form{grid-template-columns:1fr}.delivery-form__wide{grid-column:auto}.delivery-card{grid-template-columns:74px 1fr}.delivery-card>img,.delivery-card__no-photo{width:74px;height:70px}.delivery-card__top{display:grid}.deliveries-actions .btn{width:100%}}

/* V4.27.3 — acesso rápido priorizado no celular */
.condo-preview-page .condo-action-grid{margin-bottom:0}.quick-action--deliveries{border-color:#b9d8fb;background:#f5faff;text-decoration:none}.quick-action--deliveries strong{color:#0b70d1}.quick-action{display:block;text-decoration:none}.quick-action:hover{border-color:#b9d4f3;background:#fbfdff}
@media(max-width:560px){.condo-preview-page .hero-dashboard{margin-bottom:14px}.condo-preview-page>.hidden>section.panel:first-of-type,.condo-preview-page #content>section.panel:first-of-type{padding:16px}.condo-action-grid .quick-action{min-height:72px;padding:16px}.condo-action-grid .quick-action strong{font-size:15px}.condo-action-grid .quick-action span{font-size:11px;line-height:1.45}}

/* V4.27.3 — legibilidade e seleção de unidades */
.deliveries-hero h1,.deliveries-hero p,.deliveries-hero .eyebrow{color:#fff!important}.delivery-form select optgroup{font-weight:800;color:#172033}.delivery-form select option{font-weight:500;color:#172033}


/* ST•ONE V4.28.0 — recuperação de senha */
.login-help{display:flex;justify-content:flex-end;margin-top:10px}.login-help a{font-size:12px;font-weight:750;color:#147cf3;text-decoration:none}.login-help a:hover{text-decoration:underline}.password-page{min-height:calc(100vh - 90px);display:grid;place-items:center;padding:28px 16px;background:radial-gradient(circle at 20% 10%,rgba(20,124,243,.08),transparent 30%),#f4f7fa}.password-card{width:min(100%,480px);padding:30px;border:1px solid #dfe6ee;border-radius:20px;background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.08)}.password-brand{display:inline-block;margin-bottom:24px}.password-brand img{display:block;width:190px;height:auto}.password-card h1{margin:7px 0 8px;font-size:28px;color:#17212f}.password-intro{margin:0 0 22px;color:#667384;font-size:13px;line-height:1.6}.password-card .btn{width:100%;margin-top:4px}.password-note{display:grid;gap:4px;margin-top:18px;padding:14px;border:1px solid #dceaf8;border-radius:12px;background:#f7fbff}.password-note strong{font-size:12px;color:#17212f}.password-note span{font-size:11px;line-height:1.5;color:#687587}.password-back{display:inline-block;margin-top:20px;color:#667384;text-decoration:none;font-size:12px;font-weight:700}.password-back:hover{color:#147cf3}.password-loading{padding:15px;border:1px solid #dce6f0;border-radius:12px;background:#f8fafc;color:#667384;font-size:12px;text-align:center}.password-input-wrap{position:relative}.password-input-wrap input{padding-right:74px}.password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#147cf3;font-size:11px;font-weight:800;cursor:pointer}.password-card .field small{color:#7a8594;font-size:10px}.password-card .message a{color:inherit;font-weight:850}@media(max-width:560px){.password-card{padding:23px 19px;border-radius:16px}.password-brand img{width:165px}.password-card h1{font-size:24px}}

/* ST•ONE Entregas — retirada por QR */
.withdraw-list{display:grid;gap:12px;margin:18px 0 22px}.withdraw-item{display:grid!important;grid-template-columns:auto 74px 1fr;align-items:center;gap:12px;padding:12px!important;border:1px solid #d8e2ea;border-radius:14px;background:#fff;cursor:pointer;transition:.18s ease}.withdraw-item:hover{border-color:#1397ef}.withdraw-item.is-unchecked{opacity:.55;background:#f5f6f7}.withdraw-item>input{width:22px;height:22px;margin:0}.withdraw-item__photo{width:74px;height:74px;border-radius:10px;overflow:hidden;background:#edf2f6;display:flex;align-items:center;justify-content:center;font-size:26px}.withdraw-item__photo img{width:100%;height:100%;object-fit:cover}.withdraw-item__info{min-width:0;display:flex;flex-direction:column;gap:4px}.withdraw-item__info strong{font-size:15px;color:#12202d}.withdraw-item__info small{font-size:12px;color:#647382;line-height:1.35}.qr-valid>strong{display:block}.qr-valid .btn{width:100%;margin-top:8px}@media(max-width:560px){.withdraw-item{grid-template-columns:auto 64px 1fr}.withdraw-item__photo{width:64px;height:64px}}
.delivery-card__actions{display:flex;justify-content:flex-end;margin-top:6px}.delivery-card__actions .btn{min-height:36px;font-size:11px;padding:0 12px}

/* ST•ONE Entregas 4.28.0 — leitor QR em sobreposição */
.scanner-overlay{position:fixed!important;inset:0!important;z-index:9999!important;margin:0!important;border:0!important;border-radius:0!important;padding:16px!important;background:#f5f7fb!important;overflow-y:auto!important;overscroll-behavior:contain;box-shadow:none!important}
.scanner-overlay.hidden{display:none!important}
.scanner-overlay__header{max-width:720px;margin:0 auto 12px;padding:14px 112px 14px 16px;border-radius:16px;background:linear-gradient(135deg,#07131f,#0b2741);color:#fff;display:grid;gap:4px}
.scanner-overlay__header strong{font-size:18px;line-height:1.15}.scanner-overlay__header span{font-size:12px;line-height:1.35;color:#c7d5e6}
.scanner-close{position:fixed!important;top:max(12px,env(safe-area-inset-top))!important;right:16px!important;z-index:10002!important;min-height:44px!important;padding:0 14px!important;background:#fff!important;color:#1f2937!important;border:1px solid #d7dee7!important;box-shadow:0 6px 18px rgba(0,0,0,.14)!important}
.scanner-overlay .qr-reader{width:100%!important;max-width:720px!important;margin:0 auto 14px!important;border-radius:18px!important;overflow:hidden!important;background:#05070a!important;box-shadow:0 10px 30px rgba(0,0,0,.18)!important}
.scanner-overlay .qr-reader video{width:100%!important;max-height:56vh!important;min-height:280px!important;object-fit:cover!important}
.scanner-overlay .scanner-result{max-width:720px;margin:0 auto 20px}.scanner-overlay .qr-valid{margin-top:10px}
body.scanner-open{overflow:hidden!important}
@media(max-width:680px){.scanner-overlay{padding:10px!important}.scanner-overlay__header{margin-top:0;padding:12px 92px 12px 14px;border-radius:13px}.scanner-overlay__header strong{font-size:16px}.scanner-overlay__header span{font-size:11px}.scanner-close{top:max(10px,env(safe-area-inset-top))!important;right:10px!important;min-height:40px!important;padding:0 11px!important;font-size:12px!important}.scanner-overlay .qr-reader{max-width:none!important;border-radius:14px!important}.scanner-overlay .qr-reader video{max-height:48vh!important;min-height:310px!important}.scanner-overlay .qr-valid{margin-top:8px}}

/* ST•ONE V4.28 — Entregas mobile-first, manutenção e portaria */
.deliveries-appbar{position:sticky;top:0;z-index:80;background:rgba(7,13,24,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.deliveries-appbar__inner{width:min(1180px,100%);margin:auto;min-height:78px;padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.deliveries-brand{display:grid;gap:2px;color:#fff;text-decoration:none;line-height:1}.deliveries-brand__mark{font-size:27px;font-weight:900;letter-spacing:-1.5px}.deliveries-brand__mark b{color:#13a3ff}.deliveries-brand__module{font-size:9px;font-weight:900;letter-spacing:4px;color:#7bc8ff}
.deliveries-user{display:flex;align-items:center;gap:12px}.deliveries-user>div{display:grid;text-align:right;line-height:1.2}.deliveries-user strong{font-size:13px;color:#fff}.deliveries-user span{font-size:10px;color:#9caabc;margin-top:3px}.deliveries-logout{min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.07);color:#fff;font-size:11px;font-weight:800;cursor:pointer}
.deliveries-intro{display:flex;align-items:center;gap:16px;margin:8px 0 18px;padding:18px 20px;border:1px solid #dce7f1;border-radius:20px;background:linear-gradient(135deg,#fff,#f4f9ff);box-shadow:0 10px 30px rgba(15,23,42,.045)}.deliveries-intro__icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#147cf3,#11a8f6);color:#fff;font-size:22px;box-shadow:0 8px 20px rgba(20,124,243,.2)}.deliveries-intro span{font-size:9px;font-weight:900;letter-spacing:2.5px;color:#147cf3}.deliveries-intro h1{margin:3px 0 2px;font-size:27px;line-height:1;color:#142033}.deliveries-intro p{margin:0;font-size:11px;color:#667384}
.portaria-admin-card,.history-maintenance-card{width:min(100%,760px)}.compact-panel{margin:18px 0}.portaria-list{display:grid;gap:10px}.portaria-user{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e1e7ee;border-radius:14px;background:#fff}.portaria-user>div{display:grid;gap:3px}.portaria-user strong{font-size:13px;color:#172033}.portaria-user span,.portaria-user small{font-size:10px;color:#718096}.portaria-user.is-inactive{opacity:.68;background:#f7f8fa}.portaria-user .btn{min-height:38px;font-size:10px}
.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.backup-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.danger-zone{display:grid;gap:10px;margin-top:28px;padding:20px;border:1px solid #f0b6b6;border-radius:16px;background:#fff7f7}.danger-zone>strong{font-size:16px;color:#962f2f}.danger-zone p,.danger-zone small{margin:0;font-size:11px;line-height:1.55;color:#7a5252}.danger-zone .btn{justify-self:start}
@media(max-width:680px){.deliveries-appbar__inner{min-height:68px;padding:9px 14px}.deliveries-brand__mark{font-size:24px}.deliveries-brand__module{font-size:8px;letter-spacing:3.2px}.deliveries-user{gap:8px}.deliveries-user strong{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.deliveries-user span{font-size:9px}.deliveries-logout{min-height:36px;padding:0 11px;border-radius:10px}.deliveries-page{padding-top:14px!important}.deliveries-intro{margin-top:0;padding:14px 15px;border-radius:16px;gap:12px}.deliveries-intro__icon{width:42px;height:42px;border-radius:13px}.deliveries-intro h1{font-size:23px}.deliveries-intro p{font-size:10px}.scope-grid{grid-template-columns:1fr}.backup-actions .btn{width:100%}.portaria-user{align-items:flex-start}.portaria-user .btn{flex:0 0 auto}}

/* ST•ONE Entregas V4.30 — visão operacional, filtros e pendências */
.deliveries-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.deliveries-stat{display:grid;gap:3px;padding:16px 17px;border:1px solid #dfe7ef;border-radius:16px;background:#fff;box-shadow:0 6px 22px rgba(15,23,42,.035)}.deliveries-stat span{font-size:10px;font-weight:850;color:#657386;text-transform:uppercase;letter-spacing:.5px}.deliveries-stat strong{font-size:29px;line-height:1;color:#142033}.deliveries-stat small{font-size:10px;color:#8a96a5}.deliveries-stat--attention strong{color:#b45309}.deliveries-overview.has-old .deliveries-stat--attention{border-color:#f0c98d;background:#fffaf1}.deliveries-tools{margin-bottom:16px}.deliveries-filter-grid{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(260px,1.5fr) auto;align-items:end;gap:12px}.deliveries-filter-grid label{display:grid;gap:6px;font-size:10px;font-weight:850;color:#1d2939}.deliveries-filter-grid select,.deliveries-filter-grid input{width:100%;min-height:44px;border:1px solid #d9e2ec;border-radius:11px;background:#fff;padding:0 12px;font:inherit;color:#172033}.deliveries-filter-grid .btn{min-height:44px;white-space:nowrap}.deliveries-filter-summary{margin-top:10px;font-size:10px;color:#758294}.delivery-card.is-old{border-color:#efc57e;background:linear-gradient(135deg,#fff,#fffaf1)}.delivery-age-alert{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:2px 0 4px;padding:5px 8px;border-radius:8px;background:#fff1d6;color:#95580c;font-size:10px;font-weight:850}.delivery-card__body>small+small{margin-top:2px}@media(max-width:820px){.deliveries-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.deliveries-filter-grid{grid-template-columns:1fr 1fr}.deliveries-filter-grid .btn{grid-column:1/-1}}@media(max-width:520px){.deliveries-overview{gap:8px}.deliveries-stat{padding:13px 12px;border-radius:13px}.deliveries-stat span{font-size:8px}.deliveries-stat strong{font-size:25px}.deliveries-stat small{font-size:9px}.deliveries-filter-grid{grid-template-columns:1fr}.deliveries-filter-grid .btn{grid-column:auto}.deliveries-tools{padding:16px!important}}

/* V4.31 — Proteção de dados */
.quick-action--protection{border-color:rgba(37,99,235,.24);background:linear-gradient(145deg,rgba(37,99,235,.07),rgba(15,23,42,.02))}
.protection-page{max-width:1180px}.protection-hero{margin-bottom:22px}.protection-summary-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;margin-bottom:18px}.protection-facts,.protection-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.protection-facts>div,.protection-state>div{padding:13px 14px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:rgba(248,250,252,.75)}.protection-facts span,.protection-state span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted,#64748b);margin-bottom:5px}.protection-facts strong,.protection-state strong{font-size:14px;color:var(--text,#0f172a)}.protection-note{margin:16px 0 0}.protection-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.status-badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;background:#eef2f7;color:#475569}.status-badge.is-ok,.copy-state.is-ok{background:#ecfdf5;color:#047857}.status-badge.is-warn,.copy-state.is-warn{background:#fff7ed;color:#c2410c}.protection-list{display:grid;gap:10px}.protection-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 15px;border:1px solid var(--border,#e5e7eb);border-radius:13px;background:#fff}.protection-copy__main{display:grid;gap:4px}.protection-copy__main strong{font-size:14px}.protection-copy__main span{font-size:12px;color:var(--muted,#64748b)}.protection-copy__meta{display:flex;align-items:center;gap:9px}.protection-copy__meta small{color:var(--muted,#64748b)}.copy-state{font-style:normal;font-weight:800;font-size:10px;letter-spacing:.06em;padding:5px 8px;border-radius:999px}.btn-small{padding:8px 11px;font-size:12px}.security-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.security-grid>div{padding:14px;border:1px solid var(--border,#e5e7eb);border-radius:12px}.security-grid strong{display:block;font-size:13px;margin-bottom:5px}.security-grid span{display:block;font-size:12px;line-height:1.45;color:var(--muted,#64748b)}
@media(max-width:820px){.protection-summary-grid{grid-template-columns:1fr}.security-grid{grid-template-columns:1fr 1fr}.protection-copy{align-items:flex-start;flex-direction:column}.protection-copy__meta{width:100%;flex-wrap:wrap}.protection-copy__meta .btn{margin-left:auto}}
@media(max-width:560px){.protection-facts,.protection-state,.security-grid{grid-template-columns:1fr}.protection-actions .btn{flex:1 1 100%}.protection-copy__meta .btn{width:100%;margin-left:0}}

.stone-platform-footer__version{margin-left:auto;font-weight:800;letter-spacing:.04em;color:#64748b;white-space:nowrap}.stone-platform-footer__version+.stone-platform-footer__links{margin-left:0}@media(max-width:720px){.stone-platform-footer__version{margin-left:0}}
/* ST•ONE V4.32 — Reservas */
.quick-action--reservations{border-color:rgba(124,58,237,.2);background:linear-gradient(145deg,rgba(124,58,237,.07),rgba(37,99,235,.025))}.reservations-page{max-width:1220px}.reservations-hero{background:linear-gradient(135deg,#0b1220,#16213a)}.reservations-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:18px}.reservation-form{display:grid;gap:15px}.reservation-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#344054}.reservation-form input,.reservation-form select,.reservation-form textarea{width:100%;border:1px solid #d9e2ec;border-radius:11px;background:#fff;padding:11px 12px;font:inherit;color:#172033}.reservation-form textarea{resize:vertical}.form-grid{display:grid;gap:12px}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.reservation-rule-card{display:grid;gap:11px;padding:15px;border:1px solid #e1e7ef;border-radius:14px;background:#f9fbfd}.reservation-rule-card>strong{font-size:13px;color:#172033}.toggle-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important}.toggle-line input{width:17px!important;height:17px}.field-help{margin:0;font-size:10px;line-height:1.5;color:#667085}.reservation-save{min-height:48px}.reservation-space-list{display:grid;gap:10px}.reservation-space{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e0e7ef;border-radius:14px;background:#fff}.reservation-space>div:first-child{display:grid;gap:4px}.reservation-space strong{font-size:13px}.reservation-space span,.reservation-space small{font-size:10px;color:#667085;line-height:1.45}.reservation-space>div:last-child{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.reservation-space em{font-style:normal;font-size:9px;font-weight:900;color:#047857;background:#ecfdf5;padding:5px 7px;border-radius:999px}.reservation-space.is-inactive{opacity:.62;background:#f8fafc}.reservation-space.is-inactive em{color:#64748b;background:#eef2f7}.empty-state{padding:25px;text-align:center;color:#7b8794;font-size:11px;border:1px dashed #d7e0e9;border-radius:14px}@media(max-width:900px){.reservations-layout{grid-template-columns:1fr}}@media(max-width:620px){.form-grid--2,.form-grid--3{grid-template-columns:1fr}.reservation-space{flex-direction:column}.reservation-space>div:last-child{justify-content:flex-start}}
/* V4.33.4 — configuração comercial de módulos por condomínio */
.module-config-card{align-items:center;gap:16px}.module-switch{display:flex;align-items:center;gap:9px;cursor:pointer;white-space:nowrap}.module-switch input{width:18px;height:18px;accent-color:#168cff}.module-switch span{font-size:12px;font-weight:800;letter-spacing:.03em}.module-config-card:not(.is-active){opacity:.66}.module-config-card.is-active .module-switch span{color:#168cff}

/* ST•ONE V4.33.4 — módulos no painel do morador e versão no cabeçalho */
.user-chip__version{display:block!important;margin-top:2px;color:#aab2be!important;font-size:9px!important;font-weight:700;letter-spacing:.03em;white-space:nowrap}.user-chip__engines{display:block;margin-top:2px;color:#68788b;font-size:9px;font-weight:600;line-height:1.25;max-width:520px}
.resident-actions__section{grid-column:1/-1;margin:6px 0 -2px;padding:0 2px}
.resident-actions__section span{margin:0!important;color:#7c8795!important;font-size:8px!important;font-weight:900;letter-spacing:.12em}
.resident-action--reservations{border-color:#d5defc!important;box-shadow:0 8px 25px rgba(65,86,220,.06)!important}
.resident-action--reservations .resident-action__icon{background:#eef0ff!important;color:#4b5ed7!important}

/* ST•ONE Reservas — painel do morador V4.33.4 */
.resident-reservation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.resident-reservation-card{display:grid;gap:13px;padding:18px;border:1px solid #e0e7ef;border-radius:16px;background:#fff;box-shadow:0 8px 28px rgba(15,23,42,.035)}.resident-reservation-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.resident-reservation-card__head span{display:block;margin-bottom:4px;color:#6d78a8;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.resident-reservation-card__head h3{margin:0;font-size:17px;color:#151c2b}.resident-reservation-card__head>strong{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#eef6ff;color:#126fd4;font-size:9px}.resident-reservation-card>p{margin:0;color:#677384;font-size:10px;line-height:1.65}.resident-reservation-card__facts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.resident-reservation-card__facts span{padding:10px;border-radius:10px;background:#f7f9fc;color:#445064;font-size:9px;line-height:1.35}.resident-reservation-card__facts b{display:block;margin-bottom:3px;color:#8a93a2;font-size:7px;text-transform:uppercase;letter-spacing:.06em}.resident-reservation-card__rules{display:grid;gap:4px;padding-top:2px}.resident-reservation-card__rules small{color:#788394;font-size:8px;line-height:1.45}.resident-reservation-card__button[disabled]{opacity:.58;cursor:not-allowed;pointer-events:none}@media(max-width:760px){.resident-reservation-grid{grid-template-columns:1fr}.resident-reservation-card__facts{grid-template-columns:1fr 1fr}}@media(max-width:430px){.resident-reservation-card__head{flex-direction:column}.resident-reservation-card__facts{grid-template-columns:1fr}}

/* ST•ONE Reservas — seleção visual V4.33.4 */
.reservation-picker{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(0,0,0,.18)}
.reservation-picker__header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.reservation-picker__header>div{display:flex;flex-direction:column;gap:4px}.reservation-picker__header small{opacity:.68}.reservation-date-input{min-width:165px;padding:11px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:inherit;color-scheme:dark}
.reservation-date-strip{display:grid;grid-template-columns:repeat(7,minmax(64px,1fr));gap:8px;margin-bottom:18px}.reservation-date-chip{border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.035);color:inherit;padding:9px 5px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}.reservation-date-chip span,.reservation-date-chip small{font-size:10px;text-transform:uppercase;opacity:.66}.reservation-date-chip b{font-size:20px}.reservation-date-chip.active{border-color:rgba(48,155,255,.85);box-shadow:0 0 0 1px rgba(48,155,255,.25) inset;background:rgba(48,155,255,.10)}
.reservation-slot-legend{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 10px;font-size:11px;opacity:.78}.reservation-slot-legend span{display:flex;align-items:center;gap:6px}.reservation-slot-legend i{width:11px;height:11px;border-radius:3px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.05)}.reservation-slot-legend i.selected{background:rgba(48,155,255,.45);border-color:rgba(48,155,255,.95)}.reservation-slot-legend i.busy{background:rgba(255,255,255,.12);opacity:.45}
.reservation-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.reservation-slot{border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.035);color:inherit;padding:11px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center}.reservation-slot b{font-size:16px}.reservation-slot small{font-size:10px;opacity:.64;margin-top:2px}.reservation-slot:hover:not(:disabled){border-color:rgba(48,155,255,.55)}.reservation-slot.selected{background:rgba(48,155,255,.18);border-color:rgba(48,155,255,.95);box-shadow:0 0 0 1px rgba(48,155,255,.18) inset}.reservation-slot.busy{opacity:.32;cursor:not-allowed;text-decoration:line-through}
.reservation-selection-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(48,155,255,.08);border:1px solid rgba(48,155,255,.22)}.reservation-selection-summary span{font-size:12px;opacity:.76}.reservation-picker__actions{display:flex;justify-content:flex-end;margin-top:14px}.reservation-picker__message{margin-top:10px}.reservation-day-choice{width:100%;padding:18px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035);color:inherit;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}.reservation-day-choice.selected{border-color:rgba(48,155,255,.95);background:rgba(48,155,255,.12)}.reservation-day-choice.busy{opacity:.38;cursor:not-allowed}
@media(max-width:720px){.reservation-picker__header{align-items:stretch;flex-direction:column}.reservation-date-input{width:100%;min-width:0}.reservation-date-strip{grid-template-columns:repeat(7,1fr);gap:5px}.reservation-date-chip{padding:8px 2px}.reservation-date-chip b{font-size:17px}.reservation-selection-summary{align-items:flex-start;flex-direction:column}.reservation-picker__actions .btn{width:100%}}
.person-card__actions{display:flex;flex-wrap:wrap;gap:8px}.btn-remove-resident{border:1px solid rgba(255,120,120,.28);background:rgba(255,80,80,.06);color:inherit;border-radius:10px;padding:8px 10px;cursor:pointer;font:inherit;font-size:12px}.btn-remove-resident:hover:not(:disabled){border-color:rgba(255,120,120,.55);background:rgba(255,80,80,.10)}.btn-remove-resident:disabled{opacity:.5;cursor:not-allowed}

/* ST•ONE V4.33.4 — Reservas mais claras e painéis de histórico */
.reservas-light-page{background:#f7f9fc!important}.reservas-light-page .resident-dashboard{width:min(1180px,calc(100% - 32px))}.reservas-section-panel,.reservation-detail-main,.reservation-detail-rules,.reservation-admin-bookings,.reservation-admin-history{background:#fff!important;box-shadow:0 10px 30px rgba(22,43,73,.035)}.reservas-section-panel .panel__header small,.reservation-detail-main .panel__header small,.reservation-admin-bookings .panel__header small,.reservation-admin-history .panel__header small{display:block;margin-top:4px;color:#8491a0;font-size:10px;font-weight:500}.reservation-list-card{background:#fff;border-color:#e3eaf2;box-shadow:0 7px 18px rgba(33,64,103,.035)}
.my-reservation-list{display:grid;gap:10px}.reservation-subtitle{margin:4px 0 2px;color:#708093;font-size:9px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}.reservation-subtitle--history{margin-top:18px}.my-reservation-card{display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:center;padding:13px 15px;border:1px solid #e5ebf2;border-radius:13px;background:#fbfcfe}.my-reservation-date{padding:7px 8px;text-align:center;border-radius:10px;background:#eef6ff;color:#126bc9}.my-reservation-date b{display:block;font-size:15px}.my-reservation-date span{display:block;margin-top:2px;font-size:8px}.my-reservation-main strong{display:block;font-size:12px}.my-reservation-main span{display:block;margin-top:4px;color:#5f6d7d;font-size:10px}.my-reservation-main small{display:block;margin-top:4px;color:#9aa4af;font-size:8px}.reservation-status{padding:6px 8px;border-radius:999px;font-size:7px;font-weight:900;white-space:nowrap;background:#eef2f6;color:#5f6a75}.reservation-status--confirmada{background:#e9f8ef;color:#177347}.reservation-status--pendente{background:#fff4df;color:#996100}.reservation-status--rejeitada,.reservation-status--cancelada{background:#fff0f0;color:#a52b2b}.reservation-status--concluida{background:#eef2f6;color:#65707c}
.reservation-detail-dashboard{padding-top:8px}.reservation-detail-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:22px 0}.reservation-detail-hero h1{margin:5px 0 7px;font-family:Manrope,Arial,sans-serif;font-size:36px;letter-spacing:-1.3px}.reservation-detail-hero p{margin:0;max-width:720px;color:#75808d;font-size:11px;line-height:1.6}.reservation-price-badge{padding:10px 14px;border:1px solid #d9e9fb;border-radius:999px;background:#fff;color:#086ed8;font-size:11px;font-weight:900}.reservation-detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.65fr);gap:16px;align-items:start}.reservation-picker--standalone{padding:0!important;background:transparent!important;border:0!important}.reservation-detail-rules{position:sticky;top:18px}.reservation-detail-rules h3{margin-top:0}.reservation-detail-facts{display:grid;gap:9px}.reservation-detail-facts>div{padding:12px;border:1px solid #e7edf3;border-radius:11px;background:#fbfcfe}.reservation-detail-facts span{display:block;color:#8792a0;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.reservation-detail-facts strong{display:block;margin-top:4px;font-size:10px}.reservation-date-chip{background:#fff!important;border-color:#dfe7ef!important}.reservation-date-chip:hover:not(.active){background:#f5f9fd!important}.reservation-slot{background:#fff!important}.reservation-slot.busy{background:#f1f3f6!important}.reservation-slot.selected{background:#e6f2ff!important}.reservation-selection-summary{background:#f4f9ff!important;border-color:#d4e8ff!important}
.reservation-admin-list{display:grid;gap:10px}.reservation-admin-card{display:grid;grid-template-columns:86px 1fr auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid #e3eaf2;border-radius:13px;background:#fbfcfe}.reservation-admin-time{text-align:center;padding:9px 7px;border-radius:10px;background:#eef6ff}.reservation-admin-time b{display:block;color:#106dcc;font-size:15px}.reservation-admin-time span{display:block;margin-top:3px;color:#66798c;font-size:8px}.reservation-admin-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.reservation-admin-title strong{font-size:12px}.reservation-admin-unit{display:flex;gap:8px;margin:8px 0}.reservation-admin-unit>span{min-width:66px;padding:7px 10px;border:1px solid #dfe8f1;border-radius:9px;background:#fff}.reservation-admin-unit small{display:block;color:#8793a1;font-size:7px;font-weight:900}.reservation-admin-unit b{display:block;margin-top:2px;color:#1c2835;font-size:11px}.reservation-admin-main>small{color:#8b96a3;font-size:8px}.reservation-admin-main p{margin:6px 0 0;color:#697684;font-size:9px}.reservation-admin-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
/* Remoção de moradores: ação sempre visível abaixo dos dados do morador */
.person-card__actions{width:calc(100% - 75px)!important;margin:8px 0 0 75px!important;display:flex!important;justify-content:flex-start!important;gap:8px!important;border-top:1px solid #edf1f5;padding-top:10px}.btn-remove-resident{color:#a43a3a!important;background:#fff7f7!important;border-color:#f0cccc!important;font-weight:800!important}.btn-remove-resident:hover:not(:disabled){background:#fff0f0!important;border-color:#e9aaaa!important}
@media(max-width:760px){.reservation-detail-layout{grid-template-columns:1fr}.reservation-detail-rules{position:static}.reservation-detail-hero{align-items:flex-start;flex-direction:column}.my-reservation-card,.reservation-admin-card{grid-template-columns:64px 1fr}.my-reservation-card>.reservation-status,.reservation-admin-actions{grid-column:2}.reservation-admin-actions{justify-content:flex-start}.person-card__actions{width:100%!important;margin:10px 0 0!important}}

/* ST•ONE V4.33.4 - cancelamento de reservas */
.my-reservation-cancel{margin-top:10px;width:max-content}
.reservation-cancel-closed{display:block;margin-top:8px;color:var(--text-muted,#788395);line-height:1.35}
.reservation-admin-actions .btn-danger{white-space:nowrap}

/* ST•ONE V4.33.4 — novos condomínios, backup e WhatsApp */
.form-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.condo-create-card{max-width:820px}.inline-field{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:#5f6d7d}.inline-field select{min-width:72px;min-height:38px;padding:0 10px;border:1px solid #d9e0e8;border-radius:9px;background:#fff;color:#17212f}.backup-request-row{align-items:center}.request-history{margin-top:24px}.communication-consent .message{margin-top:10px}@media(max-width:700px){.form-grid-two{grid-template-columns:1fr}.inline-field{width:100%;justify-content:space-between}.backup-request-row{align-items:flex-start}}

/* ST•ONE V4.33.4 — endereço dos condomínios */
.form-section-title{grid-column:1/-1;margin:24px 0 4px;font-size:13px;font-weight:900;color:#182231;text-transform:uppercase;letter-spacing:.04em}.condo-address-line{display:block;margin-top:6px;color:#667383;line-height:1.45}.condo-address-data{grid-column:1/-1}.condo-address-data strong{line-height:1.5}.condo-edit-button{margin-top:18px}.condo-preview-page #condoEditPanel{margin-top:18px}

/* V4.33.4 - gestão por condomínio */
.stats--overview{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-condos-panel{margin-bottom:18px}.context-chip{font-size:10px;color:#0b70d1;background:#eef6ff;border:1px solid #cbe2fb;border-radius:999px;padding:7px 10px}.condo-management-panel{margin-bottom:18px}.condo-management-panel .condo-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:850px){.condo-management-panel .condo-action-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.stats--overview,.condo-management-panel .condo-action-grid{grid-template-columns:1fr}}

/* V4.34.1 — Central de Comunicação */
.communication-page{max-width:1180px}.communication-status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.communication-status-strip article{background:var(--card,#101c2b);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:5px}.communication-status-strip span,.communication-status-strip small{color:var(--muted,#91a0b5)}.communication-status-strip strong{font-size:1.25rem}.communication-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;margin:18px 0}.recipient-preview{border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 14px;margin:10px 0;background:rgba(255,255,255,.025);display:flex;flex-direction:column;gap:4px}.recipient-preview span{color:var(--muted,#91a0b5);font-size:.9rem}.message-preview-card{border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:18px;background:rgba(255,255,255,.025)}.message-preview-brand{font-weight:800;margin-bottom:12px}.message-preview-text{white-space:pre-wrap;line-height:1.55;min-height:120px}.message-preview-consent{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);font-size:.88rem;color:var(--muted,#91a0b5)}.message-preview-consent.is-warning{color:#ffbf69}.communication-info{margin-top:14px}.template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.template-editor{border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:16px;background:rgba(255,255,255,.02)}.template-editor__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.template-editor__head>div{display:flex;flex-direction:column;gap:4px}.template-editor__head span{font-size:.82rem;color:var(--muted,#91a0b5)}.template-save-msg{font-size:.85rem;margin-left:8px}.communication-history{display:flex;flex-direction:column;gap:10px}.communication-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.07);padding:12px 0}.communication-history-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}.communication-history-item span,.communication-history-item small{color:var(--muted,#91a0b5);font-size:.86rem}.status-pill{font-style:normal;font-size:.75rem;white-space:nowrap;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:6px 9px;color:var(--muted,#91a0b5)}.empty-state{padding:20px;text-align:center;color:var(--muted,#91a0b5)}
@media(max-width:850px){.communication-status-strip,.template-list,.communication-grid{grid-template-columns:1fr}}

/* V4.34.1 — comunicação simplificada, e-mail visual e assinatura por condomínio */
.signature-upload-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.signature-preview-box{margin-top:10px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#fff}.signature-preview-box img{display:block;max-width:100%;max-height:110px;object-fit:contain;margin:auto}.template-channel-tabs{display:flex;gap:8px;margin-bottom:14px}.template-channel-tabs .is-selected{border-color:#1384ee;background:#eef6ff;color:#0b70d1}.whatsapp-preview{padding:18px;border-radius:18px;background:#e9f4e7;min-height:180px}.whatsapp-bubble{max-width:92%;margin-left:auto;padding:12px 14px;border-radius:14px 14px 3px 14px;background:#d9fdd3;color:#17212b;white-space:pre-wrap;line-height:1.5;box-shadow:0 1px 2px rgba(0,0,0,.08)}.email-preview{overflow:hidden;border:1px solid #e2e7ed;border-radius:16px;background:#fff;color:#26313d}.email-preview__header{padding:18px 22px;background:#0b1d31;text-align:center}.email-preview__header img{max-width:150px;max-height:52px;object-fit:contain}.email-preview__body{padding:24px;min-height:170px}.email-preview__body>strong{display:block;margin-bottom:16px;font-size:16px}.email-preview__body>div{white-space:pre-wrap;line-height:1.6;font-size:13px}.email-preview__signature{padding:0 24px 18px}.email-preview__signature img{display:block;max-width:100%;max-height:100px;object-fit:contain;object-position:left center}.email-preview__footer{padding:12px 24px;border-top:1px solid #edf0f3;background:#f7f9fb;color:#7d8996;font-size:10px;text-align:center}.communication-page .field small{display:block;margin-top:6px;color:#8794a3;line-height:1.45}

/* ST•ONE V4.35.4 — WhatsApp global */
.stone-readonly-card{min-height:46px;padding:12px 14px;border:1px solid #dbe3ee;border-radius:10px;background:#f8fafc;display:flex;flex-direction:column;gap:3px}.stone-readonly-card strong{color:#172033}.stone-readonly-card span{font-size:12px;color:#6b7280;line-height:1.45}

/* ============================================================
   ST•ONE V4.35.4 — Central de Comunicação simplificada
   ============================================================ */
.communication-status-strip article{background:#101c2b;border-color:#1e3147}.communication-status-strip article>span{color:#a8bdd3!important;font-weight:700}.communication-status-strip article>strong{color:#fff!important;font-size:1.55rem;line-height:1.1}.communication-status-strip article>small{color:#b9c9d8!important}.communication-identity-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:18px;align-items:start}.communication-broadcast-panel{margin-top:18px}.communication-broadcast-panel form{display:grid;grid-template-columns:minmax(220px,.32fr) minmax(0,.68fr);gap:14px 18px}.communication-channel-field{grid-column:1}#emailSubjectField{grid-column:2}.communication-message-field{grid-column:1/-1}.communication-message-field textarea{width:100%;min-height:220px;resize:vertical;font-size:14px;line-height:1.55}.communication-send-summary{grid-column:1/-1;padding:13px 15px;border:1px solid #dce6f0;border-radius:11px;background:#f7fafc;display:flex;flex-direction:column;gap:4px}.communication-send-summary strong{color:#172033;font-size:11px}.communication-send-summary span{color:#6b7785;font-size:10px;line-height:1.45}.communication-broadcast-panel #saveMessage,.communication-broadcast-panel #messageResult{grid-column:1/-1}.communication-history-legend{display:flex;gap:7px;flex-wrap:wrap;margin:-4px 0 14px}.communication-history-legend span{padding:5px 8px;border:1px solid #dfe7ef;border-radius:999px;background:#f8fafc;color:#657180;font-size:8px;font-weight:700}.communication-history-item{border-bottom-color:#e8edf2}.communication-history-item strong{color:#1b2430}.communication-history-item span,.communication-history-item small{color:#6f7b88!important}.communication-history-item .status-pill{border-color:#dce5ee;color:#5c6978;background:#f8fafc}@media(max-width:850px){.communication-identity-grid,.communication-broadcast-panel form{grid-template-columns:1fr}.communication-channel-field,#emailSubjectField,.communication-message-field,.communication-broadcast-panel #saveMessage,.communication-broadcast-panel #messageResult,.communication-send-summary{grid-column:1}}

/* ST•ONE V4.35.4 — Visitantes / Pré-autorização */
.visitor-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}.visitor-stats article{background:#101c2b;border:1px solid #20344a;border-radius:13px;padding:15px;display:flex;flex-direction:column;gap:4px}.visitor-stats span{color:#b5c7d8;font-size:10px;font-weight:700}.visitor-stats strong{color:#fff;font-size:25px;line-height:1}.visitor-stats small{color:#aebdcc;font-size:8px}.visitor-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.visitor-observation-field{grid-column:1/-1}.visitor-observation-field textarea{width:100%;resize:vertical;min-height:95px}.visitor-future-note{margin:14px 0}.visitor-list{display:flex;flex-direction:column;gap:9px}.visitor-card{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 14px;border:1px solid #dfe7ef;border-radius:12px;background:#fff}.visitor-card__main{display:flex;flex-direction:column;gap:4px;min-width:0}.visitor-card__main>span{color:#566474;font-size:10px}.visitor-card__main>small{color:#7a8794;font-size:9px}.visitor-card__title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.visitor-card__title strong{color:#172033;font-size:12px}.visitor-status{display:inline-flex;border-radius:999px;padding:3px 7px;border:1px solid #d9e2ea;font-size:8px;font-weight:800}.visitor-status--ativa{background:#ecfdf3;color:#18794e;border-color:#b7ebca}.visitor-status--agendada{background:#eef6ff;color:#1769aa;border-color:#c8e0f5}.visitor-status--expirada{background:#f6f7f9;color:#66717d;border-color:#dfe4e9}.visitor-status--cancelada{background:#fff1f1;color:#a13a3a;border-color:#efcaca}.visitor-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.muted-label{font-weight:400;color:#8b96a1}@media(max-width:820px){.visitor-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.visitor-form-grid,.visitor-filter-row{grid-template-columns:1fr}.visitor-observation-field{grid-column:1}.visitor-card{align-items:flex-start;flex-direction:column}}
\n/* ST•ONE V4.35.4 — importação em lote de fotos */

/* V4.35.4 — preferência de WhatsApp em destaque no painel inicial do morador */
.resident-whatsapp-card{margin:18px 0 20px;padding:18px 20px;border-width:1px;box-shadow:0 8px 24px rgba(15,23,42,.06);background:#fff}
.resident-whatsapp-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.resident-whatsapp-card__head .eyebrow{display:block;margin-bottom:4px}
.resident-whatsapp-card__head .communication-consent__title{margin-bottom:0;font-size:16px;text-transform:none;letter-spacing:0}
.resident-whatsapp-status{display:inline-flex;align-items:center;justify-content:center;min-width:88px;padding:6px 9px;border-radius:999px;background:#eef2f7;color:#667085;font-size:9px;font-weight:900;letter-spacing:.06em}
.resident-whatsapp-status.is-active{background:#e8f7ef;color:#137a45}
@media(max-width:620px){.resident-whatsapp-card{padding:16px}.resident-whatsapp-card__head{align-items:center}.resident-whatsapp-card__head .communication-consent__title{font-size:15px}.resident-whatsapp-status{min-width:auto}}

/* V4.35.4 — Ambiente técnico STIER */
.stone-test-panel{max-width:820px;margin:0 auto 22px}.stone-test-panel .form-grid{margin:18px 0}.stone-test-panel select{width:100%;margin-top:8px}.stone-test-switch{position:fixed;right:18px;bottom:18px;z-index:9999;background:#0b5ed7;color:#fff;text-decoration:none;padding:11px 15px;border-radius:999px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.18)}.stone-test-switch:hover{transform:translateY(-1px)}@media(max-width:640px){.stone-test-switch{left:14px;right:14px;text-align:center;bottom:12px}}

/* V4.37.04 — Sugestões e Melhorias */
.improvement-intro{display:grid;grid-template-columns:1.4fr .8fr;gap:18px;margin-bottom:20px}.improvement-intro .panel{margin:0}.improvement-form{display:grid;gap:16px}.improvement-form .field textarea{min-height:120px;resize:vertical}.improvement-list{display:grid;gap:14px}.improvement-card{border:1px solid rgba(148,163,184,.24);border-radius:16px;padding:18px;background:rgba(255,255,255,.035)}.improvement-card__top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.improvement-card h4{margin:0 0 6px}.improvement-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.improvement-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(59,130,246,.12);font-size:.78rem;font-weight:700}.improvement-response{margin-top:12px;padding:12px 14px;border-left:3px solid currentColor;background:rgba(255,255,255,.04);border-radius:8px}.improvement-admin-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);gap:18px}.improvement-admin-list{display:grid;gap:10px;max-height:720px;overflow:auto}.improvement-admin-item{width:100%;text-align:left;border:1px solid rgba(148,163,184,.2);background:rgba(255,255,255,.035);border-radius:14px;padding:14px;color:inherit;cursor:pointer}.improvement-admin-item.is-active{outline:2px solid rgba(59,130,246,.55)}.improvement-admin-item strong,.improvement-admin-item span{display:block}.improvement-admin-item span{font-size:.82rem;opacity:.72;margin-top:4px}.improvement-detail-empty{padding:34px;text-align:center;opacity:.72}.improvement-detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.improvement-detail-fields .field--full{grid-column:1/-1}.quick-action--improvements{border-color:rgba(59,130,246,.38)!important;background:linear-gradient(135deg,rgba(59,130,246,.10),rgba(255,255,255,.02))!important}@media(max-width:820px){.improvement-intro,.improvement-admin-grid,.improvement-detail-fields{grid-template-columns:1fr}}
.communication-test-panel{margin-top:18px;border-color:#b8d8fb;background:#fbfdff}.communication-test-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.communication-test-panel .communication-send-summary{margin:4px 0 14px}.communication-test-panel #sendWhatsappTest{width:100%}@media(max-width:850px){.communication-test-grid{grid-template-columns:1fr}}

/* ST•ONE 4.36.0 — pré-visualização da Central de Comunicação */
.communication-preview-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:2px 0 4px}.communication-preview-panel{min-width:0}.communication-preview-title{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.communication-preview-title strong{font-size:11px;color:#172033}.communication-preview-title span{font-size:9px;color:#7b8795}.whatsapp-preview{background:#efeae2;min-height:230px;display:flex;align-items:flex-end;padding:18px}.whatsapp-bubble{position:relative;max-width:88%;margin-left:auto;background:#d9fdd3;color:#111b21;border-radius:8px 8px 2px 8px;padding:10px 12px 18px;font-size:12px;line-height:1.5;box-shadow:0 1px 1px rgba(0,0,0,.08)}.whatsapp-bubble:after{content:'17:30 ✓✓';position:absolute;right:8px;bottom:4px;color:#667781;font-size:8px}.email-preview__header strong{display:block;color:#fff;font-size:16px;letter-spacing:.04em}.email-preview__header small{display:block;margin-top:5px;color:#91a4b8;font-size:8px;letter-spacing:.08em}.email-preview__body>small{display:block;margin:-10px 0 16px;color:#6f7b88;font-size:9px}.email-preview__body>div{color:#354150}.communication-preview-panel.hidden{display:none}@media(max-width:850px){.communication-preview-grid{grid-template-columns:1fr}}

/* V4.37.04 — contexto do morador em múltiplos condomínios */
.resident-condo-switch{position:relative;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:9px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.resident-condo-switch:hover{background:rgba(255,255,255,.14)}
.resident-notification-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;font-weight:800;box-shadow:0 0 0 2px #111827}.resident-notification-badge.hidden{display:none}
.resident-condo-selector{max-width:980px;margin:22px auto 28px;padding:26px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.08)}
.resident-condo-selector__head h2{margin:5px 0 8px;font-size:26px;color:#0f172a}.resident-condo-selector__head p{margin:0;color:#64748b;line-height:1.55;max-width:760px}.resident-condo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:22px}
.resident-condo-card{position:relative;text-align:left;border:1px solid #dbe3ee;background:#f8fafc;border-radius:16px;padding:20px;cursor:pointer;transition:.18s ease;min-height:128px}.resident-condo-card:hover{transform:translateY(-2px);border-color:#60a5fa;background:#fff;box-shadow:0 10px 24px rgba(37,99,235,.10)}.resident-condo-card strong{display:block;color:#0f172a;font-size:18px;padding-right:42px}.resident-condo-card span{display:block;margin-top:7px;color:#475569;font-size:14px}.resident-condo-card .resident-notification-badge{position:absolute;top:14px;right:14px;display:flex}
@media(max-width:720px){.resident-condo-switch span{display:none}.resident-condo-selector{margin:14px 12px 22px;padding:20px}.resident-condo-selector__head h2{font-size:22px}}

.condo-logo-field{grid-column:span 2}.condo-logo-upload{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #dbe3ee;border-radius:14px;background:#f8fafc}.condo-logo-preview{width:82px;height:82px;flex:0 0 82px;border:1px dashed #b8c5d6;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#94a3b8;font-size:11px;font-weight:800;letter-spacing:.08em}.condo-logo-preview img{width:100%;height:100%;object-fit:contain;padding:7px;box-sizing:border-box}.field-optional{font-weight:500;color:#94a3b8}.condo-hero-branded{display:flex;align-items:center;gap:18px}.condo-logo-hero{width:82px;height:82px;border:1px solid #dbe3ee;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.06)}.condo-logo-hero img{width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box}.resident-condo-card__layout{display:flex;align-items:center;gap:14px}.resident-condo-logo{width:58px;height:58px;flex:0 0 58px;border:1px solid #dbe3ee;border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.resident-condo-logo img{width:100%;height:100%;object-fit:contain;padding:5px;box-sizing:border-box}.resident-condo-logo--empty{font-size:10px;font-weight:800;color:#94a3b8;letter-spacing:.06em}.dashboard-condo-logo{width:52px;height:52px;flex:0 0 52px;border:1px solid #dbe3ee;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.dashboard-condo-logo img{width:100%;height:100%;object-fit:contain;padding:5px;box-sizing:border-box}.condo-item__main{display:flex;align-items:center;gap:12px}@media(max-width:720px){.condo-logo-field{grid-column:span 1}.condo-hero-branded{align-items:flex-start}.condo-logo-hero{width:64px;height:64px;flex-basis:64px}.user-chip__engines{display:none}}

/* ST•ONE V4.37.04 - gestão de condomínio */
.condo-edit-workspace{margin:24px 0}.condo-edit-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.condo-edit-heading h2{margin:4px 0 6px;font-size:30px}.condo-edit-heading p{margin:0;color:var(--muted,#667085)}.condo-edit-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;align-items:start}.condo-edit-column{display:grid;gap:18px}.condo-edit-card{margin:0}.condo-logo-upload--large{display:grid;gap:16px}.condo-logo-preview--large{min-height:180px;width:100%;display:flex;align-items:center;justify-content:center;border:1px dashed #c9d8ea;border-radius:14px;background:#fff;padding:18px}.condo-logo-preview--large img{max-width:100%;max-height:170px;object-fit:contain}.condo-logo-actions{display:grid;gap:9px}.condo-logo-actions .btn{text-align:center;cursor:pointer}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.condo-logo-tip{display:flex;gap:10px;padding:13px 14px;border-radius:12px;background:#eef6ff;color:#34506f;font-size:13px}.condo-logo-tip strong{color:#0768d8}.condo-summary-inline{display:grid;grid-template-columns:1fr 1fr;gap:12px}.condo-summary-inline div{padding:12px;border:1px solid #e1e8f0;border-radius:10px}.condo-summary-inline span{display:block;font-size:12px;color:#667085;margin-bottom:4px}.condo-save-primary{width:100%;min-height:48px}.muted{color:#667085}.user-chip__version{font-size:inherit!important}@media(max-width:900px){.condo-edit-layout{grid-template-columns:1fr}.condo-edit-heading{flex-direction:column}.condo-summary-inline{grid-template-columns:1fr}}

.resident-action--requests{position:relative}.resident-action__tail{display:flex;align-items:center;gap:9px}.resident-action__tail .resident-notification-badge{box-shadow:0 0 0 2px #fff}.resident-action__arrow{color:#1677ff}.resident-request-card--new{border-color:#fecaca!important;background:#fffafa!important;box-shadow:0 0 0 1px rgba(239,68,68,.05)}.resident-request-card__title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.resident-request-new-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 7px;border-radius:999px;background:#ef4444;color:#fff;font-size:7px;font-weight:900;letter-spacing:.05em;white-space:nowrap}

/* V4.37.04 - badge de solicitacoes pendentes por condominio no Super Admin */
.condo-item{position:relative}.condo-item__main{position:relative}.condo-item__action{display:flex;align-items:center;justify-content:flex-end;gap:9px;white-space:nowrap}.super-condo-request-badge{display:inline;color:#dc2626;font-size:15px;line-height:1;font-weight:900;pointer-events:none}.condo-item__action:hover .super-condo-request-badge{color:#b91c1c}.resident-action__tail .resident-notification-badge,.resident-service-badge{box-shadow:0 0 0 2px #fff}

/* V4.37.04 — identificação das novidades do morador e navegação de Entregas */
.resident-condo-card__copy{min-width:0;flex:1}.resident-condo-card__updates{display:block!important;margin-top:9px!important;color:#b42318!important;font-size:10px!important;font-weight:800;line-height:1.5}.deliveries-intro{position:relative}.deliveries-back{position:absolute;top:14px;right:16px;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;text-decoration:none;font-size:11px;font-weight:800;box-shadow:0 4px 12px rgba(15,23,42,.04)}.deliveries-back:hover{border-color:#60a5fa;color:#1677ff}.deliveries-back.hidden{display:none}@media(max-width:680px){.deliveries-back{position:static;margin-left:auto;order:3;align-self:flex-start}.deliveries-intro{flex-wrap:wrap}.resident-condo-card__updates{font-size:9px!important}}

/* ST•ONE V4.37.04 — acabamento do cabeçalho Super Admin e contador */
.super-admin-head{display:flex;align-items:center;gap:11px;min-width:0}.super-admin-head__logo{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:0 0 auto;padding-right:11px;border-right:1px solid rgba(255,255,255,.14)}.super-admin-head__logo span{color:#fff;font-size:16px;font-weight:800;line-height:1;letter-spacing:-.02em}.super-admin-head__logo b{color:#1693ff}.super-admin-head__logo small{margin-top:4px;color:#42aaff;font-size:5px;font-weight:900;letter-spacing:.35em}.user-chip{min-width:0}.user-chip__engines{display:block!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important;line-height:1!important;margin-top:3px!important;font-size:8px!important}.super-condo-request-badge{color:#dc2626!important;font-weight:900!important;font-size:16px!important;line-height:1!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;min-width:0!important;height:auto!important}.condo-item__action:hover .super-condo-request-badge{color:#b91c1c!important}@media(max-width:900px){.super-admin-head__logo{display:none}.user-chip__engines{display:none!important}}

/* V4.37.04 — padronização do cabeçalho do Super Admin */
.super-admin-head__logo{display:none!important}
.super-admin-engine-line,.user-chip__engines.super-admin-engine-line{
  display:block!important;
  color:#7790ad!important;
  font-size:8px!important;
  font-weight:600!important;
  line-height:1!important;
  white-space:nowrap!important;
  max-width:none!important;
  margin:3px 10px 0 0!important;
  letter-spacing:0!important;
}
.topbar__right>.super-admin-engine-line{align-self:center;margin:0 12px!important}
@media(max-width:1100px){.super-admin-engine-line,.user-chip__engines.super-admin-engine-line{font-size:7px!important}}
@media(max-width:760px){.super-admin-engine-line,.user-chip__engines.super-admin-engine-line{display:none!important}}

/* V4.37.04 — pendências de Reserva de áreas em destaque */
#condoReservationsBadge{background:#ef4444!important;color:#fff!important;border-color:#ef4444!important;box-shadow:none!important}

/* ST•ONE Connect V4.37.04 */
.connect-hero{position:relative;overflow:hidden}.connect-hero:after{content:'CONNECT';position:absolute;right:24px;bottom:-14px;font-size:64px;font-weight:900;letter-spacing:.08em;opacity:.045}.connect-controller-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}.connect-controller-card{border:1px solid var(--border,#dbe4ee);border-radius:18px;padding:20px;background:#fff}.connect-controller-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.connect-controller-head h3{margin:4px 0 0}.connect-status{font-size:12px;font-weight:800;white-space:nowrap;padding:7px 10px;border-radius:999px;background:#f3f4f6}.connect-status.is-online{background:#e9f8ef;color:#13733b}.connect-status.is-offline{background:#f4f5f7;color:#6b7280}.connect-controller-data{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.connect-controller-data div{padding:11px 12px;background:#f7f9fc;border-radius:12px}.connect-controller-data span,.connect-feature-grid span{display:block;font-size:12px;color:#667085;margin-bottom:4px}.connect-controller-data strong{font-size:13px;word-break:break-word}.connect-controller-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.connect-controller-actions .btn{padding:9px 11px}.connect-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.connect-feature-grid>div{padding:16px;border:1px solid #e4e9f0;border-radius:14px;background:#fbfcfe}.connect-feature-grid strong{display:block;margin-bottom:6px}

/* ST•ONE Connect V4.37.04 */
.connect-controller-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.connect-controller-card--compact{padding:14px;border-radius:14px}.connect-controller-card--compact .connect-controller-head{margin-bottom:10px;gap:10px}.connect-controller-card--compact .connect-controller-head h3{font-size:17px}.connect-controller-model{display:block;margin-top:3px;font-size:11px;color:#667085}.connect-controller-summary{padding:9px 10px;background:#f7f9fc;border-radius:10px;margin-bottom:10px}.connect-controller-summary span{display:block;font-size:10px;color:#667085}.connect-controller-summary strong{font-size:11px}.connect-controller-actions--compact{margin:0}.connect-controller-actions--compact .btn{width:100%;text-align:center;padding:8px 10px}.connect-detail-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;margin-bottom:14px}.connect-identity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.connect-identity-grid>div{padding:12px;background:#f7f9fc;border-radius:12px}.connect-identity-grid span{display:block;font-size:11px;color:#667085;margin-bottom:4px}.connect-identity-grid strong{font-size:13px;word-break:break-word}.connect-logo-placeholder{padding:18px;border:1px dashed #cfd8e3;border-radius:14px;background:#fbfcfe}.connect-logo-placeholder p,.connect-logo-placeholder small{display:block;color:#667085}.connect-logo-placeholder .btn{margin:8px 0}@media(max-width:760px){.connect-detail-grid{grid-template-columns:1fr}.connect-identity-grid{grid-template-columns:1fr}.connect-controller-grid{grid-template-columns:1fr}}

/* STONE Connect V4.37.04 - logo individual */
.connect-logo-input{width:100%;margin:12px 0;padding:10px;border:1px solid #d8e0eb;border-radius:10px;background:#fff}.connect-logo-preview{display:flex;align-items:center;justify-content:center;min-height:120px;margin:10px 0;padding:12px;border:1px solid #dce4ef;border-radius:12px;background:#f7f9fc}.connect-logo-preview img{max-width:100%;max-height:180px;object-fit:contain}.connect-logo-status{margin-top:10px;font-size:12px;line-height:1.4;color:#526276}.connect-logo-placeholder .btn{width:100%;margin:8px 0}

/* ST•ONE Connect V4.37.04 — comunicação e diagnóstico */
.connect-communication-panel{margin-bottom:14px}.connect-communication-panel .panel__header{align-items:center}.connect-communication-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.connect-communication-stats>div{padding:13px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.connect-communication-stats span,.connect-communication-stats small{display:block;color:#667085}.connect-communication-stats span{font-size:10px;margin-bottom:5px}.connect-communication-stats strong{display:block;font-size:14px;margin-bottom:4px}.connect-communication-stats small{font-size:9px;line-height:1.35}.connect-diagnostic-status{padding:11px 13px;border-radius:10px;background:#eef6ff;color:#34506f;font-size:11px;margin-bottom:14px}.connect-command-head{display:flex;align-items:center;justify-content:space-between;margin:4px 0 8px}.connect-command-head .btn{min-height:32px;padding:6px 10px;font-size:10px}.connect-command-list{display:grid;gap:7px}.connect-command-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e5eaf0;border-radius:10px;background:#fff}.connect-command-row div{min-width:0}.connect-command-row strong,.connect-command-row span{display:block}.connect-command-row div strong{font-size:11px}.connect-command-row div span,.connect-command-row small{font-size:9px;color:#667085}.connect-command-status{padding:4px 7px;border-radius:999px;font-size:9px!important;font-weight:850}.status-concluido{background:#e9f8ef;color:#13733b}.status-pendente,.status-enviado{background:#fff7df;color:#8a5b00}.status-erro{background:#fff0f0;color:#b42318}@media(max-width:800px){.connect-communication-stats{grid-template-columns:1fr 1fr}.connect-command-row{grid-template-columns:1fr auto}.connect-command-row>small{grid-column:1/-1}}@media(max-width:520px){.connect-communication-stats{grid-template-columns:1fr}.connect-communication-panel .panel__header{align-items:flex-start}.connect-communication-panel .panel__header .btn{width:100%;margin-top:10px}}

/* ST•ONE Connect V4.37.04 - abertura remota */
.connect-open-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 12px}.connect-open-info>div{background:#f6f8fb;border:1px solid #edf1f5;border-radius:12px;padding:12px}.connect-open-info span{display:block;font-size:11px;color:#6b7890;margin-bottom:4px}.connect-open-info strong{font-size:13px}.connect-controller-actions--compact{display:grid!important;grid-template-columns:.72fr 1.28fr;gap:7px}.connect-controller-actions--compact .btn{min-width:0;padding-left:8px;padding-right:8px}.connect-open-quick{font-weight:700}@media(max-width:720px){.connect-open-info{grid-template-columns:1fr}.connect-controller-actions--compact{grid-template-columns:1fr 1fr}}


/* ST•ONE Connect V4.37.04 — ação visual e Eventos/Monitor */
.connect-open-quick.is-success,#openDoor.is-success,#enableMonitor.is-success{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}.connect-open-quick.is-error,#openDoor.is-error{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}.connect-event-actions{display:flex;gap:7px;flex-wrap:wrap}.connect-event-list{display:grid;gap:8px}.connect-event-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;border:1px solid #e5eaf0;border-radius:11px;background:#fff}.connect-event-row>div:first-child{min-width:0}.connect-event-row strong,.connect-event-row span{display:block}.connect-event-row strong{font-size:12px}.connect-event-row span{font-size:9px;color:#667085;margin-top:3px}.connect-event-row.is-granted{border-left:4px solid #16a34a}.connect-event-row.is-denied{border-left:4px solid #dc2626}.connect-event-meta{display:flex;gap:12px;text-align:right;flex:0 0 auto}.connect-events-panel{margin-bottom:14px}@media(max-width:680px){.connect-events-panel .panel__header{align-items:flex-start}.connect-event-actions{width:100%;margin-top:8px}.connect-event-actions .btn{flex:1}.connect-event-row{align-items:flex-start;flex-direction:column}.connect-event-meta{text-align:left}}

/* ST•ONE Connect V4.37.04 — cadastro de controladores pelo painel */
.connect-register-panel{margin-bottom:14px;border-color:#b8d8fb;background:#fbfdff}.connect-register-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.connect-register-form .field span{display:block;margin-bottom:7px;font-size:11px;font-weight:800;color:#344054}.connect-register-form .field small{font-weight:500;color:#667085}.connect-register-form input,.connect-register-form select{width:100%;min-height:44px;padding:10px 12px;border:1px solid #d8e0eb;border-radius:10px;background:#fff}.connect-push-box{grid-column:1/-1;padding:14px 16px;border:1px solid #cfe1f5;border-radius:12px;background:#eef6ff}.connect-push-box span,.connect-push-box small{display:block;color:#526276}.connect-push-box span{font-size:10px;font-weight:800;margin-bottom:5px}.connect-push-box strong{display:block;font-size:11px;word-break:break-all;color:#174a7c;margin-bottom:5px}.connect-push-box small{font-size:9px;line-height:1.45}.connect-register-form>.connect-logo-status,.connect-register-form>.btn{grid-column:1/-1}.connect-register-form>.btn{width:100%}@media(max-width:700px){.connect-register-form{grid-template-columns:1fr}.connect-register-form>*{grid-column:1!important}}
/* ST•ONE V4.37.04 — Equipe e Administração */
.stone-team-list{display:grid;gap:12px}.stone-team-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border:1px solid var(--border,#dfe5ec);border-radius:16px;background:#fff}.stone-team-card h3{margin:4px 0}.stone-team-card p,.stone-team-card small{margin:0;color:#667085}.stone-team-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stone-team-form{display:grid;gap:18px}.stone-team-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.stone-team-photo,.stone-check{grid-column:1/-1}.stone-check{display:flex;gap:10px;align-items:flex-start}.stone-team-areas-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.stone-team-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stone-area-check{display:flex;gap:10px;align-items:center;padding:13px;border:1px solid #dfe5ec;border-radius:12px;background:#f8fafc}.stone-area-check span{display:flex;flex-direction:column}.stone-area-check small{color:#667085}@media(max-width:760px){.stone-team-card{align-items:flex-start;flex-direction:column}.stone-team-fields,.stone-team-areas{grid-template-columns:1fr}}


/* V4.37.04 - Identificacao visual suave das acoes do condominio */
.condo-management-panel .quick-action{transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}
.condo-management-panel .quick-action:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.045)}
.condo-management-panel .quick-action:nth-child(1){background:#f5f8fc;border-color:#dce5f0}
.condo-management-panel .quick-action:nth-child(2){background:#f4f8f6;border-color:#d9e7df}
.condo-management-panel .quick-action:nth-child(3){background:#faf6f7;border-color:#eadde1}
.condo-management-panel .quick-action:nth-child(4){background:#faf7f3;border-color:#eadfd3}
.condo-management-panel .quick-action:nth-child(5){background:#f7f5fa;border-color:#e2ddec}
.condo-management-panel .quick-action:nth-child(6){background:#f3f8f8;border-color:#d7e6e5}
.condo-management-panel .quick-action:nth-child(7){background:#faf8f1;border-color:#ebe3ca}
.condo-management-panel .quick-action:nth-child(8){background:#f7f5fa;border-color:#e1dced}
.condo-management-panel .quick-action:nth-child(9){background:#faf5f5;border-color:#eadada}
.condo-management-panel .quick-action:nth-child(10){background:#f3f7fb;border-color:#d5e2ee}
.condo-management-panel .quick-action:nth-child(11){background:#f3f8f5;border-color:#d5e6dc}
.condo-management-panel .quick-action:nth-child(12){background:#f5f6f8;border-color:#dce0e7}
.condo-management-panel .quick-action:nth-child(13){background:#f7f5fa;border-color:#e2dced}
.condo-management-panel .quick-action:nth-child(14){background:#f8f5f2;border-color:#e6ddd5}
.condo-management-panel .quick-action:nth-child(15){background:#f4f7fa;border-color:#d8e1ea}
.condo-management-panel .quick-action:nth-child(16){background:#f4f8fb;border-color:#d7e3ee}
.condo-management-panel .quick-action:nth-child(17){background:#faf5f8;border-color:#eadce5}
.condo-management-panel .quick-action:hover{filter:saturate(1.06)}

.stone-team-person{display:flex;align-items:center;gap:14px;min-width:0}.stone-team-avatar{width:48px;height:48px;min-width:48px;border-radius:50%;object-fit:cover;border:1px solid #dfe5ec;background:#eef2f6}.stone-team-avatar--empty{display:flex;align-items:center;justify-content:center;font-weight:700;color:#667085;font-size:18px}

.manager-preview-actions{margin:18px 0 4px;padding:16px;border:1px solid rgba(25,85,130,.16);border-radius:14px;background:rgba(230,240,247,.55)}
.manager-preview-actions .helper{margin:8px 0 0}.manager-preview-banner{max-width:1180px;margin:18px auto 0;padding:12px 18px;border-radius:14px;background:#eef4f7;border:1px solid #cddce5;display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;color:#314d5e}.manager-preview-banner strong{color:#173d55}.manager-preview-banner span{font-size:.9rem}

/* V4.37.04 · Painel exclusivo iDFace Max / Portaria */
.portaria-hero{background:linear-gradient(135deg,#f7fbff,#eef6ff);border:1px solid #d9e8f7}.portaria-hero-line{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.portaria-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.portaria-tabs a{font-size:12px;font-weight:800;text-decoration:none;color:#315b7d;background:#fff;border:1px solid #d9e6f2;padding:8px 11px;border-radius:999px}.portaria-summary-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-bottom:14px}.portaria-badge,.portaria-capability{font-size:10px;font-weight:900;letter-spacing:.08em;color:#1e5f91;background:#e9f4ff;border:1px solid #cfe5f8;padding:7px 9px;border-radius:999px}.portaria-actions{display:flex;gap:9px;flex-wrap:wrap}.portaria-section{scroll-margin-top:18px}.portaria-setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.portaria-setting{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #e1e8f0;border-radius:14px;background:#fbfcfe}.portaria-setting--wide{grid-column:1/-1}.portaria-setting strong{display:block;font-size:14px}.portaria-setting span{display:block;font-size:11px;color:#667085;margin-top:4px}.portaria-setting input[type=file]{max-width:220px}.portaria-switch input{display:none}.portaria-switch span{display:block;width:44px;height:24px;border-radius:999px;background:#d7dde5;position:relative}.portaria-switch span:after{content:'';position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px}.portaria-chips{display:flex;gap:6px;flex-wrap:wrap}.portaria-chips span{padding:6px 9px;border-radius:999px;background:#eef2f6;color:#64748b;margin:0}.portaria-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.portaria-api-note{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff8e8;border:1px solid #f1dfb5;color:#755c1e;font-size:12px;line-height:1.5}.portaria-setting button:disabled,.portaria-form-grid input:disabled,.portaria-form-grid select:disabled{opacity:.7}@media(max-width:900px){.portaria-summary-grid{grid-template-columns:1fr}.portaria-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.portaria-setting-grid,.portaria-form-grid{grid-template-columns:1fr}.portaria-setting--wide{grid-column:auto}.portaria-setting{align-items:flex-start;flex-direction:column}}

/* ST•ONE V4.37.04 — iDFace Max: cabeçalho refinado e navegação do painel */
.portaria-header{margin:0 0 18px;padding:8px 2px 0;background:transparent;border:0;box-shadow:none}
.portaria-heading{padding:0 2px 14px;border-bottom:1px solid #e6edf5}
.portaria-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:7px}
.portaria-title-row h1{margin:0;color:#101828;font-size:32px;line-height:1.08;letter-spacing:-.025em}
.portaria-title-row p{margin:7px 0 0;color:#667085;font-size:13px}
.portaria-header .eyebrow{color:#1677ff;font-size:10px;font-weight:900;letter-spacing:.13em}
.portaria-header .connect-status{margin-top:2px;white-space:nowrap;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;background:#f2f4f7;color:#667085}
.portaria-header .connect-status.is-online{background:#eaf8ef;color:#087a36}
.portaria-header .connect-status.is-offline{background:#fff0f0;color:#b42318}
.portaria-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.portaria-tabs a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid #dce6f1;background:#fff;color:#315b7d;font-size:11px;font-weight:850;text-decoration:none;box-shadow:0 1px 2px rgba(16,24,40,.025);transition:.15s ease}
.portaria-tabs a:hover{border-color:#a9c9eb;background:#f7fbff;color:#075fae}
.portaria-tabs a.is-active{background:#1478f2;border-color:#1478f2;color:#fff;box-shadow:0 4px 12px rgba(20,120,242,.16)}
.portaria-summary-grid{align-items:stretch}
.portaria-summary-grid>.panel{height:100%;margin-top:0}
.portaria-actions .btn{min-height:38px}
.portaria-setting{background:#fff}
.portaria-section{border-color:#e1e8f0;box-shadow:0 1px 3px rgba(16,24,40,.035)}
@media(max-width:600px){.portaria-title-row h1{font-size:27px}.portaria-title-row{gap:10px}.portaria-header .connect-status{font-size:10px;padding:6px 9px}.portaria-tabs{gap:6px}.portaria-tabs a{padding:0 11px;min-height:34px}}

/* ST•ONE V4.37.04 — Portaria iDFace Max · layout premium */
body:has(.portaria-header){background:#f7f9fc}
.portaria-topbar{background:linear-gradient(90deg,#0b1627,#10243a)!important;box-shadow:0 1px 0 rgba(255,255,255,.04)}
.portaria-topbar .topbar__inner{min-height:64px;width:min(1440px,calc(100% - 48px))}
.portaria-topbar__brand{display:flex;align-items:center;gap:22px}.portaria-back{font-size:11px;font-weight:700;color:#9fc8ff}.portaria-topbar .brand-mark{font-size:23px;letter-spacing:-1.2px}.portaria-topbar .brand-product{font-size:7px;letter-spacing:3px;color:#7ec8ff}
body:has(.portaria-header) .dashboard{width:min(1440px,calc(100% - 48px));margin:24px auto 56px}
.portaria-header{margin:0 0 20px;padding:6px 4px 0}.portaria-heading{border:0;padding:0}.portaria-header .eyebrow{font-size:10px;letter-spacing:.14em}.portaria-title-row{align-items:center;margin-top:8px}.portaria-title-row h1{font-family:Manrope,Arial,sans-serif;font-size:38px;letter-spacing:-1.5px}.portaria-title-row p{font-size:14px}.portaria-header .connect-status{padding:9px 14px;font-size:11px}
.portaria-tabs{margin-top:18px}.portaria-tabs a{min-height:40px;padding:0 16px;font-size:11px;color:#294864;border-color:#d8e2ed;box-shadow:0 2px 5px rgba(15,23,42,.025)}.portaria-tabs a.is-active{background:linear-gradient(135deg,#126be5,#168cff);box-shadow:0 6px 16px rgba(20,120,242,.18)}
body:has(.portaria-header) .panel{border:1px solid #e0e7ef;border-radius:18px;box-shadow:0 4px 16px rgba(15,23,42,.035);padding:22px;background:#fff}
.portaria-summary-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.portaria-summary-grid .panel__header h3,.portaria-section .panel__header h3{font-family:Manrope,Arial,sans-serif;font-size:17px}.portaria-summary-grid .panel__header span,.portaria-section .panel__header span{font-size:11px}
.connect-identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.connect-identity-grid>div{padding:14px;border-radius:12px;background:#f7f9fc;border:1px solid #f0f3f7}.connect-identity-grid span{display:block;font-size:9px;color:#65758b;margin-bottom:5px}.connect-identity-grid strong{font-size:12px;color:#111827}
.portaria-connect-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.portaria-connect-cards>div{min-height:74px;padding:13px;border-radius:12px;background:#f7f9fc;border:1px solid #eef2f6;display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-content:center}.portaria-connect-cards b{grid-row:1/3;color:#1478f2;font-size:18px;align-self:center}.portaria-connect-cards .dot-ok{color:#10a95b}.portaria-connect-cards span{font-size:11px;font-weight:800}.portaria-connect-cards small{font-size:9px;color:#718096;margin-top:3px}.portaria-connect-panel .portaria-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.portaria-connect-panel .btn{width:100%;min-height:38px}.portaria-connect-panel #refreshInfo{grid-column:1/-1}.btn-soft{border:0;border-radius:10px;background:#eaf4ff;color:#0870d8;font-weight:800}.connect-diagnostic-status{margin-top:8px;padding:8px 10px;border-radius:9px;background:#f6f8fb;color:#6b7280;font-size:9px}
.portaria-section{margin-bottom:16px;scroll-margin-top:82px}.portaria-setting-grid{gap:10px}.portaria-setting{border-color:#e2e8f0;border-radius:13px;background:#fbfcfe;padding:14px}.portaria-setting strong{font-size:12px}.portaria-setting span{font-size:9px}.portaria-chips span{font-size:9px;padding:6px 10px}.portaria-form-grid .field{margin:0}.portaria-form-grid .field span{font-size:9px;font-weight:800;color:#52647a;margin-bottom:6px}.portaria-form-grid input,.portaria-form-grid select{height:42px;border-radius:10px;background:#fbfcfe}.portaria-api-note{font-size:10px;border-radius:10px}.connect-open-info>div{background:#f7f9fc;border-radius:12px}.connect-event-row{border-radius:11px}
.stone-platform-footer{width:min(1440px,calc(100% - 48px));margin-left:auto;margin-right:auto}
@media(max-width:900px){body:has(.portaria-header) .dashboard,.portaria-topbar .topbar__inner,.stone-platform-footer{width:min(100% - 28px,1440px)}.portaria-summary-grid{grid-template-columns:1fr}.portaria-connect-cards{grid-template-columns:1fr 1fr}.portaria-title-row h1{font-size:32px}}
@media(max-width:600px){.portaria-topbar__brand{gap:10px}.portaria-back{display:none}.portaria-connect-cards{grid-template-columns:1fr}.portaria-connect-panel .portaria-actions{grid-template-columns:1fr}.portaria-connect-panel #refreshInfo{grid-column:auto}.connect-identity-grid{grid-template-columns:1fr}.portaria-title-row h1{font-size:29px}}

/* V4.37.04 - Eventos enriquecidos iDFace Max */
.connect-event-person{display:flex;align-items:center;gap:11px;min-width:0}.connect-event-person>div{min-width:0}.connect-event-person small{display:block;margin-top:3px;font-size:9px;color:#667085}.connect-event-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:0 0 38px;border:2px solid #e8f1ff;background:#f3f7fc}.connect-event-avatar--empty{display:grid!important;place-items:center;font-size:15px;color:#3975bd}.connect-event-row.is-granted .connect-event-avatar{border-color:#bbf7d0}.connect-event-row.is-denied .connect-event-avatar{border-color:#fecaca}.connect-event-meta span:first-child{font-weight:700;color:#344054}@media(max-width:680px){.connect-event-person{width:100%}.connect-event-meta{padding-left:49px}}

/* V4.37.04 - Portaria: tela + histórico sob demanda */
.portaria-switch input:checked+span{background:#1478f2}.portaria-switch input:checked+span:after{left:23px}.portaria-switch span:after{transition:left .18s ease}.portaria-screen-actions,.portaria-event-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.portaria-screen-actions .btn{min-height:36px}.portaria-api-note--info{background:#f2f8ff;border-color:#d7e9fb;color:#315b7d}.portaria-history{margin:0 0 14px;padding:14px;border:1px solid #dce7f2;border-radius:13px;background:#f8fbff}.portaria-history-grid{display:grid;grid-template-columns:1fr 1fr 160px auto;gap:10px;align-items:end}.portaria-history-grid .field{margin:0}.portaria-history-grid input,.portaria-history-grid select{height:40px;border-radius:9px;background:#fff}.portaria-history-grid .btn{height:40px}.portaria-history .connect-diagnostic-status{margin-top:9px}.portaria-section#eventos .connect-event-list{max-height:none}@media(max-width:900px){.portaria-history-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.portaria-event-actions{width:100%;margin-top:8px}.portaria-event-actions .btn{flex:1}.portaria-history-grid{grid-template-columns:1fr}}

/* V4.37.04 - versão no cabeçalho + propaganda iDFace Max (sem alterar o grid do painel) */
.stone-header-version{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 10px;border:1px solid #d8e4f3;border-radius:999px;background:#f7faff;color:#3975bd;font-size:11px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.portaria-confirmed{display:block;margin-top:5px;color:#667085;font-size:10px;font-weight:600}.portaria-overlay-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.portaria-overlay-options label{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #e1e8f0;border-radius:999px;background:#fff;color:#344054;font-size:11px;font-weight:700;cursor:pointer}.portaria-overlay-options input{accent-color:#3975bd}.portaria-setting--wide .portaria-screen-actions{margin-top:14px}.portaria-setting--wide .connect-diagnostic-status{margin-top:10px}@media(max-width:680px){.stone-header-version{height:25px;padding:0 8px;font-size:10px}.portaria-overlay-options{gap:6px}.portaria-overlay-options label{padding:6px 8px}}

/* V4.37.04 — cabeçalho Portaria alinhado ao padrão ST•ONE */
body:has(.portaria-header) .topbar{background:#0e1117!important;box-shadow:none}
body:has(.portaria-header) .topbar__inner{width:min(1180px,calc(100% - 32px));min-height:70px}
body:has(.portaria-header) .topbar .brand-mark{font-size:25px}
body:has(.portaria-header) .topbar .brand-product{font-size:8px;margin-top:4px}
body:has(.portaria-header) .topbar__right{gap:12px}
body:has(.portaria-header) .user-chip__version{display:block;color:#aab2be;font-size:9px;font-weight:800}
body:has(.portaria-header) .user-chip__engines{display:block}

/* V4.37.04 - Upload de vídeo do modo propaganda */
.portaria-video-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.portaria-video-upload input[type=file]{flex:1;min-width:240px}.portaria-video-info{font-size:11px;color:#667085;margin-top:7px}.portaria-video-progress{height:7px;background:#e9eef5;border-radius:999px;overflow:hidden;margin-top:10px}.portaria-video-progress>div{height:100%;width:0;background:currentColor;color:#3975bd;border-radius:999px;transition:width .25s ease}

/* V4.37.04 - confirmação operacional do vídeo */
.portaria-installed-video{margin-top:12px;padding:12px 14px;border:1px solid #e4eaf2;border-radius:12px;background:#f8fafc;display:grid;gap:4px}.portaria-installed-video>strong{font-size:12px;color:#182230}.portaria-installed-video>span{font-size:12px;font-weight:700;color:#344054}.portaria-installed-video>small{font-size:10px;color:#667085}.portaria-video-checks{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}.portaria-video-checks span{font-size:9px;font-weight:700;padding:5px 8px;border-radius:999px;background:#eef2f6;color:#475467}.portaria-video-checks span.is-ok{background:#ecfdf3;color:#027a48}
/* V4.37.04 — ação rápida de convite do responsável */
.unit-directory-row{display:flex;align-items:center;gap:12px}.unit-directory-mainlink{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;flex:1;min-width:0;color:inherit;text-decoration:none}.unit-send-invite{flex:0 0 auto;white-space:nowrap;margin-right:14px}@media(max-width:760px){.unit-directory-row{align-items:stretch;flex-direction:column}.unit-directory-mainlink{grid-template-columns:auto 1fr}.unit-directory-mainlink .directory-meta{grid-column:1/-1}.unit-send-invite{margin:0 14px 14px}}

/* ST•ONE Connect status por morador — V4.37.04 */
.resident-connect-status{margin-top:7px}.connect-sync{border:0;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;cursor:pointer}.connect-sync--ok{background:#e8f7ef;color:#167448}.connect-sync--pending{background:#fff6dd;color:#8a6410}.connect-sync--error{background:#fdecec;color:#a52a2a}.connect-sync--off{background:#eef2f6;color:#5e6a76}.connect-sync-details{margin-top:8px;border:1px solid #e3e9ef;border-radius:10px;background:#fff;padding:8px;min-width:270px}.connect-sync-details>div{padding:6px 4px;border-bottom:1px solid #edf1f4;display:grid;gap:2px}.connect-sync-details>div:last-child{border-bottom:0}.connect-sync-details strong{font-size:12px}.connect-sync-details span,.connect-sync-details small{font-size:11px;color:#65717d}.connect-sync-details small{color:#a52a2a}

/* ST•ONE contextual help v1 */
.stone-help-button{position:fixed;right:20px;bottom:20px;z-index:9000;width:46px;height:46px;border-radius:50%;border:0;background:#0b5cab;color:#fff;font-size:22px;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.2);cursor:pointer}.stone-help-button:hover{transform:translateY(-1px)}
.stone-help-backdrop{position:fixed;inset:0;z-index:10000;background:rgba(10,24,40,.48);display:flex;align-items:center;justify-content:center;padding:18px}.stone-help-card{width:min(520px,100%);background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.28)}.stone-help-card h2{margin:0 0 10px;font-size:22px;color:#15324d}.stone-help-card p{margin:0;color:#526779;line-height:1.55}.stone-help-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:22px}.stone-help-actions button{border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700}.stone-help-ok{border:0;background:#0b5cab;color:#fff}.stone-help-hide{border:1px solid #cdd9e3;background:#fff;color:#334e68}.stone-help-reset{border:0;background:transparent;color:#0b5cab;margin-right:auto}@media(max-width:600px){.stone-help-button{right:14px;bottom:14px}.stone-help-card{padding:20px}.stone-help-actions button{width:100%}.stone-help-reset{margin-right:0}}

/* V4.37.04 — histórico de notificações compacto por condomínio */
.email-list{display:grid;gap:8px}.email-card{padding:12px 16px!important;border-radius:14px!important}.email-card__top{gap:10px;margin-bottom:8px!important}.email-card__top h3{font-size:16px!important;margin:2px 0 0!important}.email-card__top .eyebrow{font-size:9px!important}.email-card__grid{display:grid;grid-template-columns:1.1fr 1fr .85fr;gap:8px!important}.email-card__grid>div{padding:8px 10px!important;min-height:auto!important}.email-card__grid span{font-size:10px!important}.email-card__grid strong{font-size:13px!important;line-height:1.2!important}.email-card__grid small{font-size:11px!important;line-height:1.2!important}.email-card .status-pill{font-size:10px!important;padding:5px 8px!important}.email-card__note{margin-top:7px!important;padding:7px 10px!important;font-size:11px!important}@media(max-width:760px){.email-card__grid{grid-template-columns:1fr}.email-card{padding:11px!important}}

/* ST•ONE V4.37.04 — visitantes na ficha da unidade e gestão rápida */
.visitor-unit-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}.visitor-unit-summary>div{padding:12px 14px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}.visitor-unit-summary span{display:block;color:#718096;font-size:9px;font-weight:700}.visitor-unit-summary strong{display:block;margin-top:4px;color:#172033;font-size:20px}.unit-visitor-row .visitor-row-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:6px}.visitor-kind-pill{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef6ff;color:#126fd4;font-size:8px;font-weight:800}.visitor-kind-pill--temp{background:#f3efff;color:#6941c6}.unit-visitor-row .detail-row__actions{flex-wrap:wrap}.resident-visitor-row__actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.resident-visitor-row__actions .btn{min-height:30px;padding:5px 9px;font-size:8px}.resident-qr-modal .modal__card{width:min(92vw,520px)}.resident-qr-modal__code{width:190px;height:190px;margin:14px auto;padding:10px;display:grid;place-items:center;border:1px solid #dce7f2;border-radius:12px;background:#fff}.resident-qr-modal__window{text-align:center;color:#667085;font-size:10px;line-height:1.5}.resident-qr-modal__token{margin-top:10px;padding:8px;border:1px solid #e4eaf0;border-radius:8px;background:#f8fafc;font:9px monospace;word-break:break-all}@media(max-width:700px){.visitor-unit-summary{grid-template-columns:1fr}.unit-visitors-section .panel__header{align-items:flex-start}.unit-visitors-section .detail-header-actions{width:100%}.unit-visitors-section .detail-header-actions .btn{width:100%}}

/* ST•ONE V4.37.04 - convites expirados */
.expired-invite-list{display:grid;gap:8px}.expired-invite-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #e5eaf0;border-radius:12px;background:#fff}.expired-invite-row__main{min-width:0}.expired-invite-row__main strong,.expired-invite-row__main span,.expired-invite-row__main small{display:block}.expired-invite-row__main strong{font-size:13px;color:#172033}.expired-invite-row__main span{margin-top:3px;font-size:10px;font-weight:750;color:#526276}.expired-invite-row__main small{margin-top:3px;font-size:9px;color:#7b8491;word-break:break-word}.expired-invite-resend{flex:0 0 auto;white-space:nowrap}@media(max-width:700px){.expired-invite-row{align-items:flex-start;flex-direction:column}.expired-invite-resend{width:100%}}


/* ST•ONE V4.37.04 — cabeçalho padronizado do Super Admin */
.user-chip__engines,.super-admin-engine-line{display:none!important}
.topbar--super-admin .topbar__inner{min-height:76px;padding:6px 0}
.topbar--super-admin .topbar__right{display:flex;align-items:center;gap:16px}
.topbar--super-admin .user-chip{min-width:150px;text-align:right;line-height:1.15}
.topbar--super-admin .user-chip strong{display:block;color:#fff;font-size:12px;font-weight:800;letter-spacing:-.01em}
.topbar--super-admin .user-chip span{display:block;margin-top:3px;color:#aab7c6;font-size:9px;font-weight:600}
.topbar--super-admin .user-chip__version{display:block!important;margin-top:5px;color:#67b6ff!important;font-size:10px!important;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.topbar--super-admin .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:10px;font-weight:800;white-space:nowrap}
.topbar--super-admin .brand-mark{font-size:25px;line-height:1}
.topbar--super-admin .brand-product{margin-top:5px;letter-spacing:.30em;color:#62b2ff;font-size:8px;font-weight:900}
@media(max-width:680px){.topbar--super-admin .topbar__inner{min-height:68px;gap:10px}.topbar--super-admin .topbar__right{gap:8px}.topbar--super-admin .user-chip{min-width:0}.topbar--super-admin .user-chip span{display:none}.topbar--super-admin .user-chip__version{font-size:8px!important}.topbar--super-admin .btn{min-height:38px;padding:0 12px;font-size:10px}}


/* ST•ONE V4.37.04 — Registro facial e fotos de visitantes frequentes */
.visitor-thumb{flex:0 0 auto}
.unit-visitor-row .resident-summary{align-items:center}
.facial-registry-page .connect-hero p{max-width:780px}
.facial-summary{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:12px;margin:18px 0 24px}
.facial-block-card{appearance:none;border:1px solid #dfe5ee;background:#fff;border-radius:14px;padding:15px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px;box-shadow:0 7px 22px rgba(15,23,42,.05);transition:.18s ease}
.facial-block-card:hover,.facial-block-card.is-active{border-color:#2575fc;box-shadow:0 10px 28px rgba(37,117,252,.12);transform:translateY(-1px)}
.facial-block-card span{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#607085}.facial-block-card strong{font-size:16px;color:#102039}.facial-block-card small{color:#718096;line-height:1.45}
.facial-section-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:24px 0 12px}.facial-section-title>div{display:flex;flex-direction:column;gap:3px}.facial-section-title strong{font-size:16px;color:#102039}.facial-section-title span{font-size:13px;color:#718096}.facial-section-title--warning{padding:14px 16px;border-radius:12px;background:#fff8f0;border:1px solid #ffe1bd}
.facial-pending-list{display:grid;gap:12px}.facial-sample-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px}
.facial-capture-card{border:1px solid #e3e8ef;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.05)}.facial-capture-card--pending{display:grid;grid-template-columns:118px 1fr;border-color:#ffd9bd;background:#fffdfb}
.facial-capture-photo{height:150px;background:#eef2f7;display:flex;align-items:center;justify-content:center;color:#8c98a8;font-size:28px;overflow:hidden}.facial-capture-photo img{width:100%;height:100%;object-fit:cover}.facial-capture-card--pending .facial-capture-photo{height:100%;min-height:128px}
.facial-capture-copy{padding:14px;display:flex;flex-direction:column;gap:6px}.facial-capture-copy strong{font-size:15px;color:#13233a}.facial-capture-copy small{color:#6f7c8d;line-height:1.45}.facial-capture-copy .btn{margin-top:7px;align-self:flex-start}
.facial-resident-results{display:grid;gap:8px;max-height:320px;overflow:auto;margin-top:12px}.facial-resident-results button{border:1px solid #e2e7ee;background:#fff;border-radius:10px;padding:12px 14px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px}.facial-resident-results button:hover{border-color:#2575fc;background:#f7faff}.facial-resident-results strong{color:#13233a}.facial-resident-results span{font-size:12px;color:#748196}
@media(max-width:1100px){.facial-summary{grid-template-columns:repeat(4,1fr)}.facial-sample-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.facial-summary{grid-template-columns:repeat(2,1fr)}.facial-sample-grid{grid-template-columns:repeat(2,1fr)}.facial-capture-card--pending{grid-template-columns:92px 1fr}}
@media(max-width:480px){.facial-summary,.facial-sample-grid{grid-template-columns:1fr}.facial-capture-card--pending{grid-template-columns:1fr}.facial-capture-card--pending .facial-capture-photo{height:190px}}

/* Registro facial V4.37.04 — duas últimas imagens por morador */
.facial-resident-access-list{display:grid;gap:12px}
.facial-resident-access-card{display:grid;grid-template-columns:minmax(210px,1fr) minmax(340px,1.7fr);gap:18px;align-items:center;padding:16px;border:1px solid #e3e8ef;background:#fff;border-radius:14px;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.facial-resident-access-card__identity{display:flex;flex-direction:column;gap:5px}
.facial-resident-access-card__identity strong{font-size:15px;color:#13233a}
.facial-resident-access-card__identity small{color:#738094;font-size:12px}
.facial-resident-access-card__shots{display:grid;grid-template-columns:repeat(2,minmax(135px,1fr));gap:12px}
.facial-access-shot{display:grid;grid-template-columns:86px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:8px;border:1px solid #e5eaf0;border-radius:12px;background:#fbfcfe}
.facial-access-shot__photo{grid-row:1/3;width:86px;height:86px;border-radius:10px;background:#edf1f6;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#8995a4;font-size:11px;font-weight:700;text-align:center}
.facial-access-shot__photo img{width:100%;height:100%;object-fit:cover}
.facial-access-shot small{align-self:end;color:#7a8797;font-size:11px}
.facial-access-shot strong{align-self:start;color:#26364d;font-size:12px;line-height:1.4}
.facial-access-shot--empty{opacity:.72}
@media(max-width:900px){.facial-resident-access-card{grid-template-columns:1fr}.facial-resident-access-card__shots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.facial-resident-access-card__shots{grid-template-columns:1fr}.facial-access-shot{grid-template-columns:78px 1fr}.facial-access-shot__photo{width:78px;height:78px}}

/* Registro facial V4.37.04 — gerenciamento individual de pendências */
.facial-pending-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.btn-danger{background:#b42318;color:#fff;border:1px solid #b42318}
.btn-danger:hover{background:#912018;border-color:#912018}
.btn-danger:disabled{opacity:.55;cursor:not-allowed}

/* Registro Facial V4.37.04 — zoom de imagem + seleção múltipla */
.facial-header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.facial-capture-card--pending{position:relative}
.facial-pending-select{position:absolute;z-index:3;top:9px;left:9px;display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.95);border:1px solid #dce3ec;color:#344054;font-size:10px;font-weight:800;box-shadow:0 4px 12px rgba(16,24,40,.10)}
.facial-pending-select input{width:16px;height:16px;margin:0}
.facial-photo-clickable img{cursor:zoom-in;transition:transform .16s ease,filter .16s ease}
.facial-photo-clickable img:hover{transform:scale(1.025);filter:brightness(.97)}
.facial-photo-clickable img:focus{outline:3px solid rgba(18,111,212,.25);outline-offset:-3px}
.facial-image-modal__card{width:min(96vw,980px);padding:14px;background:#0b1118;border-radius:18px;overflow:visible}
.facial-image-preview{display:block;width:100%;max-height:78vh;object-fit:contain;border-radius:12px;background:#05080c}
.facial-image-caption{padding:11px 6px 2px;color:#eef4fb;font-size:12px;font-weight:700;text-align:center}
@media(max-width:640px){.facial-header-actions{width:100%}.facial-header-actions .btn{flex:1}.facial-pending-select{top:7px;left:7px}.facial-image-modal__card{padding:10px}}

/* V4.37.04 — moradores removidos preservados para o Super Admin */
.directory-toolbar__actions{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.resident-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.resident-directory-row--inactive,.detail-row--inactive{opacity:.78;background:rgba(127,127,127,.06)}.resident-directory-row--inactive strong,.detail-row--inactive strong{color:var(--text-muted,#667085)}
@media(max-width:700px){.directory-toolbar__actions{width:100%;align-items:stretch}.resident-admin-actions{width:100%}}

/* V4.37.04 — classificação visual das pendências faciais */
.facial-classification{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.01em;margin:3px 0}
.facial-classification--face{background:rgba(180,35,24,.10);color:#b42318;border:1px solid rgba(180,35,24,.22)}
.facial-classification--motion{background:rgba(71,84,103,.08);color:#475467;border:1px solid rgba(71,84,103,.18)}
.facial-capture-card--priority{outline:2px solid rgba(180,35,24,.12);outline-offset:-2px}

/* ST•ONE V4.37.04 — visitante frequente externo com foto e edição */
.visitor-card--with-photo{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center}
.visitor-card__photo{width:52px;height:52px}
.visitor-admin-avatar{width:52px;height:52px;border-radius:10px;object-fit:cover;border:1px solid #d9e2ea;background:#eef3f8}
.visitor-admin-avatar--empty{display:grid;place-items:center;font-weight:800;color:#5f6f7f}
.visitor-card__actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.visitor-editor-panel{margin-top:16px}
.visitor-admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.visitor-admin-photo-field{align-self:start}
.visitor-admin-photo-preview-wrap{display:flex;align-items:flex-end}
.visitor-admin-photo-preview{width:118px;height:118px;border:1px dashed #cbd5df;border-radius:12px;background:#f7f9fb;display:grid;place-items:center;overflow:hidden;color:#7a8794;font-size:11px}
.visitor-admin-photo-preview img{width:100%;height:100%;object-fit:cover}
.visitor-admin-observation-field{grid-column:1/-1}
.visitor-admin-editor-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}
@media(max-width:760px){
  .visitor-card--with-photo{grid-template-columns:48px minmax(0,1fr)}
  .visitor-card__photo{width:44px;height:44px}
  .visitor-admin-avatar{width:44px;height:44px}
  .visitor-card__actions{grid-column:1/-1;justify-content:flex-start}
  .visitor-admin-form-grid{grid-template-columns:1fr}
  .visitor-admin-observation-field{grid-column:1}
}
