:root{--ink:#172c2b;--muted:#6e7e7b;--green:#174d45;--mint:#dff4eb;--accent:#e5f24c;--cream:#f5f6f1;--white:#fff;--line:#e2e7e3;--red:#d95d52;--amber:#dc9b36;--shadow:0 18px 50px rgba(25,55,49,.09)}
*{box-sizing:border-box}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--cream)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:#f8f8f4}.brand-panel{position:relative;overflow:hidden;padding:64px 8vw;color:white;background:radial-gradient(circle at 75% 10%,#377b6d 0,transparent 30%),linear-gradient(145deg,#102f2c,#1b5148 70%,#236155);display:flex;flex-direction:column;justify-content:center}.brand-panel:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(230,242,76,.2);border-radius:50%;right:-130px;bottom:-190px;box-shadow:0 0 0 90px rgba(230,242,76,.035),0 0 0 180px rgba(230,242,76,.025)}.brand-mark{position:absolute;top:54px;left:8vw;background:var(--accent);color:var(--green);font:800 22px Manrope;width:42px;height:42px;display:grid;place-items:center;border-radius:12px}.eyebrow,.login-card small{font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--accent)}.brand-panel h1{font:700 clamp(42px,5vw,74px)/1.02 Manrope;margin:20px 0}.brand-panel h1 em{font-style:normal;color:var(--accent)}.brand-panel>p{font-size:18px;color:#c6d8d4;max-width:530px;line-height:1.6}.login-metrics{display:flex;gap:35px;margin-top:70px}.login-metrics span{display:flex;flex-direction:column;color:#acc4bf;font-size:13px}.login-metrics b{font:700 22px Manrope;color:white}.login-card{width:min(470px,80%);margin:auto}.login-card h2{font:700 34px Manrope;margin:12px 0 5px}.login-card>div>p{color:var(--muted);margin-top:0}.login-card small{color:#3c7067}.login-card label{font-weight:600;font-size:13px;display:block;margin-top:22px}.login-card input,.modal-body input,.modal-body select,.modal-body textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:10px;padding:13px 14px;background:#fff;outline:none}.login-card input:focus,.modal-body input:focus,.modal-body select:focus,.modal-body textarea:focus{border-color:#438a7d;box-shadow:0 0 0 3px #dff4eb}.password-field{position:relative}.password-field button{position:absolute;right:8px;top:12px;border:0;background:none;color:var(--muted)}.primary{border:0;background:var(--green);color:white;border-radius:9px;padding:11px 16px;font-weight:700}.primary:hover{background:#0d3d36}.primary.wide{width:100%;margin-top:28px;padding:14px;display:flex;justify-content:space-between}.demo-box{background:#edf4ef;border:1px solid #dce9e1;border-radius:10px;margin-top:26px;padding:15px;display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.demo-box b{color:var(--green)}.login-card footer{text-align:center;margin-top:28px;color:#8a9693;font-size:12px}.form-error{color:var(--red);font-size:13px;margin-top:12px}.mobile-logo{display:none}
.app-shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#123d37;color:#c4d5d1;padding:25px 14px 18px;display:flex;flex-direction:column;z-index:10}.logo{display:flex;align-items:center;gap:12px;padding:0 10px 25px}.logo>span,.mobile-logo span{background:var(--accent);color:var(--green);width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font:800 20px Manrope}.logo strong{font:800 17px Manrope;line-height:.9;color:white}.logo small{display:block;font-size:8px;letter-spacing:.23em;color:#91aca6;margin-top:5px}nav{flex:1;overflow:auto}nav p{font-size:9px;letter-spacing:.15em;margin:20px 12px 6px;color:#789b93}nav button{position:relative;width:100%;border:0;background:transparent;color:#bad0ca;text-align:left;border-radius:8px;padding:11px 13px;margin:2px 0;display:flex;align-items:center;gap:12px}nav button:hover,nav button.active{background:#22554d;color:white}nav button.active:before{content:"";position:absolute;left:-14px;width:3px;height:22px;border-radius:0 4px 4px 0;background:var(--accent)}nav i{margin-left:auto;background:var(--accent);color:var(--green);border-radius:20px;padding:2px 7px;font-size:10px;font-style:normal}.user-card{border-top:1px solid #326159;padding:18px 6px 0;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;background:#d6eee7;color:var(--green);display:grid;place-items:center;font-weight:700}.user-card b{font-size:12px;color:white;display:block}.user-card span{font-size:10px}.user-card button{border:0;background:none;color:#abc2bd}.workspace{grid-column:2}.workspace header{height:73px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:5}.workspace header>div:first-of-type{display:flex;gap:7px;font-size:13px}.workspace header span{color:#93a09e}.header-actions{display:flex;gap:8px}.icon-btn,#menuToggle{border:1px solid var(--line);background:white;border-radius:9px;padding:10px 13px;color:var(--muted)}#menuToggle{display:none}#content{padding:28px 32px 60px;max-width:1600px;margin:auto}
.hero-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.hero-row h1{font:700 29px Manrope;margin:0}.hero-row p{margin:6px 0 0;color:var(--muted)}.date-filter{background:white;border:1px solid var(--line);padding:10px 13px;border-radius:9px;color:var(--muted);font-size:12px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:white;border:1px solid var(--line);border-radius:13px;padding:19px;box-shadow:0 3px 15px rgba(26,64,57,.025)}.kpi{display:grid;grid-template-columns:1fr auto}.kpi small{font-size:11px;color:var(--muted);font-weight:600}.kpi strong{font:700 30px Manrope;display:block;margin-top:8px}.kpi .trend{font-size:10px;color:#31816e}.kpi-icon{width:40px;height:40px;border-radius:10px;background:var(--mint);display:grid;place-items:center;color:var(--green)}.charts{display:grid;grid-template-columns:1.8fr 1fr;gap:16px;margin-top:16px}.chart-card{min-height:315px}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card-title b{font:700 14px Manrope}.card-title span{font-size:11px;color:var(--muted)}.chart-wrap{height:235px}.bottom-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-top:16px}
.table-card{overflow:hidden;padding:0}.table-head{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.table-head h2{font:700 17px Manrope;margin:0}.table-head p{font-size:12px;color:var(--muted);margin:3px 0}.toolbar{display:flex;gap:8px;margin-bottom:15px}.search{flex:1;max-width:400px;border:1px solid var(--line);border-radius:9px;padding:11px 14px;background:white}.ghost{border:1px solid var(--line);border-radius:8px;background:white;padding:9px 12px;color:var(--green);font-weight:600}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;background:#f8faf7;color:#778682;font-size:10px;letter-spacing:.05em;padding:11px 20px}td{padding:13px 20px;border-top:1px solid #edf0ed}.person-cell{display:flex;align-items:center;gap:10px}.mini-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e3f2ed;color:var(--green);font-weight:700}.person-cell b{display:block}.person-cell span{font-size:10px;color:var(--muted)}.pill{border-radius:20px;padding:4px 8px;font-size:10px;font-weight:600;background:#eef1ef}.pill.Favorável,.pill.Entregue{color:#24705e;background:#e2f4ec}.pill.Indeciso,.pill.Média{color:#97691e;background:#fff1d5}.pill.Retorno,.pill.Alta{color:#ae493f;background:#fde9e7}.pill.Não-contatado{color:#687774}.activity-list{display:grid;gap:4px}.activity{display:grid;grid-template-columns:35px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0ed}.activity:last-child{border:0}.activity p{font-size:12px;margin:0}.activity small{color:var(--muted)}.activity time{font-size:10px;color:#96a29f}.empty{padding:35px;text-align:center;color:var(--muted)}.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kanban-col{background:#edf0ec;border-radius:12px;padding:13px}.kanban-col h3{font-size:12px;margin:0 0 12px;display:flex;justify-content:space-between}.lead-card{background:white;border-radius:9px;padding:12px;margin:8px 0;box-shadow:0 2px 8px #dfe4df}.lead-card b{font-size:12px}.lead-card p{font-size:10px;color:var(--muted)}.whatsapp-banner{background:linear-gradient(115deg,#123f37,#1d6557);color:white;border-radius:15px;padding:27px;margin-bottom:17px;display:flex;justify-content:space-between;align-items:center}.whatsapp-banner h2{font:700 23px Manrope;margin:0 0 7px}.whatsapp-banner p{margin:0;color:#bcd3cd;max-width:630px}.wa-status{background:#dff8ec;color:#16664d;border-radius:30px;padding:9px 14px;font-size:11px;font-weight:700}
.filter-panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.filter-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.filter-title b{font:700 13px Manrope}.filter-clear{border:0;background:none;color:#2a7568;font-size:11px;font-weight:700}.filter-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.filter-grid label{font-size:10px;color:var(--muted);font-weight:700}.filter-grid select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:8px;background:white;padding:9px;color:var(--ink);font-size:11px}.activity-button,.link-button,.lead-button{border:0;background:none;text-align:left;color:inherit;width:100%}.activity-button{cursor:pointer}.activity-button:hover{background:#f5f9f6}.link-button{padding:0}.strategy-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:16px}.strategy-strip>div{background:#fff;padding:16px}.strategy-strip b,.strategy-strip span{display:block}.strategy-strip b{font-size:12px;color:var(--green)}.strategy-strip span{font-size:10px;color:var(--muted);margin-top:5px}.kanban{grid-template-columns:repeat(5,1fr)}.lead-button{display:block}.wa-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.wa-flow b{color:var(--green);font:700 13px Manrope}.wa-flow p,.compliance-note p{font-size:11px;color:var(--muted);line-height:1.5;margin-bottom:0}.compliance-note{border-left:4px solid var(--accent);background:#f1f7f3;border-radius:4px 10px 10px 4px;padding:15px 18px;margin-bottom:16px}.consent-box{background:#f0f6f2;border:1px solid #dce9e1;border-radius:9px;padding:12px}.consent-box p{margin:6px 0 0;font-size:10px;color:var(--muted);font-weight:400}.profile-hero{display:flex;align-items:center;gap:13px;background:#f3f7f4;border-radius:10px;padding:15px}.profile-hero .mini-avatar{width:48px;height:48px}.profile-hero div{flex:1}.profile-hero p{margin:4px 0;font-size:11px;color:var(--muted)}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.profile-grid div{border:1px solid var(--line);border-radius:8px;padding:11px}.profile-grid small,.profile-grid b{display:block}.profile-grid small{font-size:9px;color:var(--muted);margin-bottom:5px}.profile-grid b{font-size:11px}.profile-visit{border-left:2px solid #68a194;padding:4px 0 4px 12px;margin:10px 0}.profile-visit p{font-size:11px;color:var(--muted);margin:4px 0}
.group-summary{display:grid;grid-template-columns:.8fr repeat(3,1fr);gap:12px;margin-bottom:16px}.group-summary>div,.group-summary article{background:white;border:1px solid var(--line);border-radius:12px;padding:16px}.group-summary>div{background:#173f38;color:white}.group-summary small,.group-summary strong,.group-summary span{display:block}.group-summary strong{font:800 30px Manrope;margin:5px 0}.group-summary span{font-size:10px;color:#82938f}.group-summary>div span{color:#b9cdc8}.group-summary article b{font-size:12px}.group-summary article p{min-height:30px;font-size:10px;color:var(--muted)}.group-summary article .ghost{margin-top:10px;width:100%;color:var(--green)}
.wa-ops{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.wa-ops article{display:flex;flex-direction:column;gap:5px}.wa-ops small{font-size:9px;color:var(--muted);font-weight:700}.wa-ops strong{font:700 20px Manrope;color:var(--green)}.wa-ops span{font-size:10px;color:var(--muted)}.inbox-preview{margin-bottom:16px}
.manual-calendar{margin-bottom:16px}.manual-calendar>article{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;border-top:1px solid var(--line);padding:13px 0}.calendar-date{width:44px;height:44px;border-radius:9px;background:var(--green);color:white;display:grid;place-items:center;line-height:.8}.calendar-date b{font:700 17px Manrope}.calendar-date span{font-size:8px;text-transform:uppercase}.manual-calendar article p{font-size:10px;color:var(--muted);margin:3px 0}.manual-calendar article small{color:#566764}
dialog{border:0;border-radius:15px;padding:0;width:min(600px,calc(100% - 30px));box-shadow:0 30px 100px rgba(11,42,37,.3)}dialog:not([open]){display:none!important}dialog::backdrop{background:rgba(10,35,31,.52);backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}.modal-head small{color:#438073;font-size:10px;font-weight:700;letter-spacing:.12em}.modal-head h2{font:700 22px Manrope;margin:5px 0 0}.modal-head button{font-size:25px;border:0;background:none;color:var(--muted)}.modal-body{padding:22px 24px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-body label{font-size:12px;font-weight:600}.modal-body .full{grid-column:1/-1}.modal-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;margin-top:9px}#toast{position:fixed;right:22px;bottom:22px;background:#153f38;color:white;border-radius:9px;padding:13px 18px;transform:translateY(100px);opacity:0;transition:.25s;z-index:30;font-size:13px}#toast.show{transform:none;opacity:1}
.chatpro-connection{margin:16px 0 28px;padding:16px 20px;border:1px solid #cfe4dc;border-radius:14px;background:#f7fbf9;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.chatpro-connection.is-connected{border-color:#a9ddc6;background:#effaf4}.chatpro-connection.is-offline{border-color:#f0c7c1;background:#fff7f5}.connection-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#198b62;color:white;font-weight:800;font-size:20px}.is-offline .connection-icon{background:#c94c42}.chatpro-connection small{letter-spacing:.12em;color:#52736c;font-weight:700}.chatpro-connection h3{margin:2px 0;font:700 17px Manrope}.chatpro-connection p{margin:0;color:var(--muted);font-size:13px}.wa-connection-risk{margin:-10px 0 18px}.wa-risk-panel{padding:14px 16px;border:1px solid #cfe4dc;border-radius:14px;background:#f8fbfa;box-shadow:0 10px 20px rgba(25,139,98,.05)}.wa-risk-panel.safe{border-color:#a9ddc6;background:#eefaf3}.wa-risk-panel.risk{border-color:#ecdba9;background:#fff9ea}.wa-risk-panel.cooldown{border-color:#efc2be;background:#fff4f1}.wa-risk-panel.offline{border-color:#f0c7c1;background:#fff7f5}.wa-risk-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.wa-risk-header small{letter-spacing:.12em;font-size:10px;color:#52736c;font-weight:800}.wa-risk-header h3{margin:3px 0 4px;font:800 18px Manrope}.wa-risk-header p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.risk-pill{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.risk-pill.safe{background:#e4f7ea;color:#146247}.risk-pill.risk{background:#fff0cf;color:#8a6a1d}.risk-pill.cooldown{background:#f8d9d4;color:#a33d35}.risk-pill.offline{background:#f4d8d4;color:#a33d35}.wa-risk-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}.wa-risk-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.wa-risk-grid strong{display:block;font:800 18px Manrope;color:var(--green)}.wa-risk-grid span{font-size:10px;color:var(--muted)}@media(max-width:1000px){.wa-risk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.wa-risk-grid{grid-template-columns:1fr}.wa-risk-header{flex-direction:column;align-items:flex-start}.wa-connection-risk{margin:0 0 16px}}.message-modal{width:min(1040px,calc(100% - 34px));max-height:92vh}.message-modal .modal-body{grid-template-columns:1fr 1fr;padding:20px 26px}.recipient-choice{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:10px;align-items:stretch}.recipient-choice>div{align-self:center}.recipient-choice h3{margin:3px 0}.recipient-choice label{margin:0;border:1px solid var(--line);border-radius:12px;padding:13px;display:flex;align-items:center;gap:9px;cursor:pointer;background:white}.recipient-choice label:has(input:checked){border-color:#287666;background:#eff8f4;box-shadow:0 0 0 2px #d5ece3}.recipient-choice input{width:auto;margin:0}.recipient-choice span{display:flex;flex-direction:column}.recipient-choice span small{color:var(--muted);font-weight:400;margin-top:2px}.recipient-fields{background:#f6f8f7;border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.recipient-fields label{margin:0}.recipient-fields p{margin:auto 0;color:var(--muted);font-size:12px}.recipient-fields.hidden,[data-schedule-field].hidden{display:none}.number-consent{display:flex;gap:8px;align-items:center}.number-consent input{width:auto;margin:0}.message-compose{display:grid;grid-template-columns:1.65fr .8fr;gap:18px}.compose-main, .message-compose aside{border:1px solid var(--line);border-radius:13px;padding:16px;background:white}.compose-main>small,.message-compose aside>small{font-weight:800;letter-spacing:.12em;color:#3e756a}.compose-main label,.message-compose aside label{display:block;margin-top:12px}.message-compose textarea{resize:vertical}.consent-box input{accent-color:var(--green)}.qr-modal{width:min(720px,calc(100% - 30px))}.qr-panel{display:grid;grid-template-columns:280px 1fr;gap:26px;align-items:center}.qr-panel img{width:280px;height:280px;object-fit:contain;border:10px solid white;box-shadow:0 5px 25px #d9e4df;border-radius:12px}.qr-panel h3{font:700 22px Manrope;margin-top:0}.qr-panel li{margin:10px 0}.qr-panel p{color:var(--muted);font-size:12px}.qr-loading{text-align:center;padding:35px}.qr-loading span{display:block;width:34px;height:34px;border:4px solid #dce9e4;border-top-color:var(--green);border-radius:50%;margin:0 auto 14px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.person-modal[open]{width:min(1180px,calc(100% - 36px));max-height:94vh;display:flex;flex-direction:column;overflow:hidden}.person-modal .modal-head{flex:0 0 auto}.person-modal .modal-body{grid-template-columns:repeat(3,1fr);padding:18px 24px;gap:14px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;-webkit-overflow-scrolling:touch}.registry-section{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#f8faf9}.registry-section>b{grid-column:1/-1;color:var(--green);font:800 11px Manrope;letter-spacing:.08em;text-transform:uppercase}.registry-section label{min-width:0}.registry-section .span-2{grid-column:span 2}.registry-section .span-3{grid-column:span 3}.person-modal .profile-grid{grid-template-columns:repeat(3,1fr)}
.attachment-box{margin-top:13px}.attachment-box>input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.attachment-box>label{border:1px dashed #94b8ae;border-radius:12px;padding:13px;display:grid!important;grid-template-columns:auto 1fr;column-gap:10px;cursor:pointer;background:#f7fbf9}.attachment-box>label>span{grid-row:1/3;width:34px;height:34px;border-radius:9px;background:#dff0e9;display:grid;place-items:center;font-size:20px;color:var(--green)}.attachment-box>label small{color:var(--muted);font-weight:400}.attachment-preview{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;gap:11px;position:relative;background:white}.attachment-preview.hidden{display:none}.attachment-preview img,.attachment-preview video{width:72px;height:58px;border-radius:8px;object-fit:cover}.attachment-preview audio{width:230px;max-width:45%}.attachment-preview>div{display:flex;flex-direction:column;min-width:0}.attachment-preview>div b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-preview small{color:var(--muted)}.attachment-preview em{font-style:normal;color:#a85519;font-size:11px;margin-top:3px}.remove-attachment{margin-left:auto;border:0;background:#f7e9e7;color:#a43e36;border-radius:50%;width:28px;height:28px;font-size:18px}.file-icon{width:58px;height:52px;border-radius:8px;background:#e8efec;display:grid;place-items:center;font-size:11px;font-weight:800}.upload-spinner{width:24px;height:24px;border:3px solid #dce9e4;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}
@media(max-width:1000px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.charts,.bottom-grid{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.brand-panel{display:none}.login-card{padding:50px 0}.mobile-logo{display:flex;align-items:center;gap:10px;font-weight:800;margin-bottom:65px}.kanban{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:repeat(3,1fr)}.wa-flow,.group-summary,.wa-ops{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.workspace{grid-column:1}.workspace header{padding:0 15px}.workspace header>div:first-of-type{display:none}#menuToggle{display:block}.header-actions .icon-btn{display:none}.header-actions .primary{font-size:0}.header-actions .primary:after{content:"+";font-size:18px}#content{padding:20px 14px}.hero-row{align-items:start}.date-filter{display:none}.kpi-grid{gap:10px}.card{padding:15px}.kpi strong{font-size:25px}.table-card{overflow-x:auto}.table-head{min-width:680px}table{min-width:900px}.whatsapp-banner{display:block}.wa-status{display:inline-block;margin-top:18px}.kanban,.strategy-strip,.wa-flow,.group-summary,.wa-ops{grid-template-columns:1fr}.filter-grid{grid-template-columns:1fr 1fr}.modal-body{grid-template-columns:1fr}.modal-body .full{grid-column:1}.login-card{width:88%}.profile-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.chatpro-connection{grid-template-columns:auto 1fr}.chatpro-connection button{grid-column:1/-1}.message-modal .modal-body{grid-template-columns:1fr;padding:16px}.recipient-choice{grid-template-columns:1fr}.recipient-choice>div{margin-bottom:4px}.recipient-fields,.message-compose,.qr-panel{grid-template-columns:1fr}.qr-panel img{width:min(260px,100%);height:auto;margin:auto}}
@media(max-width:760px){.person-modal{width:calc(100% - 16px);max-height:96vh}.person-modal .modal-head{padding:18px 24px}.person-modal .modal-body{grid-template-columns:1fr;padding:14px}.registry-section{grid-template-columns:1fr}.registry-section .span-2,.registry-section .span-3{grid-column:1}.person-modal .profile-grid{grid-template-columns:1fr}}
#toast{z-index:2147483647;max-width:min(440px,calc(100vw - 44px));background:#8f2f2a;font-weight:650;box-shadow:0 14px 45px rgba(25,46,41,.35);pointer-events:none}#toast.success{background:#176b55}.field-hint{display:block!important;margin-top:10px;color:#648078;font-size:10px;font-weight:500}
#toast.inside-dialog{position:fixed;right:22px;bottom:22px;z-index:2147483647;pointer-events:none}#toast.inside-dialog.actionable{pointer-events:auto}
#toast.actionable{display:flex;align-items:center;gap:18px;pointer-events:auto;padding:11px 12px 11px 18px}#toast.actionable span{line-height:1.35}#toast.actionable button{border:1px solid rgba(255,255,255,.55);border-radius:7px;background:#fff;color:#134b40;padding:8px 12px;font:800 12px Manrope;cursor:pointer}#toast.actionable button:hover{background:#e8f7f1}
.voice-recorder{margin-top:10px;padding:11px 12px;border:1px solid #d7e5df;border-radius:11px;background:#f8fbfa;display:flex;align-items:center;gap:10px}.voice-recorder button{white-space:nowrap}.voice-recorder .start-recording{color:#9d2f2b}.voice-recorder .stop-recording{border:0;background:#a63b35;color:#fff;border-radius:9px;padding:11px 15px;font-weight:700}.voice-recorder .recording-status{font-size:11px;color:var(--muted)}.voice-recorder:has(.stop-recording:not(.hidden)){border-color:#e2aaa6;background:#fff7f6}.voice-recorder:has(.stop-recording:not(.hidden)) .recording-status{color:#a63b35;font-weight:700}
.format-toolbar{margin-top:8px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:#f6f9f7;padding:6px;display:flex;align-items:center;gap:4px}.format-toolbar+textarea{margin-top:0!important;border-radius:0 0 10px 10px!important}.format-toolbar button{width:32px;height:30px;border:0;border-radius:6px;background:transparent;color:#274f47;display:grid;place-items:center}.format-toolbar button:hover{background:#dfece7}.format-toolbar span{margin-left:auto;padding-right:6px;color:var(--muted);font-size:9px;font-weight:500}.format-toolbar code{font-size:10px}
.agenda-filters{display:flex;align-items:center;justify-content:space-between;margin:12px 0}.agenda-filters>div{display:flex;gap:7px;flex-wrap:wrap}.agenda-filters button{border:1px solid var(--line);background:#fff;color:#49615b;border-radius:22px;padding:8px 11px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:7px}.agenda-filters button span{min-width:19px;height:19px;border-radius:20px;background:#edf2ef;display:grid;place-items:center;font-size:9px}.agenda-filters button:hover{border-color:#80ab9f}.agenda-filters button.active{background:var(--green);border-color:var(--green);color:#fff}.agenda-filters button.active span{background:rgba(255,255,255,.18)}.agenda-filters>small{color:var(--muted)}.schedule-item.agenda-hidden{display:none}.agenda-filter-empty{text-align:center;padding:55px 20px;display:flex;flex-direction:column;align-items:center;gap:5px}.agenda-filter-empty.hidden{display:none}.agenda-filter-empty>span{font-size:30px;color:#7ca89c}.agenda-filter-empty small{color:var(--muted)}
.social-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#f8faf9}.social-fields>b{grid-column:1/-1;color:var(--green);font:700 12px Manrope}.whatsapp-group-enroll{display:grid;grid-template-columns:1fr;gap:8px;padding:15px;border:1px solid #bddfd2;border-radius:12px;background:#f0f8f4}.whatsapp-group-enroll>label{display:flex;align-items:center;gap:9px;color:var(--green)}.whatsapp-group-enroll>label input{width:auto;margin:0;accent-color:var(--green)}.whatsapp-group-enroll select{margin-top:2px}.whatsapp-group-enroll small{color:var(--muted);line-height:1.45}.profile-grid span{display:block;margin-top:4px;color:var(--muted);font-size:10px}
@media(max-width:760px){.agenda-filters{align-items:flex-start;flex-direction:column;gap:10px}.agenda-filters>div{flex-wrap:nowrap;width:100%;overflow-x:auto;padding-bottom:4px}.agenda-filters button{flex:0 0 auto}}
@media(max-width:760px){.social-fields{grid-template-columns:1fr}}

nav i.connection-dot{margin-left:auto;width:10px;height:10px;border-radius:50%;padding:0;background:#f05d5d;color:transparent;box-shadow:0 0 0 3px rgba(255,255,255,.1)}
nav i.connection-dot.connected{background:#40d27b}
nav i.connection-dot.disconnected{background:#f05d5d}
.people-toolbar{align-items:center}.people-search-wrap{position:relative;flex:1;max-width:620px}.people-search-wrap>span{position:absolute;left:14px;top:11px;color:#6f827d}.people-search-wrap .search{width:100%;max-width:none;padding-left:38px}.people-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.people-overview>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 18px;display:flex;align-items:baseline;gap:9px}.people-overview b{font:800 24px Manrope;color:var(--green)}.people-overview span{font-size:11px;color:var(--muted)}.leader-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.leader-group{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 5px 22px rgba(22,61,54,.04);transition:transform .2s,box-shadow .2s}.leader-group:hover{transform:translateY(-2px);box-shadow:0 9px 28px rgba(22,61,54,.1)}.leader-group>header{display:flex;align-items:stretch}.leader-toggle{flex:1;border:0;background:#fff;padding:17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;text-align:left;color:var(--ink)}.leader-toggle:hover{background:#f7faf8}.leader-avatar{width:48px;height:48px;border-radius:13px;background:linear-gradient(145deg,#d9efe8,#edf7f3);color:var(--green);display:grid;place-items:center;font-weight:800;flex:0 0 auto}.leader-main b,.leader-main small,.leader-main em,.leader-count b,.leader-count small{display:block}.leader-main b{font:700 15px Manrope}.leader-main small,.leader-count small,.leader-main em{font-size:9px;color:var(--muted);margin-top:3px}.leader-main em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leader-count{text-align:center;min-width:48px}.leader-count b{font:800 19px Manrope;color:var(--green)}.chevron{font-size:20px;color:#68807a;transition:transform .25s}.leader-group.expanded .chevron{transform:rotate(180deg)}.leader-details{align-self:center;margin-right:12px;white-space:nowrap;padding:7px 9px}.followers-wrap{max-height:0;overflow:hidden;border-top:0 solid var(--line);transition:max-height .35s ease,border-width .2s}.leader-group.expanded .followers-wrap{max-height:2000px;border-top-width:1px}.add-follower-button{width:calc(100% - 24px);margin:12px;border:0;border-radius:9px;padding:10px;background:var(--green);color:#fff;font-size:10px;font-weight:800}.followers-head{padding:10px 14px;background:#f7f9f7;display:flex;align-items:center;gap:8px}.followers-head b{font-size:11px;color:var(--green)}.followers-head span{font-size:9px;color:var(--muted)}.follower-row{width:100%;border:0;border-top:1px solid #edf1ee;background:#fff;padding:12px 14px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;color:inherit}.follower-row:hover{background:#f8fbf9}.follower-name b,.follower-name small,.follower-place,.follower-place small{display:block}.follower-name b{font-size:12px}.follower-name small,.follower-place small{font-size:9px;color:var(--muted);margin-top:3px}.follower-place{grid-column:2;font-size:10px}.wa-mini{grid-column:2;font-size:9px;color:#8a9894}.wa-mini.yes{color:#24705e;font-weight:700}.row-arrow{grid-column:3;grid-row:1/4;font-size:20px;color:#89a099}.followers-empty,.people-empty{padding:30px;text-align:center;color:var(--muted);font-size:11px}.people-empty{background:#fff;border:1px dashed var(--line);border-radius:14px;display:flex;flex-direction:column;gap:5px}.people-empty>span{font-size:28px}.unlinked-group{border-color:#e8d8b6}.unlinked-group .leader-avatar{background:#fff1d5;color:#97691e}.people-pagination{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:12px;margin-top:8px}.people-pagination button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;color:var(--green);font-weight:700}.people-pagination button:disabled{opacity:.4;cursor:not-allowed}.people-pagination span{font-size:11px;color:var(--muted)}.role-badge{border-radius:20px;padding:6px 10px;background:#e4f2ed;color:#236b5a;font-size:10px;font-weight:700}.profile-followers{border:1px solid var(--line);border-radius:11px;overflow:hidden}.profile-followers>div{padding:11px 13px;background:#f5f8f6;display:flex;justify-content:space-between}.profile-followers>button{width:100%;border:0;border-top:1px solid var(--line);background:#fff;padding:10px 13px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;text-align:left}.profile-followers>button:hover{background:#f7faf8}.profile-followers>button small{color:var(--muted)}.profile-followers>p{padding:12px;color:var(--muted);font-size:11px}.group-enrollment-callout{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #b9daca;background:#f0f8f4;border-radius:11px;padding:13px}.group-enrollment-callout b,.group-enrollment-callout span{display:block}.group-enrollment-callout span{font-size:10px;color:var(--muted);margin-top:3px}.group-enrollment-callout.enrolled{border-color:#dbe6e1;background:#f8faf9}.group-picker{padding:8px}.group-picker p{color:var(--muted);font-size:12px}.danger-outline{border:1px solid #e6b5b0;background:#fff;color:#a54038;border-radius:8px;padding:9px 12px;font-weight:700}.danger{border:0;background:#a83f37;color:#fff;border-radius:8px;padding:9px 12px;font-weight:700}.entity-actions{justify-content:flex-end}.entity-actions .danger-outline{margin-right:auto}.delete-confirmation{border:1px solid #ecc3be;background:#fff6f5;border-radius:11px;padding:14px;display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center}.delete-confirmation b,.delete-confirmation p{grid-column:1/-1}.delete-confirmation p{margin:0;color:#7f4c47;font-size:11px}
.wa-simple-hero{background:linear-gradient(135deg,#123f38,#1c6154);color:white;border-radius:20px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 18px 50px rgba(19,63,56,.18)}
.wa-kicker{font-size:10px;letter-spacing:.16em;color:var(--accent);font-weight:800}.wa-simple-hero h1{font:800 32px Manrope;margin:8px 0}.wa-simple-hero p{margin:0;color:#c1d7d2}.wa-main-actions{display:flex;gap:12px}.wa-action{min-width:190px;padding:15px 18px;text-align:left;display:grid;grid-template-columns:32px 1fr;column-gap:9px;align-items:center}.wa-action>span{grid-row:1/3;font-size:20px}.wa-action b,.wa-action small{display:block}.wa-action small{font-size:9px;font-weight:500;opacity:.72}.wa-simple-hero .ghost{background:#fff;color:var(--green);border:0}
.wa-tabs{display:flex;align-items:center;justify-content:space-between;margin:25px 0 10px;border-bottom:1px solid var(--line)}.wa-tab-list{display:flex;gap:18px}.wa-tabs button,.wa-tabs button:hover,.wa-tabs button.active{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 4px;font-weight:800;color:var(--muted)}.wa-tabs button.active{border-bottom-color:var(--green);color:var(--green)}.wa-tabs span{font-size:11px;color:var(--muted)}
.wa-groups-panel{margin-top:8px;padding:22px}.wa-groups-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;flex-wrap:wrap}.wa-groups-head small{letter-spacing:.14em;font-weight:800;color:var(--muted)}.wa-groups-head h2{margin:6px 0;font:800 22px Manrope}.wa-groups-head p{margin:0;color:var(--muted);max-width:520px}.wa-groups-controls{display:grid;gap:10px;min-width:min(360px,100%)}.wa-groups-controls label{display:grid;gap:6px;font-size:11px;font-weight:700;color:var(--muted)}.wa-groups-controls select,.wa-groups-toolbar input,.wa-groups-toolbar select{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff}.wa-groups-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0 12px}.wa-groups-kpis article{background:#f7faf8;border:1px solid var(--line);border-radius:12px;padding:14px}.wa-groups-kpis strong{display:block;font:800 24px Manrope;color:var(--green)}.wa-groups-kpis span{font-size:10px;color:var(--muted)}.wa-groups-kpis .in{background:#eef9f3}.wa-groups-kpis .out{background:#fff2f1}.wa-groups-kpis .invite{background:#fff8e8}.wa-groups-sync-note{margin:0 0 14px;font-size:12px;color:var(--muted)}.wa-groups-toolbar{display:grid;grid-template-columns:1fr 180px;gap:10px;margin-bottom:12px}.wa-groups-list{display:grid;gap:8px;max-height:58vh;overflow:auto}.wa-groups-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.wa-groups-row b{display:block}.wa-groups-row span{color:var(--muted);font-size:11px}.group-live-status{display:grid;gap:4px;margin-top:10px;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#f7faf8}.group-live-status b{font:800 12px Manrope}.group-live-status span{font-size:11px;color:var(--muted)}.group-live-status.in{background:#eef9f3;border-color:#a9d9c2;color:#146247}.group-live-status.out{background:#fff2f1;border-color:#efc2be;color:#a33d35}.group-live-status.invite{background:#fff8e8;border-color:#ecdba9;color:#8a6a1d}.group-live-status.pending{background:#f4f7f6}
@media(max-width:900px){.wa-groups-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.wa-groups-toolbar{grid-template-columns:1fr}.wa-groups-row{grid-template-columns:auto 1fr;gap:8px}}
.schedule-board{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 30px rgba(22,61,54,.05)}.schedule-item{display:grid;grid-template-columns:70px 1fr auto;gap:20px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.schedule-item:last-child{border:0}.schedule-when{width:60px;border:1px solid var(--line);border-radius:12px;text-align:center;overflow:hidden}.schedule-when b,.schedule-when span,.schedule-when time{display:block}.schedule-when b{font:800 22px Manrope;padding-top:7px}.schedule-when span{font-size:9px;text-transform:uppercase;color:var(--muted)}.schedule-when time{background:#eef5f1;color:var(--green);font-weight:700;font-size:10px;margin-top:5px;padding:5px}.channel-tag,.recurrence-tag{display:inline-block;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700;background:#e5f4ed;color:#25705f;margin-right:5px}.channel-tag.group{background:#fff1d8;color:#95671b}.recurrence-tag{background:#eff1ef;color:#63716e}.schedule-content h3{font:700 14px Manrope;margin:8px 0 3px}.schedule-content p{font-size:11px;color:var(--muted);margin:0}.schedule-content blockquote{border-left:2px solid #9ac7bb;margin:10px 0 0;padding-left:10px;color:#53645f;font-size:11px}.schedule-status{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.empty-state{text-align:center;padding:65px 20px}.empty-state>span{font-size:35px;color:#77a399}.empty-state h3{font:700 18px Manrope;margin-bottom:5px}.empty-state p{font-size:12px;color:var(--muted)}
@media(max-width:760px){.wa-simple-hero{display:block;padding:22px}.wa-main-actions{margin-top:22px;display:grid}.wa-action{width:100%}.schedule-item{grid-template-columns:58px 1fr;gap:12px;padding:15px}.schedule-status{grid-column:1/-1;align-items:stretch}.schedule-status .ghost{width:100%}}
@media(max-width:760px){.people-toolbar{align-items:stretch;flex-wrap:wrap}.people-search-wrap{max-width:none;flex-basis:100%}.people-overview{grid-template-columns:1fr}.leader-group>header{position:relative}.leader-toggle{grid-template-columns:auto 1fr auto;padding:14px}.leader-summary{display:none}.chevron{grid-column:3;grid-row:1}.leader-details{position:absolute;right:12px;bottom:9px;margin:0;padding:5px 8px;font-size:9px}.follower-row{grid-template-columns:auto 1fr auto;padding:12px}.follower-place,.wa-mini{display:none}.follower-row .pill{grid-column:2}.row-arrow{grid-column:3;grid-row:1/3}.delete-confirmation{grid-template-columns:1fr 1fr}.delete-confirmation .ghost,.delete-confirmation .danger{width:100%}}
.add-follower-button{min-height:46px;margin:14px;width:calc(100% - 28px);padding:13px 18px;border-radius:11px;font-size:12px;letter-spacing:.01em;box-shadow:0 6px 16px rgba(18,75,64,.18)}.add-follower-button:hover{background:#1b6658;transform:translateY(-1px)}.leader-main{cursor:pointer}.leader-main:hover b{text-decoration:underline;text-underline-offset:3px}.follower-name b{text-decoration-thickness:1px}.follower-row:hover .follower-name b{text-decoration:underline;text-underline-offset:3px}.profile-hero>div>b{font:800 18px Manrope}.danger-outline{padding:10px 14px;font-weight:800}
.primary:disabled,.danger:disabled{opacity:.65;cursor:wait}.bulk-delete-button{align-self:center;margin-right:12px;white-space:nowrap;font-size:10px}.delete-confirmation .cascade-delete{grid-column:1/-1;background:#7e2621}.delete-confirmation .cascade-delete:hover{background:#681d19}
.transfer-button{border:1px solid #8fb9d5;background:#eef7fc;color:#155b88;border-radius:8px;padding:10px 14px;font-weight:800}.transfer-button:hover{background:#dceefa}.transfer-panel{display:grid;gap:16px;padding:4px}.transfer-panel>div{padding:16px;border-radius:11px;background:#eef7fc;border:1px solid #c7deec}.transfer-panel>div b{font:800 16px Manrope;color:#154f74}.transfer-panel>div p{margin:5px 0 0;color:#617a8b;font-size:11px}.transfer-remove{display:flex!important;align-items:center;gap:9px;padding:12px;border-radius:9px;background:#fff8e8;border:1px solid #ecdba9}.transfer-remove input{width:auto!important;margin:0!important}
.incomplete-note,.duplicate-warning{display:flex;flex-direction:column;gap:4px;border-radius:11px;padding:13px 15px}.incomplete-note{background:#eef7ff;border:1px solid #c8e1f4}.incomplete-note b{color:#165b8d}.incomplete-note span,.duplicate-warning span{font-size:10px;color:var(--muted)}.duplicate-warning{background:#fff1f0;border:1px solid #efc2be;color:#a33d35}.person-leader-field>small{display:block;margin-top:6px;color:var(--muted);font-size:9px;font-weight:500}html[data-theme=dark] .incomplete-note{background:#122f48;border-color:#315c7a}html[data-theme=dark] .duplicate-warning{background:#3b2024;border-color:#784148}

/* Meu Gabinete Digital · acesso */
.login-shell{grid-template-columns:minmax(500px,1.08fr) minmax(440px,.92fr);background:#eef3f8}.brand-panel{isolation:isolate;min-height:100vh;padding:52px clamp(38px,6vw,94px);justify-content:space-between;background:#031436 url('/assets/login-showcase.png') center/cover no-repeat}.brand-panel:after{display:none}.brand-overlay{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(2,14,47,.96) 0%,rgba(2,17,55,.8) 48%,rgba(3,18,54,.35) 100%),linear-gradient(0deg,rgba(2,13,38,.88),transparent 55%)}.login-brand{display:flex;align-items:center;gap:13px}.brand-symbol,.login-mini-logo{display:grid;place-items:center;background:linear-gradient(145deg,#1688ff,#36d0ff);color:#fff;border-radius:13px;font:900 23px Manrope;box-shadow:0 8px 24px rgba(30,142,255,.32)}.brand-symbol{width:48px;height:48px}.login-brand b,.login-brand small{display:block}.login-brand b{font:800 22px Manrope}.login-brand small{margin-top:3px;color:#a9c6e8;font-size:11px}.brand-copy{max-width:580px}.brand-copy>span{font:800 10px Manrope;letter-spacing:.18em;color:#45cfff}.brand-copy h1{font:800 clamp(42px,4.7vw,72px)/.98 Manrope;margin:14px 0 22px;text-shadow:0 8px 30px rgba(0,0,0,.3)}.brand-copy p{max-width:555px;font-size:17px;line-height:1.65;color:#d8e5f5}.brand-panel>footer{font-size:11px;color:#afc1d9}.login-card{width:min(480px,82%);padding:45px 0}.login-heading{text-align:center}.login-mini-logo{width:54px;height:54px;margin:0 auto 18px}.login-card h2{font-size:31px;margin-top:8px}.login-card .login-heading>p{font-size:14px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;margin-top:27px;border-radius:11px;background:#eef2f7}.auth-tabs button{border:0;border-radius:8px;background:transparent;padding:11px 8px;color:#6e7c90;font-weight:700}.auth-tabs button.active{background:#fff;color:#10243f;box-shadow:0 3px 12px rgba(34,55,83,.12)}.login-card form label{color:#263a54}.login-card input{background:#f8fafc;border-color:#d9e1ea}.login-card .primary.wide{justify-content:center;gap:12px;background:#123e72}.login-card .primary.wide:hover{background:#0d315d}.create-account-link{width:100%;border:0;background:none;margin-top:18px;color:#68778b;font-size:12px}.create-account-link b{color:#124b83}.login-card>footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap}.login-card>footer button{border:0;background:none;padding:0;color:#185d98;font-weight:700}.otp-row label{margin-top:15px}.auth-dialog{width:min(650px,calc(100% - 30px))}.register-form label small{display:block;color:#6f7f8e;font-size:9px;margin-top:5px}.developer-card{padding:35px;text-align:center}.developer-avatar{width:72px;height:72px;margin:auto;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#0d3566,#1688ff);color:#fff;font:900 22px Manrope}.developer-card small{display:block;margin-top:17px;color:#2885ca;letter-spacing:.16em;font-weight:800}.developer-card h3{font:800 25px Manrope;margin:7px}.developer-card p{color:var(--muted)}.developer-card a{display:block;margin:8px;color:#0e5e9d;font-weight:700}.developer-card .primary{margin-top:18px;min-width:130px}
@media(max-width:900px){.login-shell{display:block}.brand-panel{min-height:330px;padding:30px;background-position:center 25%}.login-brand small{display:none}.brand-copy{margin-top:60px}.brand-copy h1{font-size:40px}.brand-copy p{font-size:13px;max-width:520px}.brand-panel>footer{display:none}.login-card{width:min(520px,calc(100% - 34px));padding:38px 0}.mobile-logo{display:none}}
@media(max-width:560px){.brand-panel{min-height:250px}.brand-copy{margin-top:35px}.brand-copy>span,.brand-copy p{display:none}.brand-copy h1{font-size:35px}.login-brand b{font-size:18px}.auth-tabs button{font-size:11px}.login-card{padding-top:28px}.login-card h2{font-size:26px}.register-form{grid-template-columns:1fr}.register-form .full{grid-column:1}}

/* Paleta azul e branco + modo escuro */
:root{--ink:#10243f;--muted:#687b91;--green:#164f8f;--mint:#e3f1ff;--accent:#31b8ff;--cream:#f4f8fc;--white:#fff;--line:#dce6f0;--shadow:0 18px 50px rgba(20,64,110,.1)}
body{transition:background .2s,color .2s}.sidebar{background:linear-gradient(180deg,#082d5b,#0d447c);color:#c9dff2}.logo>span,.mobile-logo span{background:#2cb8ff;color:#fff}.logo small{color:#91b9db}nav p{color:#7fa9cc}nav button{color:#bdd7ed}nav button:hover,nav button.active{background:#17588f}.user-card{border-color:#2c6391}.avatar{background:#dcefff;color:#15558b}.primary{background:#164f8f}.primary:hover{background:#0f3d70}.ghost{color:#164f8f}.kpi .trend{color:#2478b7}.whatsapp-banner,.wa-simple-hero{background:linear-gradient(120deg,#0a3d70,#176ca8)}.leader-group.expanded .followers-wrap{border-color:#dce6f0}.add-follower-button{background:#164f8f;box-shadow:0 6px 16px rgba(22,79,143,.2)}.add-follower-button:hover{background:#0f3d70}.role-badge{background:#e2f1ff;color:#14517f}.group-enrollment-callout{border-color:#b9d9ee;background:#f0f8ff}.mini-avatar,.leader-avatar{background:#e3f1ff;color:#164f8f}.theme-toggle{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:9px;padding:9px 11px;font-size:11px;font-weight:700}.theme-toggle span{font-size:15px}.login-theme-toggle{position:fixed;right:20px;top:18px;z-index:20}.brand-panel{display:grid;grid-template-rows:auto 1fr auto;background-color:#031536;background-image:url('/assets/login-showcase.png');background-repeat:no-repeat;background-size:auto 92%;background-position:86% center}.brand-overlay{background:linear-gradient(90deg,rgba(2,16,49,.98) 0%,rgba(3,22,64,.9) 43%,rgba(3,18,54,.42) 100%),linear-gradient(0deg,rgba(2,13,38,.76),transparent 58%)}.brand-copy{align-self:center;max-width:500px;padding:30px 0}.brand-copy h1{max-width:480px}.brand-copy p{max-width:490px}.login-shell{background:#f4f8fc}
html[data-theme=dark]{--ink:#e8f2fc;--muted:#9bb0c5;--green:#35a9f4;--mint:#143856;--accent:#42c4ff;--cream:#071624;--white:#0e2235;--line:#244158;--red:#ff7168;--amber:#f1b44c;--shadow:0 18px 50px rgba(0,0,0,.32);color-scheme:dark}
html[data-theme=dark] body,html[data-theme=dark] .login-shell{background:#071624;color:var(--ink)}html[data-theme=dark] .workspace header,html[data-theme=dark] .card,html[data-theme=dark] .leader-group,html[data-theme=dark] .leader-toggle,html[data-theme=dark] .follower-row,html[data-theme=dark] .schedule-board,html[data-theme=dark] .table-card,html[data-theme=dark] dialog,html[data-theme=dark] .profile-grid>div,html[data-theme=dark] .theme-toggle,html[data-theme=dark] .ghost{background:#0e2235;color:var(--ink)}html[data-theme=dark] .leader-toggle:hover,html[data-theme=dark] .follower-row:hover,html[data-theme=dark] .profile-followers>button:hover{background:#132c42}html[data-theme=dark] .followers-head,html[data-theme=dark] th,html[data-theme=dark] .profile-followers>div,html[data-theme=dark] .auth-tabs,html[data-theme=dark] .group-enrollment-callout,html[data-theme=dark] .transfer-panel>div{background:#132c42}html[data-theme=dark] .login-card input,html[data-theme=dark] .modal-body input,html[data-theme=dark] .modal-body select,html[data-theme=dark] .modal-body textarea{background:#0d2134;color:var(--ink);border-color:var(--line)}html[data-theme=dark] .auth-tabs button.active{background:#17344d;color:#fff}html[data-theme=dark] .login-card{color:var(--ink)}html[data-theme=dark] .login-card label{color:#d7e7f5}html[data-theme=dark] .group-enrollment-callout{border-color:#315d7a}html[data-theme=dark] .people-overview>div,html[data-theme=dark] .filter-panel{background:#0e2235;border-color:var(--line)}html[data-theme=dark] .search{background:#0e2235;color:var(--ink)}html[data-theme=dark] .modal-head{border-color:var(--line)}
@media(max-width:900px){.brand-panel{background-size:auto 95%;background-position:right center}.login-theme-toggle{top:12px;right:12px}.brand-copy{padding:10px 0}}
@media(max-width:560px){.theme-toggle b{display:none}.brand-panel{background-size:auto 100%;background-position:center}.brand-overlay{background:rgba(2,16,49,.76)}}

/* Identidade verde · Meu Gabinete Digital */
:root{--ink:#142c29;--muted:#6b7f7a;--green:#155448;--mint:#dff3ec;--accent:#c9ed4d;--cream:#f4f7f3;--white:#fff;--line:#dce7e2;--shadow:0 18px 50px rgba(17,72,62,.1)}
.sidebar{background:linear-gradient(180deg,#0c3d35,#145449);color:#c8ddd8}.logo>span,.mobile-logo span{background:var(--accent);color:#12483f}.logo small{color:#94b8b0}nav p{color:#79a49b}nav button{color:#c2d9d4}nav button:hover,nav button.active{background:#21675b}.user-card{border-color:#397469}.avatar{background:#daf0e8;color:#155448}.primary{background:#155448}.primary:hover{background:#0e4037}.ghost{color:#155448}.kpi .trend{color:#27806d}.whatsapp-banner,.wa-simple-hero{background:linear-gradient(120deg,#0d4138,#1b6b5c)}.add-follower-button{background:#155448;box-shadow:0 6px 16px rgba(21,84,72,.2)}.add-follower-button:hover{background:#0e4037}.role-badge{background:#e0f2eb;color:#155448}.group-enrollment-callout{border-color:#b9ddcf;background:#f0f9f5}.mini-avatar,.leader-avatar{background:#e0f2eb;color:#155448}.transfer-button{border-color:#8fbfaf;background:#eef8f4;color:#155448}.transfer-panel>div{background:#eef8f4;border-color:#c7e4d9}.transfer-panel>div b{color:#155448}.incomplete-note{background:#eff8f4;border-color:#c7e5d9}.incomplete-note b{color:#155448}

/* Login no formato da referência, com linguagem visual verde */
.login-theme-toggle{right:24px;top:22px;border-color:rgba(200,237,77,.35);background:rgba(5,29,25,.72);color:#eaf8f3;backdrop-filter:blur(12px)}
.login-shell{position:relative;display:grid;place-items:center;min-height:100vh;padding:34px 18px;overflow:hidden;background:radial-gradient(circle at 50% 48%,rgba(48,154,128,.22),transparent 34%),linear-gradient(145deg,#020807 0%,#061b17 46%,#020706 100%)}
.login-shell:before{content:"";position:absolute;left:-5%;right:-5%;bottom:4%;height:155px;background:linear-gradient(180deg,transparent,rgba(35,166,132,.17)),repeating-linear-gradient(90deg,transparent 0 54px,rgba(84,235,195,.15) 55px 56px),repeating-linear-gradient(0deg,transparent 0 30px,rgba(84,235,195,.12) 31px 32px);transform:perspective(360px) rotateX(64deg);filter:drop-shadow(0 0 18px rgba(54,224,180,.2))}
.login-ambient{position:absolute;inset:0;pointer-events:none}.login-ambient:before,.login-ambient:after{content:"";position:absolute;width:48vw;height:4px;top:55%;background:linear-gradient(90deg,transparent,#42e6ba,transparent);box-shadow:0 0 24px #25bd96}.login-ambient:before{left:-12%;transform:rotate(18deg)}.login-ambient:after{right:-12%;transform:rotate(-18deg)}.login-ambient i{position:absolute;border:1px solid rgba(81,225,187,.12);border-radius:50%;inset:12% 28%}
.login-phone{position:relative;z-index:2;width:min(420px,calc(100vw - 30px));min-height:790px;padding:13px;border:2px solid #668079;border-radius:62px;background:linear-gradient(145deg,#72837f 0%,#1e2927 4%,#07100e 96%,#78908a 100%);box-shadow:0 0 0 3px #0a1312,0 0 0 5px #83938f,0 34px 90px rgba(0,0,0,.72),0 0 46px rgba(48,213,170,.2)}
.login-phone:before,.login-phone:after{content:"";position:absolute;left:-6px;width:4px;border-radius:3px;background:#6e837e}.login-phone:before{top:155px;height:57px}.login-phone:after{top:226px;height:84px}.phone-speaker{position:absolute;z-index:3;left:50%;top:19px;transform:translateX(-50%);width:104px;height:25px;border-radius:30px;background:#020504;box-shadow:inset 0 0 0 1px #101a18}.phone-speaker:after{content:"";position:absolute;right:17px;top:8px;width:8px;height:8px;border-radius:50%;background:#0b3128;box-shadow:0 0 6px #2fbc96}
.login-card{position:relative;width:100%;min-height:760px;margin:0;padding:78px 38px 30px;border:1px solid rgba(86,163,143,.17);border-radius:49px;background:radial-gradient(circle at 70% 18%,rgba(28,101,84,.18),transparent 34%),linear-gradient(160deg,#06120f,#020907 70%);color:#f1faf7;overflow:hidden}
.login-card:after{content:"";position:absolute;inset:auto -70px -110px;height:220px;background:radial-gradient(ellipse,rgba(41,194,155,.16),transparent 64%);pointer-events:none}
.login-heading{text-align:center}.login-mini-logo{width:60px;height:60px;margin:0 auto 13px;border-radius:17px;background:linear-gradient(145deg,#bfe945,#2bb887);color:#08231d;box-shadow:0 0 28px rgba(118,224,112,.28)}.login-product{font:700 19px Manrope;color:#f5fbf9}.login-product strong{color:#87d864}.login-card h2{font:700 25px Manrope;margin:42px 0 5px;color:#fff}.login-card .login-heading>p{margin:0;color:#8fa7a1;font-size:12px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:24px 0 16px;padding:4px;border:1px solid #173a31;border-radius:10px;background:#071a15}.auth-tabs button{border:0;border-radius:7px;padding:9px 6px;background:transparent;color:#718e86;font-size:10px;font-weight:700}.auth-tabs button.active{background:#173f34;color:#dff7ef;box-shadow:none}
.login-card form>label.login-field,.login-card .otp-row label.login-field{position:relative;display:flex;align-items:center;margin:11px 0 0;border:1px solid #20483e;border-radius:9px;background:#071712;color:#7da095}.login-card .login-field>span{width:42px;text-align:center;font-size:15px}.login-card .login-field input{flex:1;width:auto;margin:0;padding:13px 42px 13px 0;border:0;background:transparent;color:#f0f8f5;box-shadow:none}.login-card .login-field input::placeholder{color:#789089}.login-card .password-field button{right:7px;top:6px;color:#78968e}.login-options{display:flex;align-items:center;justify-content:space-between;margin-top:12px;font-size:10px}.login-options label{display:flex;align-items:center;gap:6px;margin:0;color:#8ca29d;font-weight:500}.login-options input{width:auto;margin:0;accent-color:#6fd253}.login-options button{border:0;background:none;color:#7fd65e;font-size:10px}
.login-card .primary.wide{margin-top:22px;padding:13px 17px;justify-content:center;position:relative;background:linear-gradient(90deg,#194f42,#269978);border:1px solid #48bb96;border-radius:8px;box-shadow:0 8px 25px rgba(22,120,94,.2)}.login-card .primary.wide span{position:absolute;right:17px}.login-card .primary.wide:hover{background:linear-gradient(90deg,#206354,#2aaf88)}
.login-divider{display:flex;align-items:center;gap:10px;margin:20px 0 14px;color:#6d817c;font-size:10px}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:#19352e}.create-account-link{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin:0;padding:12px;border:1px solid #3b9e80;border-radius:8px;background:transparent;color:#7fdcbd;font-size:12px;font-weight:700}.create-account-link b{position:absolute;margin-left:240px;color:#8ee0c6;font-size:17px}.login-security{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:22px;color:#6c8780}.login-security>span{display:grid;place-items:center;width:28px;height:32px;border:1px solid #3a9c7f;border-radius:12px 12px 8px 8px;color:#75d8b9}.login-security p{margin:0;font-size:9px;line-height:1.5}.login-card>footer{position:relative;z-index:1;margin-top:20px;color:#66817a;font-size:9px}.login-card>footer button{border:0;background:none;padding:0;color:#7ed7ba;font-weight:800}

html[data-theme=dark]{--ink:#e7f5f0;--muted:#9aafa9;--green:#66caae;--mint:#173c33;--accent:#c9ed4d;--cream:#071713;--white:#0e2721;--line:#274a41;--red:#ff776f;--amber:#efb44e;--shadow:0 18px 50px rgba(0,0,0,.34);color-scheme:dark}
html[data-theme=dark] body,html[data-theme=dark] .login-shell{background:#071713;color:var(--ink)}html[data-theme=dark] .sidebar{background:linear-gradient(180deg,#082e28,#0e463c)}html[data-theme=dark] .workspace header,html[data-theme=dark] .card,html[data-theme=dark] .leader-group,html[data-theme=dark] .leader-toggle,html[data-theme=dark] .follower-row,html[data-theme=dark] .schedule-board,html[data-theme=dark] .table-card,html[data-theme=dark] dialog,html[data-theme=dark] .profile-grid>div,html[data-theme=dark] .theme-toggle,html[data-theme=dark] .ghost{background:#0e2721;color:var(--ink)}html[data-theme=dark] .leader-toggle:hover,html[data-theme=dark] .follower-row:hover,html[data-theme=dark] .profile-followers>button:hover{background:#14332c}html[data-theme=dark] .followers-head,html[data-theme=dark] th,html[data-theme=dark] .profile-followers>div,html[data-theme=dark] .group-enrollment-callout,html[data-theme=dark] .transfer-panel>div{background:#14332c}html[data-theme=dark] .modal-body input,html[data-theme=dark] .modal-body select,html[data-theme=dark] .modal-body textarea{background:#0d241f;color:var(--ink);border-color:var(--line)}html[data-theme=dark] .group-enrollment-callout{border-color:#315f52}html[data-theme=dark] .people-overview>div,html[data-theme=dark] .filter-panel{background:#0e2721;border-color:var(--line)}html[data-theme=dark] .search{background:#0e2721;color:var(--ink)}
html[data-theme=dark] .login-phone .login-card{background:radial-gradient(circle at 70% 18%,rgba(28,101,84,.18),transparent 34%),linear-gradient(160deg,#06120f,#020907 70%)}html[data-theme=dark] .login-phone .auth-tabs{background:#071a15}html[data-theme=dark] .login-phone .auth-tabs button.active{background:#173f34;color:#dff7ef}html[data-theme=dark] .login-phone .login-field input{background:transparent}

@media(max-width:560px){.login-shell{padding:0;background:#030b09}.login-phone{width:100%;min-height:100vh;padding:0;border:0;border-radius:0;box-shadow:none}.login-card{min-height:100vh;border:0;border-radius:0;padding:66px 27px 24px}.phone-speaker,.login-phone:before,.login-phone:after,.login-ambient,.login-shell:before{display:none}.login-theme-toggle{top:12px;right:12px}.login-card h2{margin-top:28px}.create-account-link b{position:static;margin-left:auto}}

/* Desktop amplo + mobile nativo */
@media(min-width:901px){
 .login-shell{grid-template-columns:minmax(420px,500px) minmax(430px,620px);gap:clamp(60px,8vw,150px);justify-content:center;align-items:center;padding:38px 6vw}
 .login-phone{width:460px;min-height:760px}
 .login-card{min-height:730px;padding:66px 43px 27px}
 .login-desktop-copy{position:relative;z-index:2;display:block;max-width:590px;color:#f4fbf8}
 .login-desktop-copy>span{font:800 11px Manrope;letter-spacing:.2em;color:#96e079}
 .login-desktop-copy h1{font:800 clamp(46px,5vw,76px)/1.02 Manrope;margin:18px 0 24px}.login-desktop-copy h1 em{font-style:normal;color:#8bda70}
 .login-desktop-copy p{max-width:560px;color:#b7ccc6;font-size:18px;line-height:1.65}
 .login-desktop-copy>div{display:flex;align-items:center;gap:14px;margin-top:40px;padding-top:25px;border-top:1px solid rgba(133,213,185,.22)}
 .login-desktop-copy>div b{font:800 36px Manrope;color:#c9ed4d}.login-desktop-copy>div small{max-width:160px;color:#91aaa3;line-height:1.4}
}

/* Ajustes de estabilidade do portal público. */
@media (min-width: 981px) {
  .public-landing .login-preferences {
    top: 88px;
    right: 16px;
  }
  .public-header-actions {
    min-width: 0;
    flex-wrap: nowrap;
  }
  .public-header-actions button {
    white-space: nowrap;
  }
}

@media (max-width: 760px) {
  .team-toolbar-grid {
    grid-template-columns: 1fr;
  }
  .team-toolbar-grid button {
    width: 100%;
  }
}

.wa-worker-status{display:flex;align-items:center;gap:14px;padding:16px 18px;margin:14px 0;border:1px solid #d8e7e1;border-radius:16px;background:#f8fcfa}
.wa-worker-status>div{display:grid;gap:3px;flex:1}
.wa-worker-status small{color:#6a847b;font-size:10px;font-weight:800;letter-spacing:.08em}
.wa-worker-status b{color:#174d41}
.wa-worker-status strong{font-size:22px;color:#174d41}
.wa-worker-status.is-stale{border-color:#efd6b8;background:#fffaf2}
.wa-worker-status.is-stale b,.wa-worker-status.is-stale strong{color:#9a5b18}
.permission-matrix-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:1px;margin-top:12px;border:1px solid #dbe8e2;border-radius:12px;overflow:hidden;background:#dbe8e2}
.permission-matrix-grid>div{display:grid;gap:7px;padding:12px;background:#fff}
.permission-matrix-grid>div:first-child{background:#f6fbf8}
.permission-matrix-grid b{color:#174d41;font-size:12px}
.permission-matrix-grid span{color:#61766f;font-size:12px}
@media (max-width:700px){.permission-matrix-grid{grid-template-columns:1fr}.permission-matrix-grid>div{grid-template-columns:1fr 1fr 1fr}.permission-matrix-grid>div b{grid-column:1/-1}}
.public-privacy {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  padding: 76px max(24px, calc((100vw - 1160px) / 2));
  background: #f7fbf8;
  border-top: 1px solid #dcece4;
}
.public-privacy h2 {
  margin: 11px 0 0;
  color: #153e35;
  font: 800 clamp(30px, 3vw, 45px)/1.1 Manrope;
  letter-spacing: -.04em;
}
.public-privacy-copy {
  color: #657d77;
  font-size: 15px;
  line-height: 1.8;
}
.public-privacy-copy p { margin: 0 0 16px; }
.privacy-confirm a { color: inherit; font-weight: 800; text-decoration: underline; }
@media (max-width: 700px) {
  .public-privacy { grid-template-columns: 1fr; gap: 26px; padding: 62px 20px; }
  .public-privacy-copy { font-size: 14px; }
}

/* Biografia pública — composição editorial compacta e responsiva */
.public-page .public-biography {
  display: grid !important;
  grid-template-columns: minmax(350px, 500px) minmax(0, 610px) !important;
  align-items: center !important;
  justify-content: center;
  gap: clamp(38px, 5vw, 76px) !important;
  padding: clamp(64px, 7vw, 96px) max(24px, calc((100vw - 1220px) / 2)) !important;
}

.public-page .public-biography-photo.public-cutout-stage {
  grid-column: 1;
  grid-row: 1;
  width: 100% !important;
  height: clamp(520px, 48vw, 700px) !important;
  margin: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.public-page .public-biography-photo.public-cutout-stage img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  filter: drop-shadow(0 22px 22px rgba(18, 61, 55, .16));
}

.public-page .public-biography-intro {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  width: 100%;
  max-width: 610px;
  margin: 0;
}

.public-page .public-biography-heading {
  display: block;
  grid-column: auto !important;
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  text-align: center !important;
}

.public-page .public-biography-heading h2 {
  max-width: 610px;
  margin: 12px auto 0 !important;
  font-size: clamp(34px, 3.35vw, 52px) !important;
  line-height: 1.08 !important;
}

.public-page .public-biography-intro blockquote {
  margin-bottom: 24px;
}

.public-page .public-biography-intro > p {
  max-width: 580px;
  margin-inline: auto;
}

.public-page .public-biography-story {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: clamp(30px, 4vw, 54px);
}

.public-page .public-biography-story .public-story-feature {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: clamp(28px, 5vw, 72px);
  margin-bottom: 12px;
  padding: clamp(28px, 4vw, 52px);
  border: 1px solid #d5e7df;
  border-radius: 28px;
  background:
    radial-gradient(circle at 18% 50%, rgba(43, 147, 114, .13), transparent 35%),
    #f7fbf9;
}

.public-page .public-story-feature figure {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: clamp(350px, 38vw, 500px);
  margin: 0;
}

.public-page .public-story-feature figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 18px 20px rgba(18, 61, 55, .17));
}

.public-page .public-story-feature-copy {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
}

.public-page .public-story-feature-copy > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #dff2ea;
  color: #176d58;
  font: 800 11px Manrope, sans-serif;
}

.public-page .public-story-feature-copy h3 {
  margin: 2px 0 12px;
  font-size: clamp(25px, 2.3vw, 36px);
}

.public-page .public-story-feature-copy p {
  max-width: 560px;
  font-size: 15px;
  line-height: 1.8;
}

@media (max-width: 900px) {
  .public-page .public-biography {
    grid-template-columns: minmax(270px, .85fr) minmax(0, 1.15fr) !important;
    gap: 30px !important;
  }

  .public-page .public-biography-photo.public-cutout-stage {
    height: 560px !important;
  }
}

/* História e raízes — carrossel editorial */
.public-page .public-history-feature {
  grid-template-columns:minmax(280px,.95fr) minmax(320px,1.05fr)!important;
  gap:28px!important;
  align-items:stretch!important;
  padding:28px!important;
  border:1px solid rgba(18,61,55,.14)!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,#ffffff 0%,#f1faf6 100%)!important;
  box-shadow:0 28px 70px rgba(18,61,55,.1)!important;
}
.public-page .public-history-carousel {
  position:relative;
  min-height:360px;
  overflow:hidden;
  border-radius:26px;
  background:#123d37;
  isolation:isolate;
}
.public-page .public-history-carousel::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(18,61,55,0) 48%,rgba(18,61,55,.82) 100%);
}
.public-page .public-history-carousel figure {
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  transform:scale(1.045);
  transition:opacity .75s ease, transform 1.2s ease;
}
.public-page .public-history-carousel figure.is-active {
  opacity:1;
  transform:scale(1);
}
.public-page .public-history-carousel img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.public-page .public-history-carousel figcaption {
  position:absolute;
  right:18px;
  bottom:18px;
  left:18px;
  z-index:3;
  color:#fff;
  font:800 13px/1.45 Manrope,system-ui,sans-serif;
  letter-spacing:.01em;
  text-shadow:0 2px 14px rgba(0,0,0,.36);
}
.public-page .public-history-dots {
  position:absolute;
  top:18px;
  right:18px;
  z-index:4;
  display:flex;
  gap:8px;
}
.public-page .public-history-dots button {
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.58);
  box-shadow:0 0 0 1px rgba(255,255,255,.38);
  transition:width .3s ease, background .3s ease;
  cursor:pointer;
}
.public-page .public-history-dots button.is-active {
  width:26px;
  background:#b7ff63;
}
.public-page .public-history-panels {
  position:relative;
  min-height:280px;
}
.public-page .public-history-feature-copy {
  align-items:flex-start!important;
  gap:18px!important;
}
.public-page .public-history-panels [data-history-panel] {
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .45s ease, transform .45s ease, visibility .45s ease;
  pointer-events:none;
}
.public-page .public-history-panels [data-history-panel].is-active {
  position:relative;
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto;
}
.public-page .public-history-feature-copy > span {
  flex:0 0 auto;
}
.public-page .public-history-feature-copy p + p {
  margin-top:12px!important;
}
@media(max-width:880px) {
  .public-page .public-history-feature {
    grid-template-columns:1fr!important;
    padding:18px!important;
  }
  .public-page .public-history-carousel {
    min-height:300px;
  }
}
@media(max-width:560px) {
  .public-page .public-history-carousel {
    min-height:250px;
    border-radius:22px;
  }
  .public-page .public-history-feature-copy {
    gap:12px!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  .public-page .public-history-carousel figure,
  .public-page .public-history-panels [data-history-panel] {
    transition:none!important;
    transform:none!important;
  }
}

@media (max-width: 700px) {
  .public-page .public-biography {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    padding: 58px 20px !important;
  }

  .public-page .public-biography-photo.public-cutout-stage {
    grid-column: 1;
    grid-row: 1;
    width: min(100%, 380px) !important;
    height: min(520px, 128vw) !important;
    margin-inline: auto !important;
  }

  .public-page .public-biography-intro {
    grid-column: 1;
    grid-row: 2;
  }

  .public-page .public-biography-heading {
    padding-inline: 0 !important;
  }

  .public-page .public-biography-story {
    grid-column: 1;
  }

  .public-page .public-biography-story .public-story-feature {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 22px 18px;
  }

  .public-page .public-story-feature figure {
    height: 390px;
  }
}

/* Portal publico — refinamento institucional, blog, rodape e midias
   Bloco final de prioridade para evitar conflitos com regras antigas do tema. */
.public-page {
  --public-brand-green: #123d37;
  --public-brand-green-2: #1d8f71;
  --public-brand-hover: #22c55e;
  --public-text-dark: #0e332d;
  --public-muted-text: #58736c;
}

.public-page img,
.public-page video {
  max-width: 100%;
}

.public-page :is(
  .public-blog-header,
  .public-news-heading,
  .public-biography-intro,
  .public-biography-reasons,
  .public-highlight > div:not(.public-highlight-image),
  .public-transparency > div:first-child,
  .public-contact-copy
) {
  max-width: 900px;
}

.public-page :is(.public-blog-header, .public-news-heading) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  gap: 12px !important;
  width: min(980px, 100%) !important;
  margin-inline: auto !important;
  padding-inline: clamp(18px, 4vw, 34px) !important;
  text-align: center !important;
}

.public-page :is(.public-blog-header h2, .public-news-heading h2) {
  margin-inline: auto !important;
  max-width: 760px !important;
  color: var(--public-text-dark) !important;
  text-wrap: balance;
}

.public-page :is(.public-blog-header p, .public-news-heading p) {
  margin-inline: auto !important;
  max-width: 720px !important;
  color: var(--public-muted-text) !important;
  text-wrap: pretty;
}

.public-blog-section .public-blog-all,
.public-blog-section a[aria-label*="sugest"] {
  display: none !important;
}

.public-page :is(
  .public-animated-cta,
  .public-inline-cta,
  .public-news-card a,
  .public-blog-post-body a,
  .public-calendar-actions a,
  .public-footer a,
  .public-footer button,
  button[type="submit"],
  input[type="submit"],
  .btn,
  .button,
  .wp-element-button,
  .wp-block-button__link
) {
  transition:
    background-color .2s ease,
    color .2s ease,
    border-color .2s ease,
    transform .2s ease,
    box-shadow .2s ease !important;
}

.public-page :is(
  .public-animated-cta,
  .public-inline-cta,
  .public-news-card a,
  .public-blog-post-body a,
  .public-calendar-actions a,
  button[type="submit"],
  input[type="submit"],
  .btn,
  .button,
  .wp-element-button,
  .wp-block-button__link
):hover {
  background-color: var(--public-brand-hover) !important;
  border-color: var(--public-brand-hover) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 26px rgba(18, 61, 55, .18) !important;
}

.public-page :is(
  .public-animated-cta,
  .public-inline-cta,
  .public-news-card a,
  .public-blog-post-body a,
  .public-calendar-actions a,
  button,
  a,
  input,
  select,
  textarea
):focus-visible {
  outline: 2px solid var(--public-brand-hover) !important;
  outline-offset: 3px !important;
}

.public-page .public-animated-cta:hover .public-button-label {
  color: #fff !important;
}

.public-page .public-animated-cta:hover .public-button-arrow {
  background: #fff !important;
  color: var(--public-brand-green) !important;
}

.public-blog-section {
  overflow: clip !important;
}

.public-blog-post-media,
.public-video-frame {
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 30% 18%, rgba(34, 197, 94, .16), transparent 30%),
    linear-gradient(135deg, #0b332c, #123d37) !important;
}

.public-blog-post-media img,
.public-blog-post-media video,
.public-video-frame video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #0b332c !important;
}

.public-video-frame video {
  aspect-ratio: 16 / 9;
}

.public-biography-photo.public-cutout-stage {
  background:
    radial-gradient(circle at 50% 44%, rgba(18, 61, 55, .16) 0 42%, transparent 43%),
    linear-gradient(180deg, rgba(18, 61, 55, .04), rgba(18, 61, 55, .09)) !important;
}

.public-biography-photo.public-cutout-stage::before {
  border-color: rgba(18, 61, 55, .28) !important;
}

.public-portrait-orbit,
.public-contact-orbit {
  border-color: rgba(18, 61, 55, .28) !important;
  animation-duration: 22s !important;
}

.public-portrait-orbit::after,
.public-contact-orbit::after {
  background: var(--public-brand-green) !important;
  box-shadow:
    0 0 0 6px rgba(18, 61, 55, .13),
    0 12px 24px rgba(18, 61, 55, .24) !important;
}

.public-biography-photo.public-cutout-stage img,
.public-contact-portrait img {
  object-fit: contain !important;
  filter: drop-shadow(0 22px 32px rgba(18, 61, 55, .22)) !important;
}

.public-footer {
  display: grid !important;
  grid-template-columns: minmax(240px, 1.25fr) minmax(180px, .7fr) minmax(180px, .7fr) minmax(240px, 1fr) !important;
  align-items: start !important;
  gap: clamp(22px, 4vw, 46px) !important;
  width: 100% !important;
  padding: clamp(52px, 7vw, 82px) max(22px, calc((100vw - 1180px) / 2)) 32px !important;
  color: #d7eee7 !important;
  text-align: left !important;
  background:
    radial-gradient(circle at 20% 0, rgba(34, 197, 94, .16), transparent 28%),
    linear-gradient(135deg, #092f29, #123d37 58%, #082f29) !important;
  border-top: 1px solid rgba(215, 238, 231, .16) !important;
}

.public-footer :is(.public-footer-brand, .public-footer-column, .public-footer-cta) {
  display: flex !important;
  align-items: flex-start !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.public-footer .public-logo,
.public-footer-socials {
  justify-content: flex-start !important;
}

.public-footer p {
  display: block !important;
  max-width: 330px !important;
  margin: 0 !important;
  color: #c8e3da !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

.public-footer-column strong,
.public-footer-cta strong {
  color: #fff !important;
  font: 800 13px/1.2 Manrope, system-ui, sans-serif !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.public-footer-column a,
.public-footer-socials a {
  color: #d7eee7 !important;
  text-decoration: none !important;
}

.public-footer-column a:hover,
.public-footer-socials a:hover,
.public-footer-bottom button:hover {
  color: #fff !important;
  transform: translateY(-1px) !important;
}

.public-footer-cta button {
  width: fit-content !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(215, 238, 231, .22) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .08) !important;
}

.public-footer-bottom {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: 100% !important;
  margin-top: 12px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(215, 238, 231, .14) !important;
  color: #b9d8cf !important;
  text-align: center !important;
  font-size: 12px !important;
}

.public-footer-bottom button {
  padding: 0 !important;
  border: 0 !important;
  color: #6ee7b7 !important;
  background: transparent !important;
  font-weight: 800 !important;
}

@media (max-width: 980px) {
  .public-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Segurança da conta e auditoria */
.account-security-editor {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #f4faf7;
}
.account-security-editor > header,
.audit-security-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.account-security-editor header p,
.audit-security-card header p {
  margin: 4px 0 0;
  color: var(--muted);
}
.account-security-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.account-security-grid small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
}
.account-show-password {
  display: flex;
  align-items: center;
  width: auto;
  white-space: nowrap;
  font-size: 11px;
  color: var(--muted);
}
.account-show-password input {
  width: auto;
}
.account-two-factor {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid #bddfd2;
  border-radius: 11px;
  background: #eef8f3;
}
.account-two-factor input {
  width: auto;
  margin-top: 3px;
  accent-color: var(--green);
}
.account-two-factor span,
.account-two-factor b,
.account-two-factor small {
  display: block;
}
.account-two-factor small {
  margin-top: 3px;
  color: var(--muted);
  font-weight: 400;
}
.recovery-code-panel {
  display: grid;
  gap: 14px;
}
.recovery-code-panel p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}
.recovery-code-panel pre {
  margin: 0;
  padding: 18px;
  border: 1px dashed #73a99b;
  border-radius: 12px;
  background: #f3faf7;
  color: var(--green);
  font: 800 16px/1.7 monospace;
  letter-spacing: .08em;
  text-align: center;
}
.access-role-guide {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}
.team-toolbar {
  margin-bottom: 16px;
}
.team-toolbar-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.6fr) repeat(2, minmax(150px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}
.team-toolbar-grid label {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}
.team-toolbar-grid input,
.team-toolbar-grid select {
  display: block;
  width: 100%;
  height: 40px;
  margin-top: 6px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--surface);
  color: var(--ink);
}
.team-toolbar-grid button {
  height: 40px;
  white-space: nowrap;
}
.access-role-guide > div {
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #f7faf8;
}
.access-role-guide b,
.access-role-guide span {
  display: block;
}
.access-role-guide span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}
.user-role-select {
  min-width: 130px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.user-role-select:disabled {
  cursor: not-allowed;
  opacity: .65;
}
.notification-center-button {
  position: relative;
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--green);
}
.notification-center-button i {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 19px;
  height: 19px;
  padding: 0 5px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #b54038;
  color: #fff;
  font: 800 9px/15px Manrope;
  font-style: normal;
}
.notification-center-list {
  display: grid;
  gap: 9px;
}
.notification-center-list > button {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #fff;
  color: var(--ink);
  text-align: left;
}
.notification-center-list > button > span {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff1d5;
  color: #97691e;
  font-weight: 800;
}
.notification-center-list > button.critical > span {
  background: #fde9e7;
  color: #ae493f;
}
.notification-center-list b,
.notification-center-list p {
  display: block;
  margin: 0;
}
.notification-center-list p,
.notification-center-list em {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}
.audit-filter-card {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
}
.audit-filter-grid {
  display: grid;
  grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.audit-filter-grid label {
  font-size: 10px;
  font-weight: 700;
  color: var(--muted);
}
.audit-filter-grid input,
.audit-filter-grid select {
  width: 100%;
  margin-top: 6px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.audit-filter-card footer,
.audit-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.audit-filter-card footer span,
.audit-pagination span {
  color: var(--muted);
  font-size: 11px;
}
.audit-table tr.sensitive td {
  background: #fff9ee;
}
.audit-pagination {
  padding: 14px 20px;
  border-top: 1px solid var(--line);
}
.wa-module-grid,
.wa-operation-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.wa-module-grid .card h3,
.wa-module-grid .card p,
.wa-operation-summary .card span {
  display: block;
  margin: 5px 0 0;
}
.audit-security-card {
  display: grid;
  gap: 18px;
}
.audit-security-card > header .primary {
  width: auto;
}
.audit-security-status {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.audit-security-status > div {
  display: grid;
  gap: 4px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f7faf8;
}
.audit-security-status span,
.audit-security-status small {
  color: var(--muted);
}
html[data-theme=dark] .account-security-editor,
html[data-theme=dark] .audit-security-status > div,
html[data-theme=dark] .account-two-factor,
html[data-theme=dark] .access-role-guide > div,
html[data-theme=dark] .recovery-code-panel pre {
  background: #14332c;
}
@media (max-width: 760px) {
  .workspace header > div:first-of-type {
    display: block;
    min-width: 0;
  }
  .workspace header > div:first-of-type span {
    display: none;
  }
  #pageTitle {
    display: block;
    max-width: 34vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
  }
  .wa-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .wa-tabs button {
    flex: 0 0 auto;
  }
  .wa-module-grid,
  .wa-operation-summary {
    grid-template-columns: 1fr;
  }
  .account-security-grid,
  .audit-security-status,
  .access-role-guide,
  .audit-filter-grid {
    grid-template-columns: 1fr;
  }
  .account-security-editor > header,
  .audit-security-card > header {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 720px) {
  .public-page :is(.public-blog-header, .public-news-heading) {
    padding-inline: 18px !important;
  }

  .public-footer {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .public-footer :is(.public-footer-brand, .public-footer-column, .public-footer-cta) {
    align-items: center !important;
  }

  .public-footer .public-logo,
  .public-footer-socials {
    justify-content: center !important;
  }

  .public-footer p {
    margin-inline: auto !important;
  }
}
@media(max-width:900px) and (min-width:561px){
 .login-shell{display:grid;place-items:center;padding:28px}.login-desktop-copy{display:none}.login-phone{width:min(470px,calc(100vw - 44px))}
}
@media(max-width:560px){.login-desktop-copy{display:none}.login-card{width:100%}.auth-tabs{margin-top:18px}}

/* Notificações temporizadas */
#toast{overflow:hidden;padding:0;min-width:min(390px,calc(100vw - 28px));border-radius:12px;bottom:18px;right:18px}
#toast .toast-content{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 14px 16px 18px}
#toast .toast-progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.78);transform-origin:left;animation:toastCountdown linear forwards}
#toast .toast-seconds{display:inline-grid;place-items:center;min-width:25px;height:25px;margin:0 3px;border-radius:7px;background:rgba(255,255,255,.18);font:800 13px Manrope;color:#fff}
@keyframes toastCountdown{from{transform:scaleX(1)}to{transform:scaleX(0)}}
#toast:not(.show){pointer-events:none}
@media(max-width:560px){#toast{left:14px;right:14px;bottom:14px;min-width:0;max-width:none}}

/* Notificação profissional de exclusão */
#toast.actionable{display:block;padding:0;min-width:min(470px,calc(100vw - 36px));border:1px solid rgba(184,238,207,.24);border-radius:15px;background:linear-gradient(135deg,#125b4b,#187862);box-shadow:0 22px 55px rgba(8,54,44,.3);isolation:isolate}
#toast.actionable:after{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:radial-gradient(circle at 8% 15%,rgba(201,237,77,.13),transparent 28%)}
#toast.actionable .toast-content{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 15px 20px}
#toast.actionable .toast-content:before{content:"⌛";display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.13);color:#dff6e9;font-size:19px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
#toast.actionable .toast-content span{font:700 13px/1.45 Manrope;color:#fff}
#toast.actionable .toast-content span:before{content:"EXCLUSÃO AGENDADA";display:block;margin-bottom:3px;color:#c9ed4d;font:800 8px/1 Manrope;letter-spacing:.14em}
#toast.actionable .toast-content button{min-width:82px;border:1px solid rgba(255,255,255,.72);border-radius:9px;background:#fff;color:#125347;padding:10px 13px;font:800 11px Manrope;box-shadow:0 5px 16px rgba(8,44,37,.14)}
#toast.actionable .toast-content button:hover{background:#effaf5;transform:translateY(-1px)}
#toast.actionable:before{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:rgba(4,38,31,.34)}
#toast.actionable .toast-progress{z-index:2;height:6px;background:linear-gradient(90deg,#c9ed4d,#65e49c);box-shadow:0 0 14px rgba(201,237,77,.42)}
#toast.actionable .toast-seconds{min-width:29px;height:27px;border-radius:8px;background:#fff;color:#155448;box-shadow:0 4px 12px rgba(8,44,37,.18)}
@media(max-width:560px){#toast.actionable .toast-content{grid-template-columns:36px 1fr;padding:14px 13px 19px}.toast-content:before{width:36px!important;height:36px!important}.toast-content button{grid-column:1/-1;width:100%}}

/* Seleção de apoiadores e perfil do administrador */
.selection-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 14px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f5faf7}
.selection-toolbar label{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700}.selection-toolbar input,.supporter-select{width:auto;accent-color:var(--green)}
.selection-toolbar span{margin-right:auto;font-size:10px;color:var(--muted)}.selection-toolbar button{padding:7px 9px;font-size:9px}.selection-toolbar button:disabled{opacity:.42;cursor:not-allowed}
.follower-row:has(.supporter-select){grid-template-columns:auto auto minmax(0,1fr) auto}.follower-row .supporter-select{grid-row:1/4}.follower-row:has(.supporter-select) .follower-place,.follower-row:has(.supporter-select) .wa-mini{grid-column:3}.follower-row:has(.supporter-select) .row-arrow{grid-column:4}
.user-profile-link{min-width:0;border:0;background:none;text-align:left;padding:0;color:inherit}.user-profile-link b,.user-profile-link span,.user-profile-link small{display:block}.user-profile-link small{margin-top:2px;color:#9ac4b8;font-size:8px}.user-profile-link:hover b{text-decoration:underline}
html[data-theme=dark] .selection-toolbar{background:#14332c}

/* Login responsivo final: desktop horizontal e celular vertical */
@media(min-width:901px){
 .login-shell{grid-template-columns:minmax(430px,520px) minmax(520px,680px);gap:clamp(48px,7vw,120px);padding:42px 6vw}
 .login-phone{width:100%;min-height:0;padding:0;border:1px solid rgba(126,191,173,.25);border-radius:22px;background:rgba(4,20,16,.78);box-shadow:0 24px 80px rgba(0,0,0,.48),inset 0 0 45px rgba(33,132,104,.06);backdrop-filter:blur(16px)}
 .login-phone:before,.login-phone:after,.phone-speaker{display:none}
 .login-card{min-height:0;padding:42px 40px 30px;border:0;border-radius:22px;background:transparent}
 .login-card h2{margin-top:28px;font-size:28px}.login-heading .login-mini-logo{width:72px;height:72px;font-size:28px}.login-product{font-size:21px}
 .login-desktop-copy{text-align:center}.desktop-brand-art{display:grid!important;place-items:center!important;width:330px;height:330px;margin:0 auto 22px!important;padding:0!important;border:0!important;border-radius:50%;background:radial-gradient(circle,rgba(90,219,81,.2),rgba(21,84,72,.05) 55%,transparent 70%)!important}
 .desktop-brand-art span{display:grid;place-items:center;width:210px;height:210px;border-radius:48px 48px 70px 70px;background:linear-gradient(145deg,#c9ed4d,#38bb70 48%,#f5fff9 49%,#d8eee5);color:#0a3028;font:900 92px Manrope;clip-path:polygon(0 0,50% 25%,100% 0,100% 72%,50% 100%,0 72%);filter:drop-shadow(0 22px 26px rgba(40,190,106,.3))}
 .login-desktop-copy h1{font-size:clamp(35px,3.2vw,52px);margin:16px 0 20px}.login-desktop-copy p{margin:0 auto;font-size:16px}.desktop-access-note{justify-content:center!important;width:310px;margin:28px auto 0!important}
 .login-desktop-copy>footer{margin-top:20px;color:#718f87;font-size:10px}.desktop-developer-credit{border:0;background:none;color:#96df7b;font-weight:800;cursor:pointer}
}
@media(max-width:900px){
 .login-desktop-copy{display:none}
 .login-card>footer{display:block}
}
@media(max-width:560px){
 .login-shell{min-height:100dvh}.login-phone{min-height:100dvh}.login-card{display:flex;flex-direction:column;justify-content:center;min-height:100dvh;padding:52px 26px 24px}
 .login-heading .login-mini-logo{width:66px;height:66px}.login-product{font-size:20px}.login-card h2{margin-top:30px}
}

/* Acabamento dos campos e proporções do acesso */
.login-phone input,.login-phone input:focus{background:#071712!important;color:#effaf6!important;caret-color:#a9eb91!important}
.login-phone input:-webkit-autofill,.login-phone input:-webkit-autofill:hover,.login-phone input:-webkit-autofill:focus,.login-phone input:-webkit-autofill:active{-webkit-text-fill-color:#effaf6!important;-webkit-box-shadow:0 0 0 1000px #071712 inset!important;box-shadow:0 0 0 1000px #071712 inset!important;transition:background-color 99999s ease-out 0s!important}
.login-phone .login-field:focus-within{border-color:#64c893;box-shadow:0 0 0 3px rgba(77,190,139,.12)}
.login-phone .login-field input::selection{background:#2f8d6f;color:#fff}
@media(min-width:901px){
 .login-shell{grid-template-columns:minmax(430px,520px) minmax(480px,620px)}
 .login-card{padding:38px 40px 28px}.login-card h2{font-size:27px}
 .desktop-brand-art{width:220px!important;height:200px!important;margin-bottom:10px!important}
 .desktop-brand-art span{width:142px;height:142px;border-radius:32px 32px 48px 48px;font-size:62px;filter:drop-shadow(0 16px 22px rgba(40,190,106,.24))}
 .login-desktop-copy h1{max-width:610px;margin:12px auto 18px;font-size:clamp(34px,3vw,47px);line-height:1.08;letter-spacing:-.035em}
 .login-desktop-copy p{max-width:570px;font-size:15px;line-height:1.6}
 .desktop-access-note{margin-top:22px!important;padding-top:18px!important}
}
@media(max-width:560px){
 .login-phone input,.login-phone input:focus{font-size:16px}
 .login-card{padding-top:42px}.login-card h2{font-size:25px}
}

/* Botões consistentes e responsivos */
button{min-height:38px;touch-action:manipulation;transition:background-color .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(107,210,154,.38);outline-offset:2px}
.modal-actions{flex-wrap:wrap}.modal-actions button{min-height:42px}.header-actions{align-items:center;flex-wrap:wrap}.toolbar{align-items:center;flex-wrap:wrap}
.primary,.ghost,.danger,.danger-outline,.transfer-button{display:inline-flex;align-items:center;justify-content:center;text-align:center}
@media(max-width:760px){
 .hero-row{gap:14px}.hero-row .primary{flex:0 0 auto}.toolbar>*{min-height:43px}
 .modal-actions{position:sticky;bottom:-1px;z-index:2;margin:8px -14px -14px;padding:12px 14px;background:var(--white);border-top:1px solid var(--line)}
 .modal-actions button{flex:1 1 130px}.entity-actions .danger-outline{margin-right:0}
 .selection-toolbar{align-items:stretch}.selection-toolbar label,.selection-toolbar span{width:100%}.selection-toolbar button{flex:1 1 145px;min-height:40px}
 .group-enrollment-callout{align-items:stretch;flex-direction:column}.group-enrollment-callout button{width:100%}
 .profile-grid{grid-template-columns:1fr}.profile-grid>div{min-height:70px}
}
@media(max-width:480px){
 .hero-row{display:grid;align-items:stretch}.hero-row>.primary{width:100%}
 .people-toolbar .ghost{flex:1 1 calc(50% - 6px)}
 .header-actions{gap:5px}.header-actions .theme-toggle{min-width:40px}.workspace header{height:auto;min-height:66px;padding-top:8px;padding-bottom:8px}
 dialog{width:calc(100% - 10px);max-height:97dvh}.modal-head{padding:16px}.modal-head h2{font-size:19px}
}

/* Barra de status e controle persistente de som */
.sound-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink);padding:8px 11px;font-size:11px;font-weight:800}.sound-toggle span{font-size:14px}.sound-toggle.muted{background:#f1f3f2;color:#71817d}.sound-toggle:hover{border-color:#79b9a7}
.login-preferences{position:fixed;z-index:30;top:18px;right:20px;display:flex;gap:8px}.login-preferences .login-theme-toggle{position:static}.login-preferences .sound-toggle{border-color:rgba(200,237,77,.35);background:rgba(5,29,25,.72);color:#eaf8f3;backdrop-filter:blur(12px)}.login-preferences .sound-toggle.muted{color:#9cafaa}
#toast,#toast.actionable{display:block;left:50%;right:auto;top:18px;bottom:auto;width:min(680px,calc(100vw - 32px));min-width:0;max-width:none;padding:0;border:1px solid #cfe1da;border-radius:10px;background:var(--white);color:var(--ink);box-shadow:0 14px 38px rgba(15,58,49,.18);transform:translate(-50%,-130%);opacity:0}
#toast.show,#toast.actionable.show{transform:translate(-50%,0);opacity:1}
#toast .toast-content,#toast.actionable .toast-content{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px 16px}
#toast .toast-content:before,#toast.actionable .toast-content:before{content:"✓";display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#e3f4ed;color:#17634f;font:900 17px Manrope;box-shadow:none}
#toast .toast-content span,#toast.actionable .toast-content span{color:var(--ink);font:700 12px/1.45 Manrope}
#toast .toast-content span:before,#toast.actionable .toast-content span:before{content:"ATUALIZAÇÃO DO SISTEMA";display:block;margin-bottom:3px;color:#438173;font:800 8px/1 Manrope;letter-spacing:.13em}
#toast.actionable .toast-content:before{content:"⌛";background:#fff0d8;color:#98641d}
#toast.actionable .toast-content span:before{content:"EXCLUSÃO AGENDADA";color:#98641d}
#toast .toast-content button,#toast.actionable .toast-content button{min-width:82px;border:1px solid #bcd4cc;border-radius:8px;background:#fff;color:#155448;padding:9px 12px;font:800 11px Manrope;box-shadow:none}
#toast:before,#toast.actionable:before{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:#e7efeb}
#toast .toast-progress,#toast.actionable .toast-progress{z-index:2;height:5px;background:linear-gradient(90deg,#1d8069,#75d99d);box-shadow:none}
#toast.actionable .toast-seconds{background:#155448;color:#fff;box-shadow:none}
html[data-theme=dark] .sound-toggle{background:#0e2721;color:var(--ink)}html[data-theme=dark] #toast,html[data-theme=dark] #toast.actionable{border-color:#31584d;background:#0e2721;color:var(--ink)}html[data-theme=dark] #toast .toast-content span{color:var(--ink)}html[data-theme=dark] #toast:before{background:#1d3d34}
@media(max-width:560px){.login-preferences{top:10px;right:10px}.login-preferences b,.header-actions .sound-toggle b{display:none}#toast,#toast.actionable{top:8px;width:calc(100vw - 16px)}#toast .toast-content,#toast.actionable .toast-content{grid-template-columns:34px 1fr;padding:11px 11px 14px}#toast .toast-content:before,#toast.actionable .toast-content:before{width:34px;height:34px}#toast .toast-content button{grid-column:1/-1;width:100%}}

/* Visão Geral territorial */
:root{--red:#d88b85;--red-soft:#f9e9e7;--green-light:#eef8f3}
.territory-card{padding:0;overflow:hidden;border-color:#d8e8e1}.territory-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}.territory-head small{color:#3c806e;font-size:9px;font-weight:800;letter-spacing:.14em}.territory-head h2{font:800 20px Manrope;margin:4px 0}.territory-head p{margin:0;color:var(--muted);font-size:11px}.map-legend{display:flex;align-items:center;justify-content:flex-end;gap:13px;flex-wrap:wrap}.map-legend span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;font-weight:700}.map-legend i{width:9px;height:9px;border-radius:50%}.map-legend .supporter{background:#2f9879}.map-legend .leader{background:#9edc61}.map-legend .visit{background:#5cbf91}.map-legend .demand{background:var(--red)}
#territoryMap{height:360px;border-top:1px solid var(--line);background:#eaf5ef;z-index:1}.leaflet-control-attribution{font-size:8px!important}.territory-marker{background:none;border:0}.territory-marker span{display:grid;place-items:center;width:30px;height:30px;border:3px solid #fff;border-radius:50% 50% 50% 8px;background:var(--marker);color:#fff;font-size:13px;box-shadow:0 5px 14px rgba(17,68,56,.28);transform:rotate(-45deg)}.territory-marker span::first-letter{transform:rotate(45deg)}.leaflet-popup-content{font:500 11px/1.5 "DM Sans",sans-serif}.map-profile-link{margin-top:7px;border:0;border-radius:6px;background:#155448;color:#fff;padding:6px 9px;font-weight:700}.google-map-info{min-width:230px;color:#173c34;font:500 12px/1.4 "DM Sans",sans-serif}.google-map-info>b{display:block;font-size:15px}.google-map-info>span{display:inline-block;margin:3px 0 9px;padding:3px 7px;border-radius:999px;background:#e7f5ef;color:#17644f;font-size:10px;font-weight:800}.google-map-info dl{display:grid;grid-template-columns:82px 1fr;gap:4px 8px;margin:0}.google-map-info dt{color:#72847f}.google-map-info dd{margin:0;font-weight:700}
.strategic-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.strategic-kpi{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;text-align:left;color:var(--ink);transition:.2s}.strategic-kpi:hover{transform:translateY(-2px);border-color:#a9d4c4;box-shadow:0 10px 25px rgba(20,77,65,.09)}.strategic-kpi>span:nth-child(2){display:flex;flex-direction:column}.strategic-kpi small{color:var(--muted);font-size:9px;font-weight:700}.strategic-kpi strong{font:800 24px Manrope;margin:2px 0}.strategic-kpi em{font-style:normal;color:#38816f;font-size:8px}.strategic-kpi>b{color:#77aa9d}
.strategic-kpis.three-kpis{grid-template-columns:repeat(3,1fr)}
.strategic-bottom{display:grid;grid-template-columns:1.05fr 1fr 1.2fr;gap:14px;margin-top:14px}.strategic-bottom>.card{min-height:290px}.strategic-chart{height:215px}.agenda-line{width:100%;border:0;border-top:1px solid var(--line);background:transparent;color:inherit;padding:11px 2px;display:grid;grid-template-columns:48px 1fr;gap:10px;text-align:left}.agenda-line:hover{background:var(--green-light)}.agenda-line time{color:#317b68;font-size:10px;font-weight:800}.agenda-line span b,.agenda-line span small{display:block}.agenda-line span b{font-size:11px}.agenda-line span small{margin-top:3px;color:var(--muted);font-size:9px}.dashboard-empty{height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.dashboard-empty>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e5f4ed;color:#2b846d;font-weight:900}.dashboard-empty b{margin-top:10px;color:var(--ink);font-size:12px}.dashboard-empty small{margin-top:4px;max-width:200px}
.logout-button{display:flex!important;align-items:center;gap:5px;padding:7px!important;border-radius:7px!important;color:#dfaaa5!important}.logout-button b{display:none;font-size:9px!important;color:inherit!important}.logout-button:hover{background:rgba(216,139,133,.13)!important;color:#f0c2bd!important}
html[data-theme=dark]{--red:#c87872;--red-soft:#3a2422;--green-light:#14332c}html[data-theme=dark] .territory-card{border-color:#2b5046}html[data-theme=dark] #territoryMap{border-color:#2b5046;background:#102720}html[data-theme=dark] .strategic-kpi em{color:#83c9b5}html[data-theme=dark] .leaflet-popup-content-wrapper,html[data-theme=dark] .leaflet-popup-tip{background:#0e2721;color:#e7f5f0}
.map-filter-row{display:grid;grid-template-columns:minmax(260px,2fr) minmax(210px,1fr);gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.map-filter-row label{font-size:10px;font-weight:800;color:var(--muted)}.map-filter-row input,.map-filter-row select{width:100%;margin-top:6px}.map-actions{display:flex;align-items:center;gap:8px;padding:9px 16px;border-top:1px solid var(--line);background:var(--surface)}.map-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--green);padding:8px 11px;font-weight:800;cursor:pointer}.map-actions button:hover{background:var(--green-light)}.map-actions small{margin-left:auto;color:var(--muted)}@media(max-width:720px){.map-filter-row{grid-template-columns:1fr}.map-actions{flex-wrap:wrap}.map-actions small{width:100%;margin-left:0}}
.leader-header-actions{display:flex;gap:8px;flex-wrap:wrap}.leadership-kpis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:14px}.leadership-kpis article{padding:14px}.leadership-kpis strong,.leadership-kpis span{display:block}.leadership-kpis strong{font:800 24px Manrope;color:var(--green)}.leadership-kpis span{margin-top:4px;color:var(--muted);font-size:9px}.leadership-filters{padding:14px;margin-bottom:15px}.leader-filter-main{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px}.leadership-filters label{font-size:9px;font-weight:800;color:var(--muted)}.leadership-filters input,.leadership-filters select{width:100%;margin-top:5px}.leader-filter-footer{display:flex;align-items:end;gap:9px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.leader-filter-footer>label{min-width:210px}.leader-filter-footer>small{margin-left:auto;color:var(--muted)}.view-switch{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.view-switch button{border:0;border-left:1px solid var(--line);background:var(--surface);color:var(--muted);padding:9px 11px;font-size:10px;font-weight:800}.view-switch button:first-child{border-left:0}.view-switch button.active{background:var(--green);color:#fff}.leadership-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.leadership-card{padding:16px}.leadership-card header{display:flex;align-items:center;gap:10px}.leadership-card header>div{min-width:0;flex:1}.leadership-card h3{margin:0;font:800 15px Manrope}.leadership-card header p{margin:3px 0 0;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leader-status{display:inline-flex;border-radius:999px;padding:5px 8px;background:#e3f3ed;color:#226d5b;font-size:8px;font-weight:800}.leader-status.sem-atividade-recente,.leader-status.em-acompanhamento{background:#fff0d7;color:#8a651e}.leader-status.inativa{background:#edf0ef;color:#697773}.leader-status.cadastro-pendente{background:#f7e4e1;color:#9a4a43}.leader-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0}.leader-card-metrics span{padding:9px;border-radius:9px;background:var(--green-light);font-size:8px;color:var(--muted)}.leader-card-metrics b{display:block;color:var(--green);font-size:16px}.leadership-card dl{display:grid;grid-template-columns:110px 1fr;gap:7px;margin:0}.leadership-card dt{color:var(--muted);font-size:9px}.leadership-card dd{margin:0;font-size:9px;font-weight:700}.leadership-card dd.attention{color:var(--red)}.leadership-card footer{display:flex;gap:6px;margin-top:15px;flex-wrap:wrap}.leadership-card footer button{flex:1;font-size:9px;white-space:nowrap}.leadership-table{overflow:auto}.leadership-network{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.network-branch{overflow:hidden}.network-branch>button{width:100%;border:0;background:var(--green);color:#fff;padding:14px;display:grid;grid-template-columns:auto 1fr;text-align:left;gap:4px 10px}.network-branch>button .leader-avatar{grid-row:1/3}.network-branch>button small{opacity:.75}.network-branch>div>button{width:100%;border:0;border-top:1px solid var(--line);background:var(--surface);padding:10px 13px;display:grid;grid-template-columns:auto 1fr;gap:3px 9px;text-align:left;color:var(--ink)}.network-branch>div>button .mini-avatar{grid-row:1/3}.network-branch>div>button small{color:var(--muted)}.network-branch>div>p{padding:12px;margin:0;color:var(--muted);font-size:10px}.leadership-empty{text-align:center;padding:45px}.leadership-empty p{color:var(--muted)}@media(max-width:1180px){.leadership-kpis{grid-template-columns:repeat(4,1fr)}.leader-filter-main{grid-template-columns:repeat(3,1fr)}.leadership-cards,.leadership-network{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.leader-header-actions{display:grid;grid-template-columns:1fr 1fr}.leader-header-actions .primary{grid-column:1/-1}.leadership-kpis{grid-template-columns:repeat(2,1fr)}.leader-filter-main{grid-template-columns:1fr}.leader-filter-footer{align-items:stretch;flex-direction:column}.leader-filter-footer>label{min-width:0}.leader-filter-footer>small{margin-left:0}.view-switch{width:100%}.view-switch button{flex:1}.leadership-cards,.leadership-network{grid-template-columns:1fr}.leadership-card footer{display:grid;grid-template-columns:1fr 1fr}.leadership-card footer .primary{grid-column:1/-1}.leadership-table table,.leadership-table tbody,.leadership-table tr,.leadership-table td{display:block}.leadership-table thead{display:none}.leadership-table tr{padding:12px;border-bottom:1px solid var(--line)}.leadership-table td{padding:4px;border:0}}
.filter-panel select,.filter-panel input,.leadership-filters select,.leadership-filters input,.visit-toolbar input{height:40px;border:1px solid #d6e5df!important;border-radius:9px!important;background:var(--surface)!important;color:var(--ink)!important;padding:0 12px!important;outline:0;box-shadow:none!important}.filter-panel select:focus,.filter-panel input:focus,.leadership-filters select:focus,.leadership-filters input:focus,.visit-toolbar input:focus{border-color:#54aa91!important;box-shadow:0 0 0 3px rgba(65,155,128,.12)!important}.map-filter-row,.leader-filter-footer{border-top-color:#edf3f0}.leader-group{border-radius:16px}.leader-group>header{min-height:82px}.leader-toggle{padding:15px}.follower-row{min-height:74px}.people-overview>div{border-radius:14px;box-shadow:0 4px 18px rgba(22,61,54,.04)}.visit-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.visit-kpis article{padding:15px}.visit-kpis strong,.visit-kpis span{display:block}.visit-kpis strong{font:800 25px Manrope;color:var(--green)}.visit-kpis span{color:var(--muted);font-size:9px}.visit-toolbar{display:flex;align-items:end;justify-content:space-between;gap:15px;padding:13px;margin-bottom:14px}.visit-toolbar>label{width:min(440px,100%);font-size:9px;font-weight:800;color:var(--muted)}.visit-tabs{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.visit-tabs button{border:0;border-left:1px solid var(--line);background:var(--surface);color:var(--muted);padding:10px 14px;font-weight:800}.visit-tabs button:first-child{border-left:0}.visit-tabs button.active{background:var(--green);color:#fff}.visit-board{display:grid;gap:10px}.visit-card{display:grid;grid-template-columns:105px minmax(230px,1.2fr) minmax(280px,1fr) auto;align-items:center;gap:16px;padding:14px 17px}.visit-date{border-right:1px solid var(--line)}.visit-date b,.visit-date span{display:block}.visit-date b{font-size:12px}.visit-date span{color:var(--green);font-weight:800;margin-top:5px}.visit-kind{display:inline-flex;padding:4px 7px;border-radius:999px;background:var(--green-light);color:var(--green);font-size:8px;font-weight:800}.visit-main button{border:0;background:none;padding:0;color:inherit}.visit-main h3{margin:6px 0 2px;font-size:14px}.visit-main p,.visit-main small{display:block;margin:0;color:var(--muted);font-size:9px}.visit-demand small,.visit-demand b,.visit-demand span{display:block}.visit-demand small{color:var(--muted);font-size:8px}.visit-demand b{font-size:10px;margin:4px 0}.visit-demand span{color:var(--muted);font-size:9px}.visit-actions{display:flex;flex-direction:column;gap:6px}.visit-actions a{border:1px solid var(--line);border-radius:8px;padding:8px;color:var(--green);text-align:center;text-decoration:none;font-size:9px;font-weight:800}.profile-demands{border:1px solid var(--line);border-radius:12px;overflow:hidden}.profile-demands>header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--green-light)}.profile-demands>header b,.profile-demands>header span{display:block}.profile-demands>header span{color:var(--muted);font-size:9px;margin-top:3px}.profile-demands article{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;padding:11px 14px;border-top:1px solid var(--line)}.profile-demands article div b,.profile-demands article div span{display:block}.profile-demands article div span,.profile-demands article em{color:var(--muted);font-size:9px;font-style:normal}.profile-demands article p{margin:0;font-size:10px;font-weight:700}.profile-demand-empty{padding:18px;text-align:center;color:var(--muted);font-size:10px}@media(max-width:900px){.visit-kpis{grid-template-columns:repeat(2,1fr)}.visit-card{grid-template-columns:85px 1fr}.visit-demand{grid-column:2}.visit-actions{grid-column:1/-1;flex-direction:row}.visit-actions>*{flex:1}}@media(max-width:600px){.visit-toolbar{align-items:stretch;flex-direction:column}.visit-tabs{width:100%}.visit-tabs button{flex:1}.visit-card{grid-template-columns:1fr}.visit-date{border-right:0;border-bottom:1px solid var(--line);padding-bottom:8px}.visit-demand,.visit-actions{grid-column:1}.profile-demands article{grid-template-columns:1fr}}
@media(min-width:1200px){.logout-button b{display:block}.user-card{grid-template-columns:36px minmax(0,1fr) auto}}
@media(max-width:1100px){#territoryMap{height:320px}.strategic-bottom{grid-template-columns:1fr 1fr}.strategic-bottom>.card:last-child{grid-column:1/-1}.strategic-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.territory-head{align-items:flex-start;flex-direction:column}.map-legend{justify-content:flex-start}#territoryMap{height:300px}.strategic-kpis,.strategic-bottom{grid-template-columns:1fr}.strategic-bottom>.card:last-child{grid-column:auto}.strategic-bottom>.card{min-height:260px}.strategic-chart{height:190px}}
.strategic-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.strategic-bottom{grid-template-columns:1fr}}

/* Painel de acesso definitivo — adaptado do modelo fornecido */
.login-shell{isolation:isolate;grid-template-columns:minmax(430px,510px) minmax(520px,680px);gap:clamp(54px,7vw,118px);padding:42px clamp(28px,6vw,110px);background:radial-gradient(circle at 71% 43%,rgba(75,210,121,.14),transparent 27%),radial-gradient(circle at 24% 55%,rgba(27,130,97,.13),transparent 31%),linear-gradient(135deg,#020806 0%,#061a14 54%,#020705 100%)}
.login-shell:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 49.8%,rgba(102,224,153,.06) 50%,transparent 50.2%)}
.login-ambient{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.login-ambient i{position:absolute;border:1px solid rgba(84,218,158,.13);border-radius:50%}.login-ambient i:nth-child(1){width:650px;height:650px;right:8%;top:8%}.login-ambient i:nth-child(2){width:420px;height:420px;right:14%;top:20%}.login-ambient i:nth-child(3){width:240px;height:240px;left:15%;bottom:-150px}
.login-phone{width:100%;min-height:0;padding:0;border:1px solid rgba(121,195,164,.25);border-radius:24px;background:linear-gradient(160deg,rgba(7,29,23,.94),rgba(2,11,8,.96));box-shadow:0 30px 90px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.025);backdrop-filter:blur(18px)}
.login-phone:before,.login-phone:after,.phone-speaker{display:none}.login-card{width:100%;min-height:0;padding:38px 40px 29px;border:0;border-radius:24px;background:radial-gradient(circle at 50% 0,rgba(54,159,116,.1),transparent 30%);overflow:visible}.login-card:after{display:none}
.mgd-mark{position:relative;display:inline-block;overflow:hidden;background:none!important;box-shadow:none!important}.mgd-mark:before,.mgd-mark:after,.mgd-mark i,.mgd-mark b{content:"";position:absolute;display:block}.mgd-mark:before{inset:7% 50% 13% 7%;background:linear-gradient(145deg,#c9f052,#43c878);clip-path:polygon(0 0,100% 26%,100% 61%,52% 48%,52% 100%,0 73%)}.mgd-mark:after{inset:7% 7% 13% 50%;background:linear-gradient(145deg,#fff,#cae7dc);clip-path:polygon(0 26%,100% 0,100% 73%,48% 100%,48% 48%,0 61%)}.mgd-mark i{z-index:2;inset:36% 34% 27%;background:#061711;clip-path:polygon(0 0,50% 28%,100% 0,100% 56%,50% 100%,0 56%)}
.login-heading .login-mini-logo{width:68px;height:68px;margin-bottom:12px;border-radius:0}.login-product{font-size:20px;letter-spacing:-.02em}.login-product strong{color:#83db62}.login-card h2{margin:27px 0 6px;font-size:28px;letter-spacing:-.035em}.login-card .login-heading>p{font-size:12px;color:#91a8a1}
.auth-tabs{margin:25px 0 17px;padding:4px;border-color:#1d493c;background:#061813}.auth-tabs button{min-height:38px;color:#7f9991}.auth-tabs button.active{background:#174437;color:#effaf6;box-shadow:inset 0 -2px #74dd5d}
.login-card form>label.login-field,.login-card .otp-row label.login-field{min-height:48px;border-color:#234b40;background:#061510}.login-card .login-field>span{color:#7cdc91}.login-phone input,.login-phone input:focus{min-height:46px;background:transparent!important}.login-options{margin-top:14px;font-size:11px}.login-options button{font-size:11px}
.login-card .primary.wide{min-height:50px;margin-top:22px;background:linear-gradient(90deg,#42bc78,#75d955);color:#03130d;border:0;font-size:14px;box-shadow:0 12px 30px rgba(63,190,119,.2)}.login-card .primary.wide:hover{background:linear-gradient(90deg,#4cca82,#83e461);transform:translateY(-1px)}.login-card .primary.wide:disabled{opacity:.68;cursor:wait;transform:none}
.login-divider{margin:18px 0 13px}.create-account-link{min-height:46px;border-color:#319873;color:#8de4c3}.create-account-link:hover{background:rgba(66,190,133,.08);border-color:#69cca6}.login-security{margin-top:18px}.login-card>footer{margin-top:17px}
.login-desktop-copy{display:block;text-align:center}.desktop-brand-art{display:grid!important;place-items:center!important;width:270px!important;height:230px!important;margin:0 auto 10px!important;padding:0!important;border:0!important;background:radial-gradient(circle,rgba(80,216,117,.18),transparent 66%)!important}.desktop-brand-art .mgd-mark{width:210px;height:210px;filter:drop-shadow(0 24px 30px rgba(48,207,113,.22))}
.login-desktop-copy>span{color:#96e66e}.login-desktop-copy h1{max-width:650px;margin:12px auto 19px;font-size:clamp(38px,3.35vw,54px);line-height:1.05;letter-spacing:-.045em}.login-desktop-copy h1 em{color:#86dc65}.login-desktop-copy p{max-width:590px;margin:auto;color:#b6cdc5;font-size:16px;line-height:1.65}.desktop-access-note{justify-content:center!important;width:320px;margin:26px auto 0!important;padding-top:19px!important}.desktop-access-note b{color:#c8ef4c!important}.login-desktop-copy>footer{margin-top:20px;color:#769188;font-size:10px}
.login-preferences{position:fixed;z-index:30;top:16px;right:16px;display:flex;gap:8px}.login-preferences .login-theme-toggle{position:static}.login-preferences button{border-color:rgba(116,190,163,.25);background:rgba(5,26,20,.82);color:#cce5dc;backdrop-filter:blur(12px)}
@media(max-width:900px){.login-shell{display:grid;grid-template-columns:1fr;place-items:center;padding:30px 20px}.login-desktop-copy{display:none}.login-phone{width:min(480px,100%)}.login-card>footer{display:block}}
@media(max-width:560px){html,body{max-width:100%;overflow-x:hidden}.login-shell{display:block;width:100%;max-width:100vw;min-height:100dvh;padding:0;background:linear-gradient(165deg,#061a14,#020806 68%)}.login-shell:before,.login-shell:after,.login-ambient{display:none}.login-phone{width:100%;max-width:100vw;min-height:100dvh;border:0;border-radius:0;box-shadow:none;background:transparent}.login-card{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:100vw;min-height:100dvh;padding:76px 24px 28px;border-radius:0;background:radial-gradient(circle at 50% 17%,rgba(54,159,116,.13),transparent 28%)}.login-heading .login-mini-logo{width:74px;height:74px}.login-card h2{margin-top:31px;font-size:27px}.auth-tabs{width:100%;margin-top:22px}.login-options{gap:12px}.login-options>*{min-width:0}.login-options button{white-space:nowrap}.login-card .primary.wide,.create-account-link{min-height:52px}.login-preferences{top:10px;right:10px}.login-preferences button{min-width:42px;padding:8px}.login-preferences button b{display:none}}
@media(max-width:360px){.login-card{padding-left:18px;padding-right:18px}.auth-tabs button{font-size:9px}.login-card h2{font-size:24px}}
@media(max-height:760px) and (min-width:561px){.login-card{padding-top:28px;padding-bottom:24px}.login-heading .login-mini-logo{width:56px;height:56px}.login-card h2{margin-top:18px}.auth-tabs{margin-top:17px}.login-security{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.login-shell *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Ajustes finais: alertas, perfil, ações críticas e login */
#toast,#toast.actionable{left:auto;right:20px;top:auto;bottom:20px;width:min(430px,calc(100vw - 40px));transform:translate(125%,0)}
#toast.show,#toast.actionable.show{transform:translate(0,0)}
.danger,.ghost.danger{border:1px solid #c56f68;background:#b95851;color:#fff;box-shadow:0 5px 14px rgba(153,65,58,.12)}
.danger:hover,.ghost.danger:hover{background:#aa4e48;border-color:#aa4e48;color:#fff}
.danger-outline{border-color:#dcaaa5;background:#fffafa;color:#984a44}
html[data-theme=dark] .danger,html[data-theme=dark] .ghost.danger{background:#a9554f;border-color:#bd6d66;color:#fff}
.user-card>.avatar{overflow:hidden;padding:0}.user-card>.avatar img{width:100%;height:100%;object-fit:cover}
.account-photo-editor{display:flex;align-items:center;gap:18px;padding:17px;border:1px solid var(--line);border-radius:13px;background:#f4faf7}.account-photo-preview{display:grid;place-items:center;flex:0 0 92px;width:92px;height:92px;overflow:hidden;border-radius:24px;background:linear-gradient(145deg,#d9efe8,#edf7f3);color:var(--green);font:800 25px Manrope}.account-photo-preview img{width:100%;height:100%;object-fit:cover}.account-photo-editor b,.account-photo-editor p{display:block}.account-photo-editor p{margin:4px 0 10px;color:var(--muted);font-size:10px}.account-photo-editor input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.account-photo-button{display:inline-flex;width:auto;margin:0;padding:8px 12px;cursor:pointer}.account-access-note{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:#eef8f3}.account-access-note b{color:var(--green)}.account-access-note span{color:var(--muted);font-size:11px}
html[data-theme=dark] .account-photo-editor,html[data-theme=dark] .account-access-note{background:#14332c}
.desktop-access-note{display:grid!important;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:12px!important}.desktop-access-note b{line-height:1}.desktop-access-note small{text-align:left}
@media(max-width:560px){#toast,#toast.actionable{left:12px;right:12px;top:auto;bottom:12px;width:auto;transform:translateY(130%)}#toast.show,#toast.actionable.show{transform:translateY(0)}.account-photo-editor{align-items:flex-start}.account-photo-preview{flex-basis:74px;width:74px;height:74px;border-radius:19px}}

/* Apoiadores: seleção em massa clara, confortável e responsiva */
.selection-toolbar{display:grid;grid-template-columns:auto minmax(80px,1fr) auto auto;align-items:center;gap:10px;margin:0 14px 14px;padding:12px 13px;border:1px solid #cfe3db;border-radius:12px;background:#f4faf7;box-shadow:0 4px 14px rgba(20,84,72,.04)}
.selection-toolbar label{gap:9px;min-height:34px;color:var(--ink);font-size:10px}.selection-toolbar span{margin:0;color:var(--muted);font-size:10px}.selection-toolbar span b{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-right:5px;border-radius:999px;background:#dff2eb;color:#155448;font:800 10px Manrope}
.selection-toolbar button{min-height:35px;padding:8px 12px;border-radius:8px;font-size:9px}.selection-toolbar button:disabled{border-color:#e4ebe8;background:#f8faf9;color:#a5b2ae;opacity:1}
.selection-toolbar [type=checkbox],.supporter-select{appearance:none;width:18px!important;height:18px!important;min-width:18px;margin:0;border:1.5px solid #9ab8af;border-radius:5px;background:#fff;display:grid;place-items:center;accent-color:transparent}
.selection-toolbar [type=checkbox]:checked,.supporter-select:checked{border-color:#17705e;background:#17705e}.selection-toolbar [type=checkbox]:checked:after,.supporter-select:checked:after{content:"✓";color:#fff;font:900 12px/1 Manrope}.selection-toolbar [type=checkbox]:indeterminate{border-color:#17705e;background:#17705e}.selection-toolbar [type=checkbox]:indeterminate:after{content:"—";color:#fff;font:900 11px/1 Manrope}
.follower-row .supporter-select{align-self:center;margin:0 3px}.followers-head{padding-top:11px;padding-bottom:11px}.followers-head span{line-height:1.35}
.leader-group{border-color:#d6e5df;box-shadow:0 9px 24px rgba(23,76,65,.055)}.leader-group>header{border-bottom-color:#dbe8e3}.leader-details{white-space:nowrap}.add-follower-button{min-height:44px;border-radius:9px}.danger-outline{border-color:#efb8b3;background:#fffafa;color:#a84139}.danger-outline:hover{border-color:#df8e86;background:#fcecea}
html[data-theme=dark] .selection-toolbar{border-color:#31584d;background:#112f28}html[data-theme=dark] .selection-toolbar span b{background:#1c493e;color:#aee2d2}html[data-theme=dark] .selection-toolbar [type=checkbox],html[data-theme=dark] .supporter-select{border-color:#54786e;background:#0d241f}html[data-theme=dark] .selection-toolbar button:disabled{border-color:#2a443d;background:#17352e;color:#69877f}html[data-theme=dark] .danger-outline{border-color:#7b4844;background:#321f1d;color:#f1aaa4}

/* Barra de notificações: fixa no canto inferior, sem aparência de balão */
#toast,#toast.actionable{left:auto;right:22px;top:auto;bottom:22px;width:min(430px,calc(100vw - 32px));border:1px solid #cfe0da;border-left:5px solid #27846e;border-radius:11px;background:#fff;color:#16352f;box-shadow:0 18px 45px rgba(13,57,48,.2);transform:translateX(calc(100% + 40px));opacity:0}
#toast.show,#toast.actionable.show{transform:translateX(0);opacity:1}
#toast.error{border-color:#efcfcc;border-left-color:#cb625a;background:#fffafa}#toast.error .toast-content:before{content:"!";background:#f8e2df;color:#a73e37}#toast.error .toast-content span:before{content:"ATENÇÃO";color:#a84b44}
#toast.success{border-left-color:#25816a}#toast.success .toast-content:before{content:"✓";background:#dff2eb;color:#17634f}
#toast.actionable{border-color:#efcfcc;border-left-color:#bf554e;background:#fffafa}#toast.actionable .toast-content:before{content:"⌛";background:#f7e4e1;color:#a44039}#toast.actionable .toast-content span:before{content:"EXCLUSÃO AGENDADA";color:#a44039}
#toast .toast-content,#toast.actionable .toast-content{grid-template-columns:40px minmax(0,1fr) auto;padding:14px 14px 18px 13px}#toast .toast-content span,#toast.actionable .toast-content span{color:#16352f;font-size:12px}
#toast:before,#toast.actionable:before{height:5px;background:#e7efeb}#toast .toast-progress{height:5px;background:#2f9a7d}#toast.actionable .toast-progress{height:5px;background:#d66b62;box-shadow:none}#toast.actionable .toast-seconds{background:#a64039;color:#fff}
html[data-theme=dark] #toast,html[data-theme=dark] #toast.success{border-color:#31584d;border-left-color:#57b899;background:#0e2721}html[data-theme=dark] #toast.error,html[data-theme=dark] #toast.actionable{border-color:#69413d;border-left-color:#dd756d;background:#291b19}html[data-theme=dark] #toast .toast-content span,html[data-theme=dark] #toast.actionable .toast-content span{color:#e7f5f0}html[data-theme=dark] #toast:before{background:#1d3d34}
.recipient-consent-confirmation{padding:10px 12px;border:1px solid #b9dcd0;border-radius:9px;background:#f4fbf8}
.import-group-filter{display:grid;gap:4px;min-width:220px}.import-group-filter span{font-size:9px;font-weight:800;color:var(--muted);letter-spacing:.04em}.import-filters{align-items:end!important}.import-filters #refreshImportGroups{min-height:42px;white-space:nowrap}
html[data-theme=dark] .recipient-consent-confirmation{border-color:#31584d;background:#14332c}
@media(max-width:720px){.selection-toolbar{grid-template-columns:1fr 1fr}.selection-toolbar label,.selection-toolbar span{width:auto}.selection-toolbar button{width:100%;min-height:40px}.selection-toolbar span{text-align:right}.follower-row:has(.supporter-select){grid-template-columns:auto auto minmax(0,1fr) auto}}
@media(max-width:560px){#toast,#toast.actionable{left:10px;right:10px;top:auto;bottom:10px;width:auto;transform:translateY(130%)}#toast.show,#toast.actionable.show{transform:translateY(0)}#toast .toast-content,#toast.actionable .toast-content{grid-template-columns:34px 1fr auto}.selection-toolbar{margin:0 10px 12px;padding:10px}.selection-toolbar button{grid-column:span 1}}

/* Convite com confirmação de presença */
.event-invite-builder{margin:13px 0;padding:13px;border:1px solid #cde3da;border-radius:12px;background:#f4faf7}.event-invite-toggle{display:flex!important;align-items:center;gap:9px;margin:0!important;color:#174f44;font-size:11px!important}.event-invite-toggle input{width:17px!important;height:17px;margin:0!important;accent-color:#155448}.event-invite-fields{display:grid;grid-template-columns:1.4fr .8fr .6fr;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid #d9e9e3}.event-invite-fields label{margin:0!important;font-size:9px!important}.event-invite-fields input{margin-top:6px!important;padding:10px!important}.event-invite-fields .full{grid-column:1/-1}.event-invite-fields>small{color:var(--muted);font-size:9px}
html[data-theme=dark] .event-invite-builder{border-color:#31584d;background:#112f28}html[data-theme=dark] .event-invite-toggle{color:#dff4ed}html[data-theme=dark] .event-invite-fields{border-color:#31584d}
@media(max-width:650px){.event-invite-fields{grid-template-columns:1fr 1fr}.event-invite-fields label:first-child{grid-column:1/-1}}

/* Refinamento dos cards de liderança e seleção em massa */
.leader-role-label{display:block;margin-bottom:2px;color:#438173;font:800 8px/1.15 Manrope;letter-spacing:.13em;text-transform:uppercase}.leader-main .leader-role-label+b{font-size:15px;color:var(--ink)}
.selection-toolbar{grid-template-columns:minmax(125px,1fr) minmax(100px,.75fr);align-items:center}.selection-toolbar label{display:flex;align-items:center;white-space:nowrap}.selection-toolbar>span{display:flex;align-items:center;justify-content:flex-end;gap:2px;white-space:nowrap;text-align:right}.selection-toolbar button{width:100%;min-height:38px}.selection-toolbar button:nth-of-type(1){grid-column:1}.selection-toolbar button:nth-of-type(2){grid-column:2}
html[data-theme=dark] .leader-role-label{color:#75b9a7}

/* No tema claro a notificação é sempre branca com acentos verdes */
html:not([data-theme=dark]) #toast,html:not([data-theme=dark]) #toast.success{background:#fff;color:#16352f;border-color:#cfe0da;border-left-color:#27846e}
html:not([data-theme=dark]) #toast .toast-content span,html:not([data-theme=dark]) #toast.success .toast-content span{color:#16352f}
html:not([data-theme=dark]) #toast .toast-content:before,html:not([data-theme=dark]) #toast.success .toast-content:before{background:#e1f3ec;color:#17634f}
html:not([data-theme=dark]) #toast .toast-content span:before,html:not([data-theme=dark]) #toast.success .toast-content span:before{color:#438173}
html:not([data-theme=dark]) #toast .toast-progress,html:not([data-theme=dark]) #toast.success .toast-progress{background:#2f9a7d}
@media(max-width:430px){.selection-toolbar{grid-template-columns:1fr}.selection-toolbar>span{justify-content:flex-start;text-align:left}.selection-toolbar button:nth-of-type(1),.selection-toolbar button:nth-of-type(2){grid-column:1}}

/* Métricas detalhadas dos convites */
.event-metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px}.event-metric-grid span{padding:8px;border-radius:8px;background:var(--green-light);color:var(--muted);font-size:8px}.event-metric-grid span:last-child{grid-column:1/-1}.event-metric-grid b{display:block;margin-bottom:2px;color:var(--green);font:800 16px Manrope}.visit-tabs{flex-wrap:wrap}.visit-tabs button b{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:3px;border-radius:999px;background:var(--green-light);color:var(--green);font-size:8px}.visit-tabs button.active b{background:rgba(255,255,255,.2);color:#fff}
@media(max-width:720px){.event-metric-grid{grid-template-columns:1fr 1fr}}

/* Login institucional suave com retrato */
.login-shell{grid-template-columns:minmax(420px,500px) minmax(540px,680px);gap:clamp(45px,6vw,96px);background:radial-gradient(circle at 74% 40%,rgba(103,190,146,.16),transparent 32%),linear-gradient(135deg,#0a241d 0%,#12362c 52%,#0b2922 100%)}
.login-shell:after{opacity:.22}.login-ambient{opacity:.28}.login-phone{border-color:rgba(167,210,192,.28);background:linear-gradient(160deg,rgba(15,49,40,.92),rgba(10,35,29,.95));box-shadow:0 24px 70px rgba(2,20,15,.28)}.login-card{background:radial-gradient(circle at 50% 0,rgba(111,190,151,.1),transparent 32%)}
.login-desktop-copy{display:flex;align-items:center;flex-direction:column;justify-content:center;max-width:680px}.desktop-person-portrait{position:relative;width:min(350px,70%);height:min(44vh,410px);min-height:310px;margin:0 auto 20px;overflow:hidden;border:1px solid rgba(213,237,226,.38);border-radius:170px 170px 30px 30px;background:#cfdadf;box-shadow:0 22px 55px rgba(4,31,24,.25)}.desktop-person-portrait:after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(transparent,rgba(8,43,34,.42));pointer-events:none}.desktop-person-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.92) contrast(.97)}
.desktop-slogan{text-align:center}.desktop-slogan>span{display:block;color:#b9e7ce;font:800 10px Manrope;letter-spacing:.22em}.desktop-slogan h1{max-width:620px;margin:12px auto 0;color:#f5fbf8;font:700 clamp(32px,2.8vw,45px)/1.08 Manrope;letter-spacing:-.035em}.desktop-slogan h1 em{color:#91d6ae;font-style:normal}.login-desktop-copy>footer{margin-top:19px;color:#a6c0b7;font-size:10px}.desktop-developer-credit{color:#c7ead8}
.login-card .primary.wide{background:linear-gradient(90deg,#4aa77f,#70bd91);box-shadow:0 10px 24px rgba(41,123,91,.16)}.login-card .primary.wide:hover{background:linear-gradient(90deg,#55b18a,#7ac79b)}.auth-tabs button.active{box-shadow:inset 0 -2px #8bc9aa}.create-account-link{border-color:#68a98e;color:#bde4d3}
@media(max-width:1100px) and (min-width:901px){.login-shell{grid-template-columns:minmax(390px,470px) minmax(400px,1fr);gap:35px;padding-left:35px;padding-right:35px}.desktop-person-portrait{width:min(310px,78%);height:350px}.desktop-slogan h1{font-size:34px}}
@media(max-width:900px){.login-shell{background:radial-gradient(circle at 50% 12%,rgba(102,186,145,.12),transparent 28%),linear-gradient(160deg,#0d3027,#0a251e 68%)}.login-desktop-copy{display:none}}

/* Legibilidade configurável e alinhamento global */
.visit-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,390px);align-items:end!important;gap:18px!important}.visit-toolbar>.visit-tabs{align-self:end}.visit-toolbar>label{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:11px!important;font-weight:800}.visit-toolbar>label input{width:100%;min-height:42px;margin:0;padding:10px 12px;font-size:12px!important}.visit-tabs button{min-height:42px;padding:10px 14px;font-size:11px!important}.event-confirmation-head label{font-size:11px!important}.event-confirmation-head input{min-height:42px;font-size:12px!important}
.confirmation-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.confirmation-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;border-radius:10px}.confirmation-summary span{font-size:11px;font-weight:800}.confirmation-summary strong{font:800 27px Manrope}.confirmation-summary .confirmed{background:#e6f5ee;color:#17634f}.confirmation-summary .unconfirmed{background:#f7eeec;color:#98554f}.event-chart-track.split{margin-bottom:7px;background:#eedbd8}.confirmation-basis{display:block;color:var(--muted);font-size:10px!important}
.card,.leadership-card,.leader-group,.visit-card{scroll-margin-top:90px}.modal-actions,.header-actions,.leader-header-actions{align-items:center}.modal-actions button,.header-actions button{min-height:40px}
@media(max-width:900px){.visit-toolbar{grid-template-columns:1fr}.visit-toolbar>label{width:100%}.header-actions .font-toggle b{display:none}}
@media(max-width:560px){html[data-font-size=large] .sidebar,html[data-font-size=extra] .sidebar{width:min(88vw,310px)}.confirmation-summary{grid-template-columns:1fr}.visit-tabs{display:grid!important;grid-template-columns:repeat(2,1fr);width:100%}.visit-tabs button{width:100%;border:1px solid var(--line)!important}.header-actions .font-toggle{min-width:42px;padding:8px}.login-preferences .font-toggle b{display:none}}

/* Entrada pública institucional */
.public-landing{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100dvh;overflow:hidden;padding:40px 22px;color:#fff;background:radial-gradient(circle at 50% 18%,rgba(72,177,188,.3),transparent 28%),radial-gradient(circle at 78% 72%,rgba(26,126,115,.22),transparent 32%),linear-gradient(145deg,#071c38 0%,#0a3652 43%,#0b524f 100%)}.public-landing:before,.public-landing:after{content:"";position:absolute;z-index:-1;border-radius:50%;border:1px solid rgba(200,237,240,.1)}.public-landing:before{width:620px;height:620px;left:-270px;top:-290px}.public-landing:after{width:520px;height:520px;right:-260px;bottom:-300px}.public-landing-content{display:flex;align-items:center;flex-direction:column;width:min(680px,100%);text-align:center}.public-profile-photo{width:220px;height:220px;margin:0 0 18px;overflow:hidden;border:5px solid rgba(255,255,255,.82);border-radius:50%;background:#cbd8df;box-shadow:0 22px 55px rgba(0,13,30,.34)}.public-profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center 17%}.public-primary-action{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:11px 21px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(121,211,206,.18);color:#fff;font:700 12px DM Sans;box-shadow:0 8px 24px rgba(0,20,34,.16);backdrop-filter:blur(10px)}.public-primary-action span{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff;color:#0a5161}.public-brand-kicker{margin-top:25px;color:#a8e1db;font:800 9px Manrope;letter-spacing:.24em}.public-landing h1{margin:8px 0 0;color:#fff;font:800 clamp(36px,4vw,58px)/1.04 Manrope;letter-spacing:-.045em}.public-divider{display:block;width:76px;height:1px;margin:18px 0;background:rgba(255,255,255,.42)}.public-landing h2{margin:0;color:#d7f1f0;font:600 clamp(18px,2vw,25px)/1.3 Manrope}.public-landing p{max-width:610px;margin:12px auto 0;color:#c3dadd;font-size:14px;line-height:1.65}.public-system-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:8px;border:0;background:transparent;color:#fff;font-size:12px;font-weight:800}.public-system-link span{color:#8fd8cf;font-size:17px;transition:transform .2s}.public-system-link:hover span{transform:translateX(4px)}.public-landing footer{margin-top:23px;color:#91b5bb;font-size:9px}.public-landing footer button{color:#b8e5dc}.public-primary-action:focus-visible,.public-system-link:focus-visible{outline:3px solid rgba(255,255,255,.55);outline-offset:4px}
@media(max-height:760px) and (min-width:701px){.public-landing{padding:24px}.public-profile-photo{width:178px;height:178px;margin-bottom:13px}.public-brand-kicker{margin-top:17px}.public-divider{margin:13px 0}.public-landing p{margin-top:8px}.public-system-link{margin-top:10px}.public-landing footer{margin-top:14px}}
@media(max-width:700px){.public-landing{padding:54px 22px 30px}.public-profile-photo{width:180px;height:180px;border-width:4px}.public-primary-action{min-height:48px}.public-brand-kicker{margin-top:24px}.public-landing h1{font-size:36px}.public-landing h2{font-size:18px}.public-landing p{max-width:430px;font-size:13px}.public-landing footer{margin-top:20px}}
@media(max-width:380px){.public-profile-photo{width:155px;height:155px}.public-landing h1{font-size:31px}.public-landing h2{font-size:16px}.public-landing p{font-size:12px}.public-brand-kicker{margin-top:18px}}
.public-landing footer .desktop-developer-credit{padding:0;border:0;background:transparent!important;color:#b8e5dc;box-shadow:none}

/* Tipografia única e confortável */
body{font-size:14px}.workspace :is(input,select,textarea,button),dialog :is(input,select,textarea,button){font-size:12px}.workspace label,dialog label{font-size:11px}.workspace small,dialog small{font-size:10px;line-height:1.45}.workspace p,dialog p{line-height:1.55}.filter-panel input,.filter-panel select,.leadership-filters input,.leadership-filters select,.visit-toolbar input,.event-confirmation-head input{min-height:42px;font-size:12px!important}.public-landing p{font-size:14px}.public-landing button{font-size:12px}
@media(max-width:560px){body{font-size:14px}.workspace :is(input,select,textarea,button),dialog :is(input,select,textarea,button){font-size:13px}.workspace label,dialog label{font-size:12px}.workspace small,dialog small{font-size:11px}.public-landing p{font-size:13px}}

/* Segunda etapa: login humano, centralizado e integrado à fotografia */
#login.login-shell:not(.hidden){display:flex!important;align-items:center;flex-direction:column;justify-content:flex-start;gap:0;min-height:100dvh;overflow-y:auto;padding:32px 20px 38px;background:radial-gradient(circle at 50% 12%,rgba(123,181,188,.24),transparent 26%),linear-gradient(155deg,#173b4d 0%,#0b4e50 48%,#0a3e3b 100%)}#login .login-ambient{opacity:.16}#login .login-desktop-copy{order:1;display:flex!important;width:min(620px,100%);max-width:620px;color:#fff}#login .desktop-person-portrait{width:138px;height:138px;min-height:138px;margin:0 auto 12px;border:4px solid rgba(255,255,255,.78);border-radius:50%;box-shadow:0 15px 35px rgba(1,24,31,.22)}#login .desktop-person-portrait:after{display:none}#login .desktop-person-portrait img{object-position:center 15%}#login .desktop-slogan{display:block!important;width:100%;margin:0!important;padding:0!important;border:0!important;text-align:center}#login .desktop-slogan>span{color:#aadbd5;font-size:8px}#login .desktop-slogan h1{margin:6px 0 0;color:#fff;font-size:31px;line-height:1.08}#login .desktop-slogan h2{margin:7px 0 0;color:#d8efec;font:600 16px/1.3 Manrope}#login .desktop-slogan p{max-width:520px;margin:7px auto 0;color:#bfd6d5;font-size:11px;line-height:1.5}#login .login-desktop-copy>footer{margin-top:8px;color:#9dbbbc;font-size:8px}#login .login-phone{order:2;width:min(500px,100%);min-height:0;margin-top:13px;border:1px solid rgba(184,224,217,.28);border-radius:20px;background:rgba(5,35,35,.38);box-shadow:0 18px 48px rgba(0,24,30,.2);backdrop-filter:blur(16px)}#login .login-card{min-height:0;padding:20px 28px 21px;border-radius:20px;background:transparent}#login .login-heading{display:none}#login .auth-tabs{margin:0 0 14px;background:rgba(1,28,29,.42);border-color:rgba(154,210,201,.25)}#login .auth-tabs button{min-height:42px;font-size:11px}#login .auth-tabs button.active{background:rgba(93,174,153,.32);box-shadow:inset 0 -2px #9ad4bd}#login .login-card form>label.login-field,#login .login-card .otp-row label.login-field{min-height:50px;border-color:rgba(160,210,201,.3);background:rgba(1,28,29,.34)}#login .login-phone input,#login .login-phone input:focus{min-height:48px;color:#fff;font-size:13px}#login .login-phone input::placeholder{color:#9ab8b6}#login .login-options{margin-top:12px;color:#bfd2d0;font-size:11px}#login .login-options button{color:#a8dfc6;font-size:11px}#login .login-card .primary.wide{min-height:50px;margin-top:15px;background:linear-gradient(90deg,#60b69a,#88cbb0);color:#052b2b;box-shadow:0 9px 22px rgba(18,92,79,.16)}#login .login-divider{margin:14px 0 10px}#login .create-account-link{min-height:44px;border-color:rgba(152,211,195,.48);color:#d6efe8}#login .login-security{margin-top:13px;color:#9eb8b6}#login .login-security p{font-size:9px}
#login .desktop-developer-credit{padding:0;border:0;background:transparent!important;color:#c7ead8;box-shadow:none}
@media(max-height:760px) and (min-width:601px){#login.login-shell:not(.hidden){height:100dvh;min-height:0;overflow:hidden;padding-top:18px;padding-bottom:5px}#login .desktop-person-portrait{width:105px;height:105px;min-height:105px;margin-bottom:8px}#login .desktop-slogan h1{font-size:26px}#login .desktop-slogan h2{font-size:14px}#login .desktop-slogan p{display:none}#login .login-desktop-copy>footer{margin-top:5px}#login .login-phone{margin-top:9px}#login .login-card{padding-top:16px;padding-bottom:12px}}
@media(max-width:600px){#login.login-shell:not(.hidden){justify-content:flex-start;padding:58px 16px 25px}#login .desktop-person-portrait{width:118px;height:118px;min-height:118px}#login .desktop-slogan h1{font-size:27px}#login .desktop-slogan h2{font-size:14px}#login .desktop-slogan p{max-width:340px;font-size:10px}#login .login-phone{margin-top:12px;border-radius:16px}#login .login-card{padding:17px 17px 19px}#login .login-options{gap:10px}#login .login-security{margin-top:11px}}

/* Acabamento de acesso, formulário e créditos */
#login .login-back-home{position:fixed;z-index:12;top:18px;left:18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid rgba(190,229,222,.32);border-radius:999px;background:rgba(5,39,41,.48);color:#d8efeb;font:700 11px Manrope;box-shadow:0 8px 24px rgba(0,24,30,.13);backdrop-filter:blur(12px)}
#login .login-back-home span{font-size:17px;line-height:1}
#login .login-back-home:hover{border-color:rgba(190,229,222,.58);background:rgba(17,75,70,.62)}
#login .login-page-footer{order:3;margin-top:12px;color:#a8c5c2;font-size:9px;text-align:center}
#login .login-page-footer .desktop-developer-credit{margin-left:3px;color:#d0eee4}
#login .login-card form>label.login-field,#login .login-card .otp-row label.login-field{overflow:hidden;background:#06251f}
#login .login-card .login-field input,#login .login-card .login-field input:focus{min-width:0;border-radius:0!important;background:#06251f!important;box-shadow:none!important}
#login .login-card .login-field input:-webkit-autofill,#login .login-card .login-field input:-webkit-autofill:hover,#login .login-card .login-field input:-webkit-autofill:focus{-webkit-text-fill-color:#effaf6!important;-webkit-box-shadow:0 0 0 1000px #06251f inset!important;box-shadow:0 0 0 1000px #06251f inset!important}
#login .login-options label{color:#d0e5e1!important}
.public-primary-action{justify-content:center;text-align:center}
.public-primary-action span{flex:0 0 21px;line-height:1}
.public-primary-action{background:#fff;color:#0a5161;border-color:#fff;box-shadow:0 12px 30px rgba(0,20,34,.22)}
.public-primary-action:hover{background:#f1fbf9;transform:translateY(-1px)}
.public-primary-action span{background:#e4f4f0;color:#0a5161}
.disconnect-login-sessions{display:block;width:100%;margin-top:10px;border:1px solid #78c6ad;border-radius:9px;background:#fff;color:#155448;padding:10px 12px;font:800 11px Manrope;cursor:pointer}
.disconnect-login-sessions:hover{background:#eaf7f2}
.account-access-note{display:flex;align-items:center;justify-content:space-between;gap:14px}
.account-access-note>div{display:grid;gap:3px}
.account-password-editor{display:grid;gap:10px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#f7fbf9}
.account-password-editor b,.admin-user-password b{color:var(--green);font:800 14px Manrope}
.account-password-editor p,.account-password-editor small,.admin-user-password p,.admin-user-password small{margin:0;color:var(--muted);font-size:11px}
.account-password-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-user-form{width:100%}
.admin-user-editor{padding:22px 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-user-editor label{font-size:12px;font-weight:700;color:var(--ink)}
.admin-user-editor input,.admin-user-editor select{display:block;width:100%;min-width:0;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:11px 13px}
.admin-user-editor .full{grid-column:1/-1}
.admin-user-password{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#f7fbf9}
.admin-user-password>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
html[data-theme=dark] .account-password-editor,html[data-theme=dark] .admin-user-password{background:#14332c}
@media(max-width:760px){.account-password-grid,.admin-user-editor,.admin-user-password>div{grid-template-columns:1fr}.admin-user-editor{padding:18px}}
.public-profile-photo img,.desktop-person-portrait img{image-rendering:auto;filter:none}
.developer-card{border-radius:18px;background:linear-gradient(155deg,#f7fbf9,#edf7f3)}
.developer-card .developer-avatar{width:78px;height:78px;border-radius:50%;background:linear-gradient(145deg,#0c5c55,#61b997);box-shadow:0 12px 28px rgba(9,80,71,.2)}
.developer-card small{color:#177a68}
.developer-card h3{margin-top:9px;color:#143b37}
.developer-card p{max-width:390px;margin:7px auto 16px}
.developer-card a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin:4px;padding:8px 13px;border:1px solid #cfe5dd;border-radius:10px;background:#fff;color:#126a5d}
.developer-card .primary{background:#126a5d}
@media(max-height:760px) and (min-width:601px){#login .login-page-footer{position:fixed;right:18px;bottom:10px;margin:0}}
@media(max-width:600px){#login .login-back-home{position:absolute;top:11px;left:12px;min-height:36px;padding:7px 11px;font-size:10px}#login .login-page-footer{margin-top:13px;padding-bottom:4px}.public-primary-action{min-width:205px}.developer-card{padding:27px 20px}.developer-card a{display:flex;width:100%;margin:7px 0}}.leadership-kpis strong{font-size:27px}.leadership-kpis span{font-size:10px;line-height:1.35}
.leadership-filters label{text-align:center;font-size:10px}.leader-filter-footer>small{font-size:10px}.leadership-card h3,.leadership-card header p,.leadership-card dl{text-align:center}.leadership-card header{flex-wrap:wrap;justify-content:center}.leader-card-metrics{text-align:center}.leadership-card footer{justify-content:center}



.leadership-kpis,.leadership-filters,.leadership-cards,.leadership-table,.leadership-network,.leadership-empty{margin-bottom:24px}
@media(max-width:820px){.leadership-kpis,.leadership-filters,.leadership-cards,.leadership-table,.leadership-network,.leadership-empty{margin-bottom:20px}}


/* Mapa territorial Leaflet */
.territory-map-shell{position:relative;min-height:440px;overflow:hidden;border-top:1px solid var(--line)}
.territory-map-shell #territoryMap{height:440px;border-top:0}
.map-filter-toggle{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--green);font-size:10px;font-weight:800;cursor:pointer}.map-filter-toggle span{font-size:13px}
.map-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(21,84,72,.25);border-top-color:var(--green);border-radius:50%;animation:map-spin .7s linear infinite}@keyframes map-spin{to{transform:rotate(360deg)}}
.user-location-marker{filter:drop-shadow(0 0 7px rgba(39,137,232,.8));animation:user-location-pulse 1.7s ease-out infinite}@keyframes user-location-pulse{0%,100%{stroke-opacity:1;stroke-width:3}50%{stroke-opacity:.45;stroke-width:10}}
.territory-marker.on-dark span{border-color:#e8fff7;box-shadow:0 0 0 2px rgba(255,255,255,.28),0 0 16px color-mix(in srgb,var(--marker) 75%,transparent)}
.map-theme-dark .territory-head{background:#102720;color:#eaf7f2}.map-theme-dark .territory-head p,.map-theme-dark .map-legend span{color:#b9d1c9}.map-theme-dark .leaflet-control-attribution{background:rgba(14,39,33,.86)!important;color:#d7ebe4}.map-theme-dark .leaflet-control-attribution a{color:#9edcbe}

/* Barra territorial fora do mapa */
.territory-filter-bar{position:static;width:100%;max-height:none;margin:0;padding:15px 16px;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--card);box-shadow:none;overflow:visible}.territory-filter-bar .filter-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.territory-filter-bar .filter-title b{margin:0}.filter-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.territory-filter-bar .map-filter-toggle:hover{text-decoration:underline;text-underline-offset:3px}.territory-filter-bar.is-collapsed .map-filter-content{display:none}.territory-filter-bar.is-collapsed .filter-title{margin-bottom:0}.territory-filter-bar .filter-grid{grid-template-columns:repeat(8,minmax(115px,1fr));gap:9px}.territory-filter-bar :is(input,select){height:38px!important;min-height:38px!important;margin-top:5px!important;padding:0 9px!important;font-size:10px!important}
.territory-card>.map-actions{position:static;display:flex;align-items:center;gap:7px;padding:10px 16px;border-top:1px solid var(--line);background:var(--card);pointer-events:auto}.territory-card>.map-actions button{min-height:40px}.territory-card>.map-actions button:disabled{cursor:wait;opacity:.76}.territory-card>.map-actions small{margin-left:auto;color:var(--muted);font-size:9px}.territory-map-shell{min-height:440px}.territory-map-shell #territoryMap{height:440px}
.territory-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px}.map-collapse-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;border:1px solid rgba(69,143,119,.35);border-radius:10px;background:var(--surface);color:var(--green);font-weight:800}.map-collapse-button span{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#dcefe8}.map-content-collapsed{display:none!important}
.birthday-dashboard{margin:24px 0;padding:20px}.birthday-dashboard>header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 18px}.birthday-dashboard>header>div{grid-row:1/3}.birthday-dashboard>header small{color:#39766b;font-size:9px;font-weight:800;letter-spacing:.13em}.birthday-dashboard h2{margin:5px 0 3px;font:800 20px Manrope}.birthday-dashboard p{margin:0;color:var(--muted);font-size:11px}.birthday-dashboard>header>strong{font:800 30px Manrope;color:#d4a62a;text-align:center}.birthday-dashboard>header>span{color:var(--muted);font-size:9px}.birthday-dashboard-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:20px;align-items:start;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.birthday-month-chart{height:230px;min-height:230px}.birthday-list{display:flex;max-height:230px;overflow:auto;flex-direction:column;gap:6px;padding:4px 2px 2px;scrollbar-gutter:stable}.birthday-list button{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);text-align:left;box-sizing:border-box}.birthday-list button:hover{background:var(--soft)}.birthday-list time{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff2c9;color:#805f00;font-weight:900;flex-shrink:0}.birthday-list span{display:grid;min-width:0}.birthday-list small{color:var(--muted);font-size:9px}.birthday-list em{padding:4px 7px;border-radius:999px;background:#dff4e9;color:#176b55;font-size:9px;font-style:normal;font-weight:800;white-space:nowrap}.birthday-list button.is-today{background:#fff8e8;border-color:#f0d48a}.birthday-list button.is-today time{background:#ffd666;color:#6b4f00}
.dashboard-focus-grid{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:24px;margin:24px 0}.dashboard-focus-grid>.card{height:100%;margin:0}.dashboard-focus-grid .birthday-dashboard-body{grid-template-columns:minmax(0,1fr) minmax(250px,1fr)}.dashboard-focus-grid .day-agenda{min-height:330px}.approval-summary{padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.approval-summary b{font:800 15px Manrope}.approval-summary p{margin:5px 0 0;color:var(--muted);font-size:11px}.approval-relationship{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.approval-relationship label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--surface);cursor:pointer}.approval-relationship label:has(input:checked){border-color:#3b9c7e;background:#edf8f3;box-shadow:0 0 0 3px rgba(59,156,126,.1)}.approval-relationship input{width:auto;margin:3px 0 0;accent-color:var(--green)}.approval-relationship span{display:grid;gap:4px}.approval-relationship small{color:var(--muted);font-size:9px;line-height:1.4}
[data-theme=dark] .map-collapse-button{background:#15382f;border-color:#31584d;color:#d9eee7}[data-theme=dark] .map-collapse-button span{background:#214b40}[data-theme=dark] .birthday-dashboard{background:#102d29}[data-theme=dark] .birthday-list time{background:#493b16;color:#f2d978}
@media(max-width:1000px){.dashboard-focus-grid{grid-template-columns:1fr}.approval-relationship{grid-template-columns:1fr}}
@media(max-width:760px){.territory-head-actions{align-items:flex-start;flex-direction:column;width:100%}.map-collapse-button{width:100%}.birthday-dashboard-body,.dashboard-focus-grid .birthday-dashboard-body{grid-template-columns:1fr}.birthday-dashboard>header{grid-template-columns:1fr auto}.birthday-month-chart{height:190px;min-height:190px}}
.territory-marker.is-birthday span{display:grid;place-items:center;width:38px;height:38px;border:3px solid #fff;font-size:18px;box-shadow:0 0 0 4px rgba(212,166,42,.28),0 5px 16px rgba(85,61,9,.32);animation:birthday-marker-pulse 1.9s ease-in-out infinite}@keyframes birthday-marker-pulse{50%{transform:scale(1.1);box-shadow:0 0 0 7px rgba(212,166,42,.14),0 6px 18px rgba(85,61,9,.4)}}.map-legend i.birthday{background:#d4a62a}
.map-theme-dark .territory-filter-bar,.map-theme-dark>.map-actions{background:#102720;color:#eaf7f2}.map-theme-dark .territory-filter-bar label{color:#b8cdc6}.map-theme-dark .territory-filter-bar :is(input,select){border-color:#42665c!important;background:#132f28!important;color:#eef8f5!important}.map-theme-dark>.map-actions button{border-color:#41655b;background:#173b32;color:#eaf7f2}.map-theme-dark>.map-actions small{color:#b9d1c9}
@media(max-width:1200px){.territory-filter-bar .filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.territory-filter-bar .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.territory-card>.map-actions{gap:6px;overflow-x:auto}.territory-card>.map-actions button{flex:0 0 auto;min-height:38px;padding:7px 9px;font-size:10px}.territory-card>.map-actions small{display:none}}
@media(max-width:480px){.territory-filter-bar{padding:12px}.territory-filter-bar .filter-grid{grid-template-columns:1fr}.territory-filter-bar .filter-title{align-items:flex-start}.filter-actions{gap:4px}.territory-card>.map-actions{padding:9px 10px}}

/* Login institucional limpo, sem grade ou piso decorativo */
#login.login-shell:not(.hidden){background:radial-gradient(circle at 18% 14%,rgba(106,193,176,.15),transparent 27%),radial-gradient(circle at 82% 30%,rgba(82,169,156,.12),transparent 25%),linear-gradient(145deg,#123f48 0%,#0d5554 48%,#0b4542 100%)}
body:has(#login:not(.hidden)){background:#0b4542}
#login.login-shell:before,#login.login-shell:after,#login .login-ambient{display:none!important}
#login .login-back-home{min-width:128px;line-height:1}
#login .login-back-home span{display:grid;place-items:center;width:18px;height:18px;line-height:18px;transform:translateY(-1px)}
#login .login-control{display:block;margin-top:11px}
#login .login-control:first-child{margin-top:0}
#login .login-input-caption{display:block;margin:0 0 6px 3px;color:#d5e9e6;font-size:10px;font-weight:800;letter-spacing:.01em}
#login .login-card .login-field{position:relative;display:flex;align-items:center;min-height:52px;margin:0;overflow:hidden;border:1px solid rgba(160,210,201,.36);border-radius:11px;background:#062b27;cursor:text}
#login .login-card .login-field>span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:50px;border-right:1px solid rgba(151,207,196,.18);color:#7ddb9f}
#login .login-card .login-field input,#login .login-card .login-field input:focus{position:relative;z-index:2;display:block;flex:1;width:100%;min-width:0;min-height:50px;margin:0;padding:0 14px;border:0;border-radius:0!important;outline:0;background:#062b27!important;color:#f5fbf9!important;caret-color:#9ee4c7!important;font-size:13px;line-height:50px;pointer-events:auto;opacity:1}
#login .login-card .password-field input,#login .login-card .password-field input:focus{padding-right:45px}
#login .login-card .password-field button{z-index:4;top:50%;right:8px;transform:translateY(-50%)}
#login .login-card .login-field:focus-within{border-color:#94ddc1;box-shadow:0 0 0 3px rgba(127,213,180,.14)}
#login .login-card .login-field input::placeholder{color:#83a7a1;opacity:1}
#login .access-request-help{max-width:360px;margin:8px auto 0;color:#9ebbb7;font-size:9px;line-height:1.45;text-align:center}
.register-intro{padding:14px 16px;border:1px solid #d2e9e1;border-radius:12px;background:#f1f8f5}.register-intro b{display:block;color:#155f54;font:800 14px Manrope}.register-intro p{margin:5px 0 0;color:#5f7772;font-size:11px;line-height:1.5}

/* Cadastro público de apoiadores */
.supporter-dialog{width:min(860px,calc(100% - 28px));max-height:min(90vh,820px);padding:0;border:0;border-radius:20px;overflow:hidden;background:var(--surface);color:var(--text);box-shadow:0 28px 80px rgba(0,35,27,.28)}
.supporter-dialog::backdrop{background:rgba(2,25,20,.72);backdrop-filter:blur(6px)}
.supporter-request-form{padding:0 26px 24px;overflow:auto;max-height:calc(90vh - 82px)}
.supporter-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:18px 0;border-bottom:1px solid var(--border)}
.supporter-steps span{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font:700 11px Manrope}
.supporter-steps b{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--muted)}
.supporter-steps span.active{color:var(--green)}.supporter-steps span.active b{border-color:var(--green);background:var(--green);color:#fff}
.supporter-step{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:22px 0 8px}.supporter-step.active{display:grid}.supporter-step .full,.supporter-step .step-heading{grid-column:1/-1}
.step-heading small{color:var(--green);font:800 9px Manrope;letter-spacing:.16em}.step-heading h3{margin:5px 0;font:800 22px Manrope}.step-heading p{margin:0 0 10px;color:var(--muted);font-size:12px}
.supporter-step label{display:grid;gap:7px;color:var(--text);font-size:11px;font-weight:700}.supporter-step input,.supporter-step select,.supporter-step textarea{width:100%;border:1px solid var(--border);border-radius:11px;padding:12px 13px;background:var(--surface);color:var(--text);font:500 13px DM Sans}.supporter-step input:focus,.supporter-step select:focus,.supporter-step textarea:focus{outline:3px solid rgba(36,142,111,.14);border-color:var(--green)}
.supporter-step input[aria-invalid="true"],.supporter-step select[aria-invalid="true"],.supporter-step textarea[aria-invalid="true"]{border-color:#bd5b55;outline:3px solid rgba(189,91,85,.12)}.supporter-field-error{display:block!important;color:#a9443e!important;font-size:11px!important;font-weight:700!important;line-height:1.35}
.supporter-review{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.supporter-review div{padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--soft)}.supporter-review small,.supporter-review b{display:block}.supporter-review small{color:var(--muted);font-size:9px;text-transform:uppercase}.supporter-review b{margin-top:4px;font-size:12px}
.privacy-confirm{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;padding:14px;border:1px solid #b9dfd1;border-radius:12px;background:#eff8f5}.privacy-confirm input{width:18px!important;height:18px;flex:0 0 18px;accent-color:var(--green)}.privacy-confirm span{font-size:11px;line-height:1.5}.supporter-honeypot{position:absolute!important;left:-10000px!important}.supporter-form-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding-top:18px;border-top:1px solid var(--border)}.supporter-form-actions button{min-height:42px}.supporter-request-form>.form-error{padding-top:8px}
.request-queue{display:grid;gap:12px}.request-card{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.request-card b,.request-card small{display:block}.request-card small{color:var(--muted);margin-top:4px}.request-card-actions{display:flex;gap:8px}
@media(max-width:680px){.supporter-dialog{width:calc(100% - 16px);max-height:94vh;border-radius:16px}.supporter-request-form{padding:0 16px 18px;max-height:calc(94vh - 76px)}.supporter-steps{grid-template-columns:repeat(4,1fr)}.supporter-steps span{justify-content:center;font-size:0}.supporter-steps b{font-size:11px}.supporter-step{grid-template-columns:1fr}.supporter-step label,.supporter-step .full{grid-column:1}.supporter-review{grid-template-columns:1fr}.supporter-form-actions{grid-template-columns:auto 1fr auto}.supporter-form-actions #supporterSubmit{grid-column:3}.request-card{grid-template-columns:1fr}.request-card-actions{justify-content:flex-end}}

/* O cadastro público permanece claro mesmo quando o painel administrativo usa tema escuro. */
.supporter-dialog,
html[data-theme=dark] .supporter-dialog{background:#fff!important;color:#17352f!important}
.supporter-dialog .modal-head,
html[data-theme=dark] .supporter-dialog .modal-head{background:#fff!important;border-bottom-color:#dce9e4!important}
.supporter-dialog .modal-head h2,
.supporter-dialog .step-heading h3{color:#17352f!important}
.supporter-dialog .modal-head button{color:#53756d!important}
.supporter-request-form,
html[data-theme=dark] .supporter-request-form{background:#fff!important;color:#17352f!important}
.supporter-steps{border-bottom-color:#dce9e4!important}
.supporter-steps span{color:#6d817c!important}
.supporter-steps b{border-color:#cedfd9!important;background:#fff!important;color:#637c75!important}
.supporter-steps span.active{color:#17634f!important}
.supporter-steps span.active b{border-color:#17634f!important;background:#17634f!important;color:#fff!important}
.supporter-step label{color:#25473f!important}
.supporter-step input,
.supporter-step select,
.supporter-step textarea,
html[data-theme=dark] .supporter-step input,
html[data-theme=dark] .supporter-step select,
html[data-theme=dark] .supporter-step textarea{border-color:#cfded9!important;background:#fdfefe!important;color:#17352f!important}
.supporter-step input::placeholder,
.supporter-step textarea::placeholder{color:#8aa09a!important}
.supporter-dialog .step-heading p{color:#647d76!important}
.supporter-form-actions{border-top-color:#dce9e4!important;background:#fff!important}
.supporter-review div{border-color:#d6e5df!important;background:#f4f9f7!important}
.privacy-confirm{color:#25473f!important}
@media(max-height:760px) and (min-width:601px){#login .login-input-caption{margin-bottom:3px;font-size:10px}#login .login-control{margin-top:7px}#login .login-card .login-field,#login .login-card .login-field input,#login .login-card .login-field input:focus{min-height:43px;height:43px;line-height:43px}#login .login-card .login-field>span{height:41px}#login .access-request-help{display:none}}
@media(max-width:600px){#login.login-shell:not(.hidden){padding-top:54px;background:radial-gradient(circle at 50% 7%,rgba(121,207,188,.16),transparent 24%),linear-gradient(160deg,#123f48,#0c5350 55%,#0a403e)}#login .login-back-home{min-width:118px}#login .login-input-caption{font-size:10px}#login .login-card .login-field input,#login .login-card .login-field input:focus{font-size:14px}}

/* Perfil profissional interativo */
.developer-preview-card{max-width:520px;margin:auto;padding:34px!important;border-radius:22px!important;background:linear-gradient(145deg,#f7fcfa,#edf7f3)!important;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.developer-preview-card:hover,.developer-preview-card:focus-visible{transform:translateY(-5px);border-color:#83cbb2!important;box-shadow:0 22px 55px rgba(12,74,59,.16);outline:0}
.developer-preview-card>img{width:112px;height:112px;margin:0 auto 18px;display:block;border:5px solid #fff;border-radius:50%;object-fit:cover;object-position:center 49%;box-shadow:0 13px 30px rgba(9,64,52,.18)}
.developer-preview-card>small{margin-top:0!important;color:#2c806b!important}.developer-preview-card>h3{color:#113b32!important}.developer-preview-card>strong{display:flex;align-items:center;justify-content:center;gap:8px;color:#41665d;font-size:12px;line-height:1.5}.developer-preview-card>strong i{width:4px;height:4px;border-radius:50%;background:#62b296}
.developer-preview-card>p{margin:13px 0 18px!important;color:#6c817b!important}.developer-preview-card>.primary{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:210px;margin-top:0!important}.developer-preview-card>.primary span{transition:transform .2s}.developer-preview-card:hover>.primary span{transform:translateX(4px)}
.developer-profile-dialog{width:85vw;max-width:1480px;height:88vh;max-height:920px;padding:0;border:0;border-radius:28px;background:#f5faf7;color:#102f28;overflow:hidden;box-shadow:0 35px 100px rgba(2,28,21,.42)}
.developer-profile-dialog::backdrop{background:rgba(2,20,16,.76);backdrop-filter:blur(9px)}
.developer-dialog-close{position:absolute;z-index:10;top:18px;right:20px;width:42px;height:42px;border:1px solid rgba(39,101,84,.18);border-radius:50%;background:rgba(255,255,255,.9);color:#184c40;font-size:23px;cursor:pointer;box-shadow:0 8px 24px rgba(6,51,39,.12);transition:.2s}
.developer-dialog-close:hover{transform:rotate(8deg) scale(1.05);background:#fff}
.developer-profile-layout{display:grid;grid-template-columns:minmax(340px,39%) minmax(0,61%);height:100%}
.developer-profile-visual{position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:38px;background:linear-gradient(180deg,#123e33,#06231d);color:#fff}
.developer-profile-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(139,221,175,.25),transparent 34%),linear-gradient(135deg,transparent 48%,rgba(139,221,175,.08) 48.2%,transparent 48.5%)}
.developer-profile-visual figure{position:absolute;inset:0;margin:0}.developer-profile-visual figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(4,27,22,.2) 58%,#06231d 92%)}
.developer-profile-visual img{width:100%;height:100%;object-fit:cover;object-position:center 66%;filter:saturate(.9) contrast(1.02)}
.developer-identity{position:relative;z-index:2}.developer-identity>span{color:#9be0be;font:800 10px Manrope;letter-spacing:.19em}.developer-identity h2{margin:8px 0 7px;color:#fff;font:800 clamp(30px,3vw,48px)/1 Manrope}.developer-identity>p{max-width:420px;margin:0;color:#c7ddd5;font-size:13px;line-height:1.55}.developer-identity>p i{display:inline-block;width:4px;height:4px;margin:0 7px 2px;border-radius:50%;background:#91dab8}
.developer-contact-links{display:flex;gap:9px;margin-top:20px}.developer-contact-links a{border:1px solid rgba(177,226,207,.28);border-radius:9px;background:rgba(255,255,255,.08);color:#eefaf5;padding:9px 14px;text-decoration:none;font-size:10px;font-weight:800;backdrop-filter:blur(8px)}.developer-contact-links a:hover{background:rgba(255,255,255,.15)}
.developer-profile-content{overflow-y:auto;padding:clamp(38px,5vw,72px);scrollbar-color:#78b89f transparent;scrollbar-width:thin}
.developer-profile-content>header{max-width:800px;padding-bottom:28px;border-bottom:1px solid #dceae4}.developer-profile-content>header small,.developer-section-title small,.developer-progress small{color:#318069;font:800 10px Manrope;letter-spacing:.18em}.developer-profile-content>header h1{margin:7px 0 14px;font:800 clamp(35px,4vw,60px)/1.02 Manrope;letter-spacing:-.045em}.developer-profile-content>header p{max-width:780px;margin:0;color:#567069;font-size:16px;line-height:1.7}.developer-profile-content>header strong{color:#17604e}
.developer-introduction{padding:25px 0 8px}.developer-introduction p{max-width:850px;margin:0;color:#526b65;font-size:14px;line-height:1.8}
.developer-projects,.developer-skills{padding-top:34px}.developer-section-title{display:flex;align-items:center;gap:14px;margin-bottom:18px}.developer-section-title>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #a8d0c0;border-radius:12px;color:#1c725d;font:800 11px Manrope}.developer-section-title h2{margin:2px 0 0;font:800 24px Manrope}
.developer-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.developer-project-grid article{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:18px;border:1px solid #dce9e4;border-radius:15px;background:#fff;transition:.2s}.developer-project-grid article:hover{transform:translateY(-3px);border-color:#9dccba;box-shadow:0 13px 30px rgba(18,74,60,.08)}.developer-project-grid article>b{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e7f5ef;color:#17624f;font-size:18px}.developer-project-grid h3{margin:0 0 6px;font:800 13px Manrope}.developer-project-grid p{margin:0;color:#6c7f7a;font-size:11px;line-height:1.6}
.developer-skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.developer-skill-grid article{padding:17px 18px;border-left:3px solid #69b798;border-radius:0 12px 12px 0;background:#eaf5f0}.developer-skill-grid article.wide{grid-column:1/-1}.developer-skill-grid h3{margin:0 0 7px;font:800 12px Manrope}.developer-skill-grid p{margin:0;color:#59716a;font-size:11px;line-height:1.7}
.developer-progress{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:40px;padding:28px 30px;overflow:hidden;border-radius:20px;background:linear-gradient(120deg,#0c4739,#17634f);color:#fff}.developer-progress:after{content:"";position:absolute;width:220px;height:220px;right:-80px;border:1px solid rgba(178,234,207,.18);border-radius:50%}.developer-progress>div{position:relative;z-index:1}.developer-progress small{color:#a8e5c8}.developer-progress h2{margin:6px 0;font:800 22px Manrope}.developer-progress p{max-width:630px;margin:0;color:#c6ddd5;font-size:11px;line-height:1.65}.developer-rocket{position:relative;z-index:2;display:block;font-size:54px;filter:drop-shadow(0 12px 15px rgba(0,0,0,.2));animation:developerRocket 2.4s ease-in-out infinite}
@keyframes developerRocket{0%,100%{transform:translate(0,5px) rotate(-8deg)}50%{transform:translate(11px,-12px) rotate(2deg)}}
html[data-theme=dark] .developer-profile-dialog{background:#0c2721;color:#eaf7f2}html[data-theme=dark] .developer-profile-content>header{border-color:#2a4c43}html[data-theme=dark] .developer-profile-content>header p,html[data-theme=dark] .developer-introduction p{color:#a9c0b9}html[data-theme=dark] .developer-project-grid article{border-color:#2a4d43;background:#12342c}html[data-theme=dark] .developer-project-grid p,html[data-theme=dark] .developer-skill-grid p{color:#a9beb8}html[data-theme=dark] .developer-skill-grid article{background:#14372e}
@media(max-width:900px){.developer-profile-dialog{width:94vw;height:92vh;border-radius:22px}.developer-profile-layout{grid-template-columns:1fr}.developer-profile-visual{min-height:390px;padding:25px}.developer-profile-visual img{object-position:center 63%}.developer-profile-content{padding:34px 25px}.developer-project-grid{grid-template-columns:1fr}}
@media(max-width:560px){.developer-profile-dialog{width:100vw;height:100dvh;max-height:none;border-radius:0}.developer-dialog-close{position:fixed;top:12px;right:12px}.developer-profile-visual{min-height:360px}.developer-identity h2{font-size:31px}.developer-identity>p{font-size:11px}.developer-profile-content{padding:30px 18px 40px}.developer-profile-content>header h1{font-size:37px}.developer-profile-content>header p{font-size:14px}.developer-project-grid article{grid-template-columns:36px 1fr;padding:15px}.developer-project-grid article>b{width:36px;height:36px}.developer-skill-grid{grid-template-columns:1fr}.developer-skill-grid article.wide{grid-column:auto}.developer-progress{align-items:flex-start;padding:24px}.developer-rocket{font-size:42px}}
@media(prefers-reduced-motion:reduce){.developer-rocket{animation:none}.developer-preview-card,.developer-project-grid article{transition:none}}

/* Perfil profissional: progresso leve, legível e sem balão de fundo */
.developer-preview-invitation{display:flex;grid-column:1/-1;align-items:center;justify-content:center;justify-self:stretch;width:100%;max-width:none!important;min-height:42px;margin:14px 0 0!important;padding:0 16px;text-align:center!important;line-height:1.5;font-weight:700;color:#476a61!important}
.developer-progress{display:block;margin-top:42px;padding:26px 28px 22px;overflow:hidden;border:1px solid #cbe4da;border-radius:20px;background:radial-gradient(circle at 88% 15%,rgba(58,185,133,.12),transparent 30%),linear-gradient(145deg,#f8fcfa,#edf7f3);color:inherit}
.developer-progress:after{display:none}.developer-progress small{color:#24715e}.developer-progress h2{margin:7px 0;color:inherit;font-size:clamp(22px,2.6vw,34px)}.developer-progress p{max-width:850px;color:var(--muted);font-size:12px}
.developer-flight{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 14px;margin-top:28px;perspective:900px}.developer-flight>span,.developer-flight>b{font-size:9px;color:var(--muted)}.developer-flight>b{text-align:right;color:#17705a;font-size:11px;font-variant-numeric:tabular-nums}
.developer-space-track{position:relative;grid-column:1/-1;height:58px;overflow:visible;border:1px solid rgba(76,178,139,.38);border-radius:18px;background:radial-gradient(circle at 22% 28%,rgba(111,255,194,.16),transparent 18%),linear-gradient(180deg,#062a25,#031c19);box-shadow:inset 0 0 22px rgba(40,243,165,.15),0 10px 28px rgba(7,67,53,.14)}
.developer-space-track:before{content:"";position:absolute;inset:18px 14px;border-radius:999px;background:rgba(88,136,121,.28);box-shadow:inset 0 2px 7px rgba(0,0,0,.48),0 0 12px rgba(60,242,173,.14)}
.developer-flight-fill{position:absolute;z-index:1;left:14px;top:18px;width:0;height:22px;border-radius:999px;background:linear-gradient(90deg,#0c5f4e,#23df91 45%,#9cffc9 55%,#20bb78);background-size:220% 100%;box-shadow:inset 0 0 10px rgba(232,255,246,.45),0 0 15px rgba(38,231,151,.55);transition:width .08s linear;animation:developerNeonFlow 1.4s linear infinite}
.developer-flight-fill:after{content:"";position:absolute;inset:3px;border-radius:inherit;background:repeating-linear-gradient(110deg,transparent 0 9px,rgba(255,255,255,.25) 10px 12px,transparent 13px 21px);animation:developerParticlesFlow .75s linear infinite}
.developer-space-stars{position:absolute;z-index:0;inset:0;border-radius:inherit;background-image:radial-gradient(circle,#b6ffe2 0 1px,transparent 1.6px),radial-gradient(circle,#4cf0ad 0 1px,transparent 1.7px),radial-gradient(circle,#fff 0 .7px,transparent 1.3px);background-position:9% 25%,47% 72%,80% 21%;background-size:41px 37px,63px 51px,79px 43px;opacity:.62;animation:developerStars 2.4s ease-in-out infinite}
.developer-ship{position:absolute;z-index:5;top:7px;left:14px;width:72px;height:42px;filter:drop-shadow(0 0 9px currentColor);transform-origin:center;will-change:left,transform,opacity;transition:left .08s linear}.developer-ship svg{display:block;width:100%;height:100%;overflow:visible}.developer-ship .ship-wing,.developer-ship .ship-hull{stroke:rgba(255,255,255,.72);stroke-width:1}.developer-ship-dev{color:#29ed9a;transform:translate(-26px,-7px)}.developer-ship-dev .ship-wing{fill:#087b61}.developer-ship-dev .ship-hull{fill:url(#devHull)}.developer-ship-challenge{color:#ff5963;transform:translate(-56px,11px) scale(.88)}.developer-ship-challenge .ship-wing{fill:#8e2443}.developer-ship-challenge .ship-hull{fill:url(#challengeHull)}.developer-ship .ship-window{fill:#dffbff;stroke:#72cddb}.developer-ship .ship-engine{fill:currentColor;filter:drop-shadow(-5px 0 5px currentColor)}
.developer-flight.is-running .developer-ship-dev{animation:developerShipDev .8s ease-in-out infinite}.developer-flight.is-running .developer-ship-challenge{animation:developerShipChallenge .92s ease-in-out infinite}
.developer-laser{position:absolute;z-index:6;display:block;width:0;height:3px;border-radius:99px;opacity:0;pointer-events:none}.developer-laser-red{right:76px;top:36px;background:#ff5262;box-shadow:0 0 8px #ff223d}.developer-laser-green{right:82px;top:18px;background:#6dffc0;box-shadow:0 0 11px #27ff9a}.developer-flight.is-battle .developer-laser-red{animation:developerRedLaser .62s ease-in 3}.developer-flight.is-counter .developer-laser-green{animation:developerGreenLaser .52s cubic-bezier(.2,.8,.2,1) 1}
.developer-explosion{position:absolute;z-index:8;right:34px;top:6px;width:48px;height:48px;pointer-events:none;opacity:0}.developer-explosion:before,.developer-explosion:after{content:"";position:absolute;inset:10px;border-radius:50%;background:radial-gradient(circle,#fff 0 12%,#ffe45d 13% 32%,#ff633c 33% 55%,transparent 58%);filter:drop-shadow(0 0 11px #ff633c)}.developer-explosion:after{inset:2px;background:repeating-conic-gradient(#ffbf45 0 7deg,transparent 8deg 22deg);filter:blur(1px)}.developer-flight.is-exploding .developer-explosion{animation:developerExplosion .8s ease-out forwards}.developer-flight.is-exploding .developer-ship-challenge{animation:developerDestroyed .72s ease-out forwards}
.developer-flight.is-battle .developer-ship-dev{animation:developerDodge .48s ease-in-out 4}.developer-flight.is-exploding .developer-space-track{animation:developerShake .1s linear 4}
.developer-debris{position:absolute;left:50%;top:50%;width:5px;height:3px;border-radius:1px;background:linear-gradient(90deg,#ffe66c,#e74444);box-shadow:0 0 6px #ff793f;opacity:1;animation:developerDebris .72s ease-out var(--delay) forwards}
.developer-screen-ship{position:fixed;z-index:2147483647;width:78px;height:46px;pointer-events:none;color:#2dffa1;filter:drop-shadow(0 0 15px #20e38b);transform-style:preserve-3d;will-change:transform,filter,opacity}.developer-screen-ship svg{display:block;width:100%;height:100%;overflow:visible}.developer-screen-ship .ship-wing{fill:#087b61;stroke:#dffff2}.developer-screen-ship .ship-hull{fill:#21d68b;stroke:#eafff6}.developer-screen-ship .ship-window{fill:#e8ffff}.developer-screen-ship .ship-engine{fill:#62ffc0}.developer-flight.is-launching .developer-ship-dev{opacity:0}.developer-flight.is-complete .developer-flight-fill{filter:brightness(1.15);box-shadow:inset 0 0 12px #fff,0 0 24px rgba(38,231,151,.7)}
@keyframes developerNeonFlow{to{background-position:-220% 0}}@keyframes developerParticlesFlow{to{transform:translateX(21px)}}@keyframes developerStars{50%{opacity:.95;filter:brightness(1.4)}}@keyframes developerShipDev{50%{translate:0 -3px;rotate:-1deg}}@keyframes developerShipChallenge{50%{translate:0 3px;rotate:1deg}}@keyframes developerDodge{0%,100%{translate:0 0}35%{translate:-9px -10px;rotate:-4deg}70%{translate:5px 7px;rotate:3deg}}@keyframes developerRedLaser{0%{opacity:0;width:0}20%{opacity:1;width:70px}100%{opacity:0;width:210px;transform:translateX(-180px)}}@keyframes developerGreenLaser{0%{opacity:0;width:0}15%{opacity:1;width:90px}100%{opacity:0;width:270px;transform:translateX(190px)}}@keyframes developerExplosion{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1.45) rotate(18deg)}100%{opacity:0;transform:scale(2.2) rotate(55deg);filter:blur(3px)}}@keyframes developerDestroyed{to{opacity:0;transform:translate(28px,14px) rotate(38deg) scale(.2);filter:blur(3px)}}@keyframes developerShake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@keyframes developerDebris{to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(260deg) scale(.25)}}
html[data-theme=dark] .developer-progress{background:transparent;color:#eaf7f2}.card-group-action,.row-group-action{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid #bddfd2;border-radius:8px;background:#f1faf6;color:#155448;font-size:9px;font-weight:800;cursor:pointer}.card-group-action{align-self:center;margin-right:8px;padding:7px 9px}.row-group-action{grid-column:3;grid-row:2;padding:5px 7px}.card-group-action:hover,.row-group-action:hover{background:#dff2eb}
@media(max-width:760px){.card-group-action{position:absolute;right:96px;bottom:9px;margin:0;padding:5px 7px}.leader-group>header{position:relative}.row-group-action{grid-column:2;grid-row:2;justify-self:start}.developer-flight{margin-top:20px}}
@media(max-width:560px){.developer-progress{padding:22px 16px 18px}.developer-progress p{font-size:11px;line-height:1.65}.developer-space-track{height:54px}.developer-space-track:before,.developer-flight-fill{top:16px}.developer-ship{top:6px;width:66px}.developer-flight>span,.developer-flight>b{font-size:10px}}
@media(prefers-reduced-motion:reduce){.developer-space-stars,.developer-flight-fill,.developer-flight-fill:after,.developer-ship,.developer-laser,.developer-explosion,.developer-debris,.developer-space-track{animation:none!important;transition:none!important}}

/* Minigame retrô: formas pixeladas, leitura simples e ciclo contínuo. */
.developer-progress{border-radius:12px;background:#f7faf7;box-shadow:5px 5px 0 #d7e5dd}
.developer-flight-retro{perspective:none}
.developer-flight-retro .developer-space-track{
 height:64px;overflow:hidden;border:4px solid #173f35;border-radius:4px;
 background-color:#071d18;
 background-image:linear-gradient(rgba(105,190,151,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(105,190,151,.1) 1px,transparent 1px);
 background-size:12px 12px;box-shadow:4px 4px 0 #9dbdaf;
 image-rendering:pixelated;
}
.developer-flight-retro .developer-space-track:before{
 inset:auto 9px 8px;height:12px;border-radius:0;background:#193f34;
 box-shadow:inset 0 0 0 2px #0a251e;
}
.developer-flight-retro .developer-space-stars{
 opacity:.7;background-image:radial-gradient(circle,#fff 0 1px,transparent 1px);
 background-position:4px 4px;background-size:34px 23px;animation:retroStarMove 1.2s steps(4) infinite;
}
.developer-flight-retro .developer-flight-fill{
 left:9px;top:auto;bottom:8px;height:12px;border-radius:0;
 background:repeating-linear-gradient(90deg,#34cf83 0 12px,#1a8156 12px 15px);
 box-shadow:none;animation:none;transition:none;
}
.developer-flight-retro .developer-flight-fill:after{display:none}
.developer-flight-retro .developer-ship{
 top:10px;width:58px;height:32px;filter:none;transition:none;image-rendering:pixelated;
}
.developer-flight-retro .developer-ship svg{image-rendering:pixelated}
.developer-flight-retro .developer-ship-dev,.developer-flight-retro .developer-ship-challenge{transform:none}
.developer-flight-retro .developer-ship-dev{color:#2fe18d}
.developer-flight-retro .developer-ship-challenge{color:#eb5960}
.developer-flight-retro .developer-ship-dev .pixel-dark{fill:#0c5137}
.developer-flight-retro .developer-ship-dev .pixel-main{fill:#2fce80}
.developer-flight-retro .developer-ship-dev .pixel-light{fill:#adff81}
.developer-flight-retro .developer-ship-dev .pixel-window{fill:#e8fff3}
.developer-flight-retro .developer-ship-dev .pixel-trail{fill:#f1df4b}
.developer-flight-retro .developer-ship-challenge .pixel-dark{fill:#6c1e2b}
.developer-flight-retro .developer-ship-challenge .pixel-main{fill:#dc454f}
.developer-flight-retro .developer-ship-challenge .pixel-light{fill:#ff9c70}
.developer-flight-retro .developer-ship-challenge .pixel-window{fill:#fff0c9}
.developer-flight-retro .developer-ship-challenge .pixel-trail{fill:#ffbf3e}
.developer-flight-retro.is-running .developer-ship-dev{animation:retroBobA .5s steps(2) infinite}
.developer-flight-retro.is-running .developer-ship-challenge{animation:retroBobB .55s steps(2) infinite}
.developer-flight-retro.is-battle .developer-ship-dev{animation:retroDodge .32s steps(2) 3}
.developer-flight-retro .developer-laser{height:4px;border-radius:0;box-shadow:none}
.developer-flight-retro.is-battle .developer-laser-red{animation:retroLaserRed .36s steps(4) 2}
.developer-flight-retro.is-counter .developer-laser-green{animation:retroLaserGreen .34s steps(4) 1}
.developer-flight-retro .developer-explosion{right:24px;top:8px;width:40px;height:40px}
.developer-flight-retro .developer-explosion:before{inset:4px;border-radius:0;background:conic-gradient(#fff 0 12.5%,#ffd84d 0 25%,#e74735 0 37.5%,transparent 0 50%,#ffd84d 0 62.5%,#e74735 0 75%,transparent 0);filter:none}
.developer-flight-retro .developer-explosion:after{display:none}
.developer-flight-retro.is-exploding .developer-explosion{animation:retroExplosion .5s steps(4) forwards}
.developer-flight-retro.is-exploding .developer-space-track{animation:retroShake .08s steps(2) 4}
.developer-flight-retro.is-launching .developer-ship-dev{opacity:1;animation:retroVictory 1.15s steps(8) forwards}
.developer-flight-retro.is-complete .developer-flight-fill{filter:none;box-shadow:none}
.developer-flight-retro .developer-debris{width:4px;height:4px;border-radius:0;background:#e74735;box-shadow:none;animation:developerDebris .45s steps(4) var(--delay) forwards}
@keyframes retroStarMove{to{background-position:-30px 4px}}
@keyframes retroBobA{50%{transform:translateY(-3px)}}@keyframes retroBobB{50%{transform:translateY(3px)}}
@keyframes retroDodge{0%,100%{transform:none}50%{transform:translate(-6px,-9px)}}
@keyframes retroLaserRed{0%{opacity:0;width:0}25%{opacity:1;width:38px}100%{opacity:0;width:120px;transform:translateX(-105px)}}
@keyframes retroLaserGreen{0%{opacity:0;width:0}25%{opacity:1;width:45px}100%{opacity:0;width:130px;transform:translateX(115px)}}
@keyframes retroExplosion{0%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.2)}100%{opacity:0;transform:scale(1.7)}}
@keyframes retroShake{50%{transform:translateX(3px)}}
@keyframes retroVictory{0%,18%{transform:translateY(0)}10%{transform:translateY(-6px)}35%{transform:translateX(12px)}100%{transform:translateX(calc(100vw + 100px));opacity:0}}
html[data-theme=dark] .developer-progress{background:#102c25;box-shadow:5px 5px 0 #061d18}
@media(max-width:560px){
 .developer-flight-retro .developer-space-track{height:58px}
 .developer-flight-retro .developer-ship{top:9px;width:50px;height:28px}
}
.leader-directory .leader-group>header{align-items:stretch;min-height:104px}.leader-directory .leader-toggle{min-width:0;min-height:104px}.leader-directory .leader-main{min-width:0;align-self:center}.leader-directory .leader-main b{overflow-wrap:break-word;word-break:normal;line-height:1.28}.leader-directory .leader-count{align-self:center}.leader-directory .leader-details{align-self:center;flex:0 0 auto}.leader-directory .follower-row{grid-template-columns:auto minmax(0,1fr) auto}.birthday-list button>span{min-width:0;align-content:center}.birthday-list button>span b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.birthday-day-list>button>span:nth-child(2){display:flex;align-items:center;min-width:0}.birthday-day-list>button>span:nth-child(2) b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1180px){.leader-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.leader-directory{grid-template-columns:1fr}.leader-directory .leader-group>header,.leader-directory .leader-toggle{height:148px;min-height:148px}.leader-directory .leader-toggle{padding:14px 14px 58px;grid-template-columns:auto minmax(0,1fr) auto}.leader-directory .leader-main b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.leader-directory .leader-main small,.leader-directory .leader-main em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leader-directory .leader-details{left:14px;right:14px;bottom:12px;top:auto;width:auto;margin:0;transform:none}.group-enrollment-callout{align-items:stretch;flex-direction:column}.group-enrollment-callout button{width:100%}.developer-preview-invitation{padding:0 10px}}

/* Barra superior institucional: controles estáveis em qualquer resolução */
.workspace>header .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;flex-wrap:nowrap}.workspace>header .header-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;height:42px;white-space:nowrap;line-height:1;flex:0 0 auto}.workspace>header .sound-toggle,.workspace>header .theme-toggle{min-width:82px;padding:0 12px}.workspace>header .sound-toggle span,.workspace>header .theme-toggle span{display:grid;place-items:center;width:18px;height:18px;margin:0;font-size:14px;line-height:1}.workspace>header .sound-toggle b,.workspace>header .theme-toggle b{line-height:1}
@media(max-width:760px){.workspace>header{gap:10px}.workspace>header .header-actions{gap:6px}.workspace>header .sound-toggle,.workspace>header .theme-toggle,.workspace>header .header-actions>.primary{width:42px;min-width:42px;padding:0}.workspace>header .sound-toggle b,.workspace>header .theme-toggle b{display:none}.workspace>header .header-actions>.primary{font-size:0}.workspace>header .header-actions>.primary::after{content:"+";font-size:18px;line-height:1}.developer-flight{gap:7px 12px}.developer-flight-line{height:10px}.developer-rocket{bottom:-4px;font-size:28px}.developer-screen-rocket{font-size:30px}}
.developer-profile-dialog,.developer-profile-layout,.developer-profile-content{overflow-x:hidden}.developer-profile-content,.developer-project-grid,.developer-skill-grid,.card,.leader-group,.leadership-card{min-width:0}

/* O cabeçalho global é o único cabeçalho fixo. Cards nunca podem invadir sua área. */
.workspace{min-width:0}
.workspace>header{position:sticky;top:0;z-index:100;height:73px;background:var(--white);isolation:isolate}
.workspace #content{position:relative;z-index:1}
.workspace #content header{position:static;top:auto;z-index:auto;height:auto}
.workspace #content .modal-head{position:relative;z-index:4}
.workspace>header>*{position:relative;z-index:1}
.workspace #content{overflow-x:clip}
.workspace #content>section,
.workspace #content>div{max-width:100%;min-width:0}
.leadership-grid,.people-groups,.report-cards,.strategic-bottom{
  align-items:stretch;
  grid-auto-rows:auto;
}
.leadership-grid>*,.people-groups>*,.report-cards>*,.strategic-bottom>*{
  min-width:0;
  overflow:hidden;
}
.leadership-card header,.leader-group header,.schedule-item header,.card header{
  max-width:100%;
  min-width:0;
}
.leadership-card header h2,.leader-group header h2,.leadership-card header b,
.leader-group header b{overflow-wrap:anywhere}
@media(max-width:760px){
 .workspace>header{height:64px;min-height:64px;padding:0 12px}
 .workspace #content{padding-top:18px}
}
.person-recipient-list>label[hidden],.contact-list-picker>label[hidden],.recipient-list>label[hidden]{display:none!important}
.modal-body [name=cep].is-loading{background-image:linear-gradient(90deg,transparent,#e5f4ee,transparent)!important;background-size:220% 100%!important;animation:cepLoading 1s linear infinite}
@keyframes cepLoading{to{background-position:-220% 0}}

/* Confirmações de presença por reunião */
.event-confirmation-panel{margin-top:16px;padding:20px}.event-confirmation-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;gap:24px;padding-bottom:17px;border-bottom:1px solid var(--line)}.event-confirmation-head small{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.14em}.event-confirmation-head h2{margin:5px 0 4px;font-size:20px}.event-confirmation-head p{margin:0;color:var(--muted);font-size:11px}.event-confirmation-head label{margin:0;color:var(--muted);font-size:9px;font-weight:700}.event-confirmation-head input{width:100%;margin-top:7px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink)}.event-confirmation-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px;padding-top:17px}.event-confirmation-chart article{padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--card)}.event-chart-label{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.event-chart-label span,.event-chart-label b,.event-chart-label small{display:block}.event-chart-label b{font-size:12px}.event-chart-label small{margin-top:4px;color:var(--muted);font-size:9px}.event-chart-label strong{color:var(--green);font:800 24px/1 Manrope}.event-chart-track{height:9px;margin:13px 0 9px;overflow:hidden;border-radius:999px;background:var(--green-light)}.event-chart-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#176b58,#6bcf96);transition:width .35s ease}.event-confirmation-chart footer{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:9px}.event-chart-empty{grid-column:1/-1;padding:25px;text-align:center;color:var(--muted)}.event-chart-empty b,.event-chart-empty span{display:block}.event-chart-empty b{color:var(--ink);margin-bottom:5px}html[data-theme=dark] .event-confirmation-chart article{background:#102d26}html[data-theme=dark] .event-chart-track{background:#23473d}
@media(max-width:720px){.event-confirmation-panel{padding:15px}.event-confirmation-head{grid-template-columns:1fr;gap:14px}.event-confirmation-chart{grid-template-columns:1fr}.event-confirmation-chart footer{align-items:flex-start;flex-direction:column}}

/* Agenda de mensagens: listas, reenvio e lotes sequenciais */
.recipient-choice{grid-template-columns:1.2fr repeat(4,minmax(0,1fr))}
.message-batches{display:grid;gap:12px;margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.single-message-progress{display:grid;gap:12px;margin:18px 0;padding:18px 20px;border:1px solid #9bd3c0;border-radius:16px;background:#f7fcfa;box-shadow:0 8px 28px rgba(20,94,76,.08)}.single-message-progress header,.single-message-progress footer{display:flex;align-items:center;justify-content:space-between;gap:18px}.single-message-progress header small{color:var(--green);font:800 9px Manrope;letter-spacing:.15em}.single-message-progress h2{margin:4px 0 2px;font-size:17px}.single-message-progress p,.single-message-progress footer{margin:0;color:var(--muted);font-size:11px}.single-message-progress header>strong,.single-message-progress footer>b{color:var(--green)}.single-progress-track{height:10px;overflow:hidden;border-radius:999px;background:#dcece6}.single-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#125b4c,#63c79a);transition:width .45s ease}.single-message-progress.is-active .single-progress-track i{background-size:200% 100%;animation:message-progress-pulse 1.2s linear infinite}.single-message-progress.is-failed{border-color:#edb4ae;background:#fff8f7}.single-message-progress.is-failed header>strong,.single-message-progress.is-failed footer>b{color:#b94d43}.single-message-progress.is-failed .single-progress-track i{background:#c75950}@keyframes message-progress-pulse{to{background-position:-200% 0}}
.batch-details{border-top:1px solid var(--line);padding-top:9px}.batch-details summary{cursor:pointer;color:var(--green);font-size:10px;font-weight:800}.batch-details>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 2px;border-bottom:1px solid var(--line);font-size:10px}.batch-details>div:last-child{border-bottom:0}.batch-details b.sent{color:#167259}.batch-details b.failed,.batch-details b.cancelled{color:#b84d44}.batch-details b.pending{color:#8a6a20}
.message-batches>header,.batch-summary,.message-batches article footer{display:flex;align-items:center;justify-content:space-between;gap:14px}.message-batches>header small{color:var(--green);font:800 9px Manrope;letter-spacing:.15em}.message-batches>header h2{margin:4px 0 0;font-size:18px}.message-batches>header>span,.batch-summary small,.message-batches article footer>span{color:var(--muted);font-size:10px}.message-batches article{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.batch-summary b,.batch-summary small{display:block}.batch-summary strong{color:var(--green);font:800 15px Manrope}.batch-track{height:8px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--green) 12%,transparent)}.batch-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#74c99d);transition:width .35s}.message-batches article footer>div{display:flex;gap:7px}
.forward-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:18px}.recipient-selector,.forward-preview{padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.recipient-filter-grid,.list-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recipient-list,.contact-list-picker{display:grid;max-height:300px;margin-top:12px;overflow:auto;border:1px solid var(--line);border-radius:11px}.recipient-list>label,.contact-list-picker>label,.forward-groups label{display:flex;align-items:center;gap:10px;padding:11px 12px;border-bottom:1px solid var(--line);cursor:pointer}.recipient-list>label:last-child,.contact-list-picker>label:last-child{border-bottom:0}.recipient-list input,.contact-list-picker input,.forward-groups input{width:17px!important;height:17px;flex:0 0 17px;accent-color:var(--green)}.recipient-list span,.contact-list-picker span,.forward-groups span{min-width:0}.recipient-list b,.recipient-list small,.contact-list-picker b,.contact-list-picker small,.forward-groups b,.forward-groups small{display:block}.recipient-list small,.contact-list-picker small,.forward-groups small{margin-top:3px;color:var(--muted);font-size:9px}.forward-groups{margin-top:14px}.forward-groups>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.forward-preview{display:grid;align-content:start;gap:12px}.forward-preview>small{color:var(--green);font:800 9px Manrope;letter-spacing:.14em}.forward-preview h3,.forward-preview p{margin:0}.forward-preview p{padding:13px;border-radius:10px;background:var(--soft);white-space:pre-wrap}.forward-mode,.batch-warning{padding:11px;border:1px solid #e6c783;border-radius:10px;background:#fff7df;color:#71531b;font-size:10px;line-height:1.45}.contact-list-fields{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:12px}.contact-list-fields.hidden{display:none!important}.contact-list-fields .list-filter-grid{grid-column:1/-1}.contact-list-picker{margin:0}.list-send-options{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.list-send-options .full{grid-column:1/-1}.list-send-options>label.full{display:flex;grid-template-columns:none;align-items:flex-start}.list-send-options>label.full input{width:17px!important;height:17px;flex:0 0 17px;accent-color:var(--green)}
html[data-theme=dark] .message-batches,html[data-theme=dark] .recipient-selector,html[data-theme=dark] .forward-preview{background:#102d26}html[data-theme=dark] .message-batches article,html[data-theme=dark] .forward-preview p,html[data-theme=dark] .list-send-options{background:#15382f}html[data-theme=dark] .batch-warning,html[data-theme=dark] .forward-mode{border-color:#7a6130;background:#392e16;color:#f3d997}
html[data-theme=dark] .single-message-progress{background:#102d26;border-color:#2c6e5e}html[data-theme=dark] .single-progress-track{background:#193e34}
@media(max-width:820px){.forward-layout,.contact-list-fields{grid-template-columns:1fr}.recipient-choice{grid-template-columns:1fr 1fr}.message-batches>header,.batch-summary,.message-batches article footer{align-items:flex-start;flex-direction:column}.message-batches article footer>div{width:100%;flex-wrap:wrap}.message-batches article footer button{flex:1}.forward-preview{order:-1}}
.message-modal .forward-layout{width:100%;min-width:0;align-items:start}.message-modal .recipient-selector,.message-modal .forward-preview{min-width:0;overflow:hidden}.message-modal .recipient-filter-grid label,.message-modal .forward-preview label{min-width:0}.message-modal .recipient-filter-grid input,.message-modal .recipient-filter-grid select,.message-modal .forward-preview select{width:100%;max-width:100%}.forward-original{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.forward-original div{display:grid;gap:3px}.forward-original small{color:var(--muted);font-size:9px;letter-spacing:.08em}.forward-original button{white-space:normal;text-align:center}.message-modal .modal-actions{position:sticky;bottom:0;z-index:2;background:var(--card);border-top:1px solid var(--line);padding-top:12px}
@media(max-width:820px){.message-modal .forward-layout{display:flex;flex-direction:column}.message-modal .forward-preview,.message-modal .recipient-selector{width:100%}.forward-original{align-items:stretch;flex-direction:column}.message-modal .modal-actions{display:grid;grid-template-columns:1fr 1fr}.message-modal .modal-actions span{grid-column:1/-1}.message-modal .modal-actions button{width:100%}}
@media(max-width:560px){.recipient-filter-grid,.list-filter-grid,.list-send-options,.recipient-choice{grid-template-columns:1fr}.message-batches{padding:13px}.recipient-list,.contact-list-picker{max-height:240px}}
@media(max-width:560px){.single-message-progress{padding:15px}.single-message-progress header,.single-message-progress footer{align-items:flex-start;flex-direction:column;gap:7px}}

/* Central de Relatórios */
.report-filter-panel{padding:0;margin-bottom:24px;overflow:hidden}.report-filter-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;border-bottom:1px solid var(--line)}.report-filter-panel>header>div:first-child{display:flex;flex-direction:column;gap:3px}.report-filter-panel>header small{font-size:9px;letter-spacing:.13em;color:#39766b;font-weight:800}.report-filter-panel>header b{font:700 14px Manrope}.report-filter-panel>header>div:last-child{display:flex;gap:8px}.report-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:18px 19px;align-items:end}.report-filter-grid label{min-width:0;color:var(--muted);font-size:10px;font-weight:700}.report-filter-grid input,.report-filter-grid select{display:block;width:100%;height:40px;margin-top:6px;border:1px solid #d8e4df;border-radius:9px;background:#fff;color:var(--ink);padding:0 11px;outline:0}.report-filter-grid input:focus,.report-filter-grid select:focus{border-color:#4c8d7f;box-shadow:0 0 0 3px #e0f1ea}.report-sensitive-toggle{grid-column:span 2;min-height:40px;border:1px solid #cfe2da;border-radius:9px;background:#f1f8f5;padding:10px 12px;display:flex;align-items:center;gap:8px;color:var(--green)!important}.report-sensitive-toggle input{width:auto;height:auto;margin:0;accent-color:var(--green)}.report-apply{height:40px}.report-filter-panel.is-collapsed .report-filter-grid{display:none}.report-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.report-card{padding:22px;display:flex;min-height:320px;flex-direction:column;transition:transform .2s,box-shadow .2s}.report-card:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(26,64,57,.1)}.report-card>header{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start}.report-card>header>span{width:48px;height:48px;border-radius:13px;background:#e1f2eb;color:var(--green);display:grid;place-items:center;font:800 22px Manrope}.report-card>header small{font-size:9px;letter-spacing:.12em;color:#4c7b72;font-weight:800}.report-card h2{font:800 19px Manrope;margin:5px 0 6px}.report-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.report-indicators{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0}.report-indicators>div{background:#f3f8f5;border:1px solid #e3ece8;border-radius:10px;padding:11px}.report-indicators strong,.report-indicators span{display:block}.report-indicators strong{font:800 20px Manrope;color:var(--green)}.report-indicators span{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.25}.report-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:17px;border-top:1px solid var(--line)}.report-export-actions{display:flex;gap:6px}.report-export-actions .ghost{font-size:11px;padding:9px 10px}
.report-modal{width:min(1380px,calc(100% - 32px));max-height:94vh}.report-modal .modal-body{grid-template-columns:1fr;padding:18px 22px}.report-preview-head{display:grid;grid-template-columns:1.5fr .8fr .65fr;gap:12px;align-items:end}.report-preview-head>div{display:flex;flex-direction:column;gap:4px}.report-preview-head>div b{font:800 16px Manrope}.report-preview-head>div span,.report-preview-head>div small{font-size:10px;color:var(--muted)}.report-preview-head label{font-size:10px;color:var(--muted)}.report-preview-head input,.report-preview-head select{width:100%;margin-top:5px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px}.report-column-picker{border:1px solid var(--line);border-radius:10px;background:#f7faf8;padding:11px 13px}.report-column-picker summary{cursor:pointer;font-size:11px;font-weight:700;color:var(--green)}.report-column-picker>div{display:flex;flex-wrap:wrap;gap:8px 15px;padding-top:12px}.report-column-picker label{font-size:10px;font-weight:500}.report-column-picker input{width:auto;margin:0 4px 0 0;accent-color:var(--green)}.report-preview-table{max-height:55vh;overflow:auto;border:1px solid var(--line);border-radius:10px}.report-preview-table table{min-width:1000px}.report-preview-table thead{position:sticky;top:0;z-index:1}.report-preview-table th{background:var(--green);color:#fff;padding:10px;font-size:9px}.report-preview-table td{padding:9px 10px;font-size:10px;white-space:nowrap}.report-preview-table tbody tr:nth-child(even){background:#f7faf8}.report-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-preview-footer>span{font-size:10px;color:var(--muted)}.report-preview-footer>div{display:flex;gap:8px}
[data-theme=dark] .report-filter-panel,[data-theme=dark] .report-card{background:#102d29}[data-theme=dark] .report-filter-grid input,[data-theme=dark] .report-filter-grid select,[data-theme=dark] .report-preview-head input,[data-theme=dark] .report-preview-head select{background:#0c2421;color:#eef8f4;border-color:#31524b}[data-theme=dark] .report-sensitive-toggle,[data-theme=dark] .report-indicators>div,[data-theme=dark] .report-column-picker{background:#153b35;border-color:#31524b}[data-theme=dark] .report-preview-table tbody tr:nth-child(even){background:#15352f}
@media(max-width:1180px){.report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-indicators{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.report-filter-panel>header{align-items:flex-start;flex-direction:column}.report-filter-panel>header>div:last-child{width:100%}.report-filter-panel>header>div:last-child button{flex:1}.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.report-sensitive-toggle{grid-column:1/-1}.report-cards{grid-template-columns:1fr}.report-card{min-height:0}.report-card>footer{align-items:stretch;flex-direction:column}.report-card>footer>.primary{width:100%}.report-export-actions{display:grid;grid-template-columns:repeat(3,1fr)}.report-preview-head{grid-template-columns:1fr}.report-preview-footer{align-items:stretch;flex-direction:column}.report-preview-footer>div{display:grid;grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.report-filter-grid{grid-template-columns:1fr}.report-sensitive-toggle{grid-column:auto}.report-indicators{grid-template-columns:1fr 1fr}.report-card{padding:17px}.report-card>header{grid-template-columns:40px 1fr}.report-card>header>span{width:40px;height:40px}.report-export-actions{grid-template-columns:1fr}.report-preview-footer>div{grid-template-columns:1fr}}

/* Report section headers must not inherit the sticky workspace toolbar rules. */
.workspace .report-filter-panel>header{height:auto;position:static;background:transparent}

/* Interações responsivas, filtros recolhíveis e agenda online */
.workspace button,dialog button,.public-landing button{min-height:40px;touch-action:manipulation;transition:transform .12s ease,box-shadow .18s ease,background-color .18s ease,opacity .18s ease}
.workspace button:not(:disabled):active,dialog button:not(:disabled):active,.public-landing button:not(:disabled):active{transform:scale(.98)}
.workspace button:focus-visible,dialog button:focus-visible,.public-landing button:focus-visible{outline:3px solid rgba(70,166,137,.25);outline-offset:2px}
button.button-responding{filter:brightness(.96)}
button:disabled{cursor:not-allowed;opacity:.58}
.modal-body input,.modal-body select,.modal-body textarea{display:block;width:100%;min-width:0;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:11px 13px;outline:0}
.modal-body select{min-height:46px;appearance:auto;line-height:1.3}
.modal-body input:focus,.modal-body select:focus,.modal-body textarea:focus{border-color:#4fa88f;box-shadow:0 0 0 4px rgba(79,168,143,.13)}
.modal-body .incomplete-note{margin-bottom:2px}
.filter-collapse-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-2px -2px 15px;padding:2px 2px 14px;border-bottom:1px solid var(--line)}
.filter-collapse-row>div{display:flex;flex-direction:column;gap:3px}
.filter-collapse-row b{font:800 14px Manrope;color:var(--ink)}
.filter-collapse-row small{color:var(--muted);font-size:10px}
.filter-collapse-button,.map-filter-toggle,[data-report-filter-toggle]{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-width:170px;min-height:42px!important;padding:10px 16px!important;border:1px solid #c7ded6!important;border-radius:10px!important;background:#f2f8f5!important;color:var(--green)!important;font-weight:800!important;cursor:pointer}
.filter-collapse-button span,.map-filter-toggle span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dcefe8;color:var(--green);font-size:14px}
.filter-collapse-button:hover,.map-filter-toggle:hover,[data-report-filter-toggle]:hover{background:#e4f3ed!important;border-color:#8ebdac!important}
.collapsible-filter.filters-collapsed>:not(.filter-collapse-row){display:none!important}
.collapsible-filter.filters-collapsed .filter-collapse-row{margin-bottom:0;padding-bottom:2px;border-bottom:0}
.filter-title{gap:14px}.filter-title>div:first-child{display:flex;flex-direction:column;gap:3px}.filter-title>div:first-child small{color:var(--muted);font-size:10px}
.filter-actions{display:flex;align-items:center;gap:8px}
.filter-clear{min-height:40px;padding:8px 13px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--surface)!important}
.filter-panel.is-collapsed .map-filter-content{display:none}

@media(max-width:760px){
 .filter-collapse-row,.filter-title{align-items:stretch;flex-direction:column}
 .filter-collapse-button,.map-filter-toggle,[data-report-filter-toggle]{width:100%;min-width:0}
 .filter-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
 .filter-actions>*{width:100%;min-width:0}
 .modal-actions{position:sticky;bottom:-22px;z-index:3;margin:8px -24px -22px;padding:13px 24px;background:var(--surface);border-top:1px solid var(--line)}
 .modal-actions button{flex:1}
}
@media(max-width:480px){
 .filter-actions{grid-template-columns:1fr}
 .workspace .primary,.workspace .ghost,dialog .primary,dialog .ghost{white-space:normal;text-align:center}
 .modal-body{grid-template-columns:1fr;padding:17px 15px}
 .modal-body label,.modal-body .full{grid-column:1}
 .modal-actions{margin-inline:-15px;padding-inline:15px}
}
.workspace .report-card>header{height:auto;position:static;background:transparent;padding:0;border:0;grid-template-columns:48px minmax(0,1fr)}
.workspace .report-card>header>div:first-of-type{display:block;min-width:0}
@media(max-width:480px){.workspace .report-card>header{grid-template-columns:40px minmax(0,1fr)}}

/* Ajustes finais: comunicação ampla, aniversários e controles territoriais */
@media(min-width:821px){
 .message-modal{width:min(1320px,95vw);max-width:95vw;min-width:980px;max-height:94vh;resize:horizontal;overflow:auto}
 .message-modal .modal-body{grid-template-columns:1fr 1fr;padding:22px 28px}
 .message-modal .recipient-choice{grid-template-columns:minmax(180px,.8fr) repeat(4,minmax(165px,1fr));gap:12px}
 .message-modal .message-compose{grid-template-columns:minmax(0,2fr) minmax(290px,.72fr)}
 .message-modal .contact-list-fields{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr)}
}
.person-recipient-tools{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(220px,.7fr);gap:12px}
.person-recipient-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:270px;overflow:auto;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.person-recipient-list>label{display:flex;align-items:center;gap:10px;margin:0;padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer}
.person-recipient-list>label:nth-child(odd){border-right:1px solid var(--line)}
.person-recipient-list>label:hover,.person-recipient-list>label:has(input:checked){background:var(--green-light)}
.person-recipient-list input{width:17px!important;height:17px;margin:0;accent-color:var(--green)}
.person-recipient-list span,.person-recipient-list b,.person-recipient-list small{display:block}.person-recipient-list small{margin-top:3px;color:var(--muted)}
.territory-filter-bar .filter-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px}
.birthday-dashboard>header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;text-align:left}
.birthday-dashboard>header small{font-size:10px}.birthday-dashboard h2{margin:0}.birthday-dashboard p{font-size:12px}
.birthday-today{display:flex;align-items:center;gap:7px;padding-left:16px;border-left:1px solid var(--line);white-space:nowrap}
.birthday-today strong{font:800 25px Manrope;color:#d4a62a}.birthday-today span{color:var(--muted);font-size:10px}
.birthday-day-list{display:grid;gap:8px}.birthday-day-list>button{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);text-align:left}
.birthday-day-list>button:hover{background:var(--green-light)}.birthday-day-list>button span{display:grid;gap:3px}.birthday-day-list>button small{color:var(--muted)}.birthday-day-list>button strong{color:var(--green);font-size:11px}
.filter-collapse-button span,.map-filter-toggle span,.map-collapse-button span{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;flex:0 0 22px;border-radius:50%;background:#dcefe8;color:var(--green);font:800 15px/1 Arial,sans-serif!important;padding:0!important;transform:none!important}
@media(max-width:820px){
 .message-modal{width:calc(100% - 16px);max-width:none;resize:none}
 .person-recipient-tools,.person-recipient-list{grid-template-columns:1fr}
 .person-recipient-list>label:nth-child(odd){border-right:0}
 .birthday-dashboard>header{align-items:flex-start;flex-direction:column;text-align:left}.birthday-today{padding:0;border:0}
}

/* Painéis operacionais adicionados na revisão final. */
.batch-details>div>span:first-child{display:grid;gap:3px;min-width:0}
.batch-details>div>span:first-child small{color:#a3423b;overflow-wrap:anywhere}
.batch-item-result{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.report-automation{margin:0 0 24px;padding:20px}
.report-automation>header{display:flex;align-items:center;justify-content:space-between;gap:18px}
.report-automation>header small,.leader-evolution>header small{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.13em}
.report-automation h2,.leader-evolution h2{margin:4px 0;font-size:18px}
.report-automation p,.leader-evolution p{margin:0;color:var(--muted);font-size:11px}
.report-automation-grid{display:grid;grid-template-columns:2fr auto auto 1.2fr 1fr auto;gap:10px;align-items:end;margin-top:17px}
.report-automation-grid label{color:var(--muted);font-size:10px;font-weight:700}
.report-automation-grid select{display:block;width:100%;min-height:40px;margin-top:6px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:0 10px}
.leader-evolution{margin-bottom:24px;padding:20px}
.leader-evolution-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:17px}
.leader-evolution-list article{display:grid;grid-template-columns:minmax(110px,.65fr) 1fr;align-items:end;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.leader-evolution-list article>div:first-child{display:grid;gap:4px}
.leader-evolution-list article span{color:var(--muted);font-size:9px}
.evolution-bars{display:flex!important;align-items:end;gap:5px;height:72px}
.evolution-bars>span{display:grid;grid-template-rows:1fr auto;align-items:end;gap:3px;flex:1;height:100%;text-align:center}
.evolution-bars i{display:block;min-height:6px;border-radius:4px 4px 1px 1px;background:linear-gradient(#7ac9a5,var(--green))}
.evolution-bars small{font-size:7px;color:var(--muted)}
@media(max-width:1100px){.report-automation-grid{grid-template-columns:repeat(3,1fr)}.leader-evolution-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.report-automation>header{align-items:flex-start;flex-direction:column}.report-automation-grid,.leader-evolution-list{grid-template-columns:1fr}.leader-evolution-list article{grid-template-columns:1fr 1.4fr}}

/* Visualizações avançadas: cada modo ocupa a área principal sem empilhar painéis. */
.view-switch{max-width:100%;overflow-x:auto;scrollbar-width:thin}
.view-switch button{min-height:38px;padding-inline:12px;white-space:nowrap}
.view-mode-panel{animation:view-mode-enter .22s ease both}
.view-mode-badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:var(--green-light);color:var(--green);font-size:10px;font-weight:800;white-space:nowrap}
.leader-evolution.view-mode-panel{margin-top:0}
.leader-evolution.view-mode-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
@keyframes view-mode-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:720px){
 .view-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;border:0;gap:6px;overflow:visible}
 .view-switch button,.view-switch button:first-child{border:1px solid var(--line);border-radius:8px}
 .view-switch button:last-child{grid-column:1/-1}
 .leader-evolution.view-mode-panel>header{align-items:stretch;flex-direction:column}
 .view-mode-badge{align-self:flex-start}
}
.import-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.import-kpis article{display:flex;flex-direction:column;gap:4px;padding:20px}.import-kpis strong{font-size:28px;color:var(--green)}.import-kpis span{color:var(--muted);font-size:13px}.import-kpis .pending{border-color:#ead59d}.import-kpis .rejected{border-color:#efc4bd}.import-workspace{padding:0;overflow:hidden}.import-workspace>header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:22px 24px;border-bottom:1px solid var(--line)}.import-workspace header small{letter-spacing:.14em;color:var(--green);font-weight:800}.import-workspace header h2{margin:6px 0}.import-workspace header p{margin:0;color:var(--muted)}.import-filters{display:grid;grid-template-columns:minmax(260px,1fr) 180px;gap:10px;min-width:min(520px,50%)}.import-list{display:flex;flex-direction:column}.import-row{display:grid;grid-template-columns:44px minmax(220px,1.5fr) minmax(160px,1fr) minmax(160px,1fr) auto auto;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--line)}.import-row:last-child{border-bottom:0}.import-row:hover{background:var(--soft)}.import-row>div{display:flex;flex-direction:column;gap:3px;min-width:0}.import-row span{color:var(--muted);font-size:12px}.import-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill.import-pending{background:#fff3d2;color:#8a6200}.pill.import-approved{background:#e0f5eb;color:#0b6a4f}.pill.import-rejected{background:#fde8e5;color:#a33a30}.logout-button.is-busy{opacity:.72;cursor:wait}
@media(max-width:900px){.import-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.import-workspace>header{align-items:stretch;flex-direction:column}.import-filters{min-width:0;width:100%;grid-template-columns:1fr 160px}.import-row{grid-template-columns:40px 1fr auto}.import-row>div:not(.import-person){grid-column:2}.import-row>.pill{grid-column:2}.import-row>.request-card-actions{grid-column:2/4;flex-direction:row}}
@media(max-width:560px){.import-kpis{grid-template-columns:1fr 1fr;gap:8px}.import-kpis article{padding:14px}.import-kpis strong{font-size:22px}.import-filters{grid-template-columns:1fr}.import-row{padding:14px;gap:10px}.import-row>.request-card-actions{grid-column:1/4}.import-row>.request-card-actions button{flex:1}}

/* Revisão visual: envio de mensagem, notificações e fila de importação. */
.message-modal .consent-box{display:grid;gap:10px;padding:14px 16px}
.message-modal .consent-box>label{display:flex!important;align-items:center;gap:10px;width:100%;margin:0;padding:10px 12px;border:1px solid #d5e5df;border-radius:10px;background:#fff;color:var(--ink);font-size:12px;font-weight:700;line-height:1.4;cursor:pointer}
.message-modal .consent-box>label:has(input:checked){border-color:#67ac97;background:#f0faf6}
.message-modal .consent-box input[type=checkbox]{display:inline-block!important;flex:0 0 18px!important;width:18px!important;min-width:18px!important;height:18px!important;margin:0!important;padding:0!important;accent-color:var(--green)}
.message-modal .consent-box>p{margin:1px 2px 0;line-height:1.5}
html[data-theme=dark] .message-modal .consent-box>label{border-color:#31584d;background:#102c25}
html[data-theme=dark] .message-modal .consent-box>label:has(input:checked){background:#173b31}

#toast .toast-actions,#toast.actionable .toast-actions{display:flex;align-items:center;gap:8px}
#toast .toast-close,#toast.actionable .toast-close{border:0;background:transparent;color:inherit;font:700 18px/1 Manrope;cursor:pointer;padding:2px 8px;opacity:.72}
#toast .toast-close:hover,#toast.actionable .toast-close:hover{opacity:1}
#toast .toast-action,#toast.actionable .toast-action{white-space:nowrap}

.import-workspace>header{display:grid;grid-template-columns:1fr;align-items:center;gap:20px;padding:26px;border-bottom:0;background:linear-gradient(180deg,#fff,#f8fbf9)}
.import-heading{text-align:center;max-width:760px;margin:auto}
.import-heading small,.import-heading h2,.import-heading p{display:block;text-align:center}
.import-filters{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(230px,1fr) auto minmax(240px,1.1fr) 140px auto;align-items:end;gap:10px;width:100%;min-width:0;padding:14px;border:1px solid #dbe8e3;border-radius:14px;background:#fff}
.import-group-search,.import-group-filter{display:grid;gap:6px;min-width:0}
.import-group-search span,.import-group-filter span{font-size:9px;font-weight:800;color:var(--muted);letter-spacing:.04em}
.import-group-search input,.import-group-filter select,.import-filters>input,.import-filters>select{width:100%;min-width:0;min-height:42px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:9px 11px}
.import-filters #refreshImportGroups{min-height:42px;white-space:nowrap}
.import-group-action{min-height:42px;white-space:nowrap;align-self:end}
.import-clear-action{min-height:42px;white-space:nowrap;align-self:end}
.access-request-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.access-request-actions .reject-user{color:#a6403b;border-color:#e7b6b2}

@media(max-width:1050px){
  .import-filters{grid-template-columns:1fr 1fr auto}
  .import-filters>input{grid-column:1/3}
  .import-group-action{grid-column:2/4}
  .import-clear-action{grid-column:1/2}
}
@media(max-width:680px){
  .message-modal .consent-box{padding:12px}
  .message-modal .consent-box>label{align-items:flex-start;padding:10px;font-size:11px}
  #toast[popover]{inset:auto 10px 10px 10px}
  .import-workspace>header{padding:18px 14px}
  .import-filters{grid-template-columns:1fr;padding:11px}
  .import-filters>input{grid-column:auto}
  .import-filters #refreshImportGroups{width:100%}
  .import-group-action{grid-column:auto;width:100%}
  .import-clear-action{grid-column:auto;width:100%}
}
.batch-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.batch-header-actions .danger{white-space:nowrap}
.number-consent{display:none!important}
@media(max-width:720px){.batch-header-actions{width:100%;justify-content:space-between}.batch-header-actions span{font-size:.78rem}}
.app-loading-state {
  min-height: 240px;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 10px;
  text-align: center;
}
.app-loading-state span {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(23, 77, 69, 0.18);
  border-top-color: var(--primary, #174d45);
  border-radius: 50%;
  animation: app-loading-spin 0.75s linear infinite;
}
.app-loading-state small {
  color: var(--muted, #687b76);
}
@keyframes app-loading-spin {
  to { transform: rotate(360deg); }
}

/* Página pública institucional */
.site-preloader{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:10px;background:radial-gradient(circle at 50% 43%,rgba(124,210,177,.2) 0,rgba(24,112,91,.1) 24%,transparent 46%),linear-gradient(145deg,#082f2d 0%,#0d4b43 54%,#123f48 100%);color:#fff;transition:opacity .42s ease,visibility .42s ease}
.site-preloader:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.035) 50%,transparent 66%);animation:siteSheen 2.2s ease-in-out infinite}
.site-preloader.is-done{visibility:hidden;opacity:0;pointer-events:none}.site-preloader strong{z-index:1;margin-top:12px;color:#fff;font:800 16px Manrope;letter-spacing:.015em}.site-preloader small{z-index:1;color:#a9dcca;font:600 11px Manrope;letter-spacing:.025em}.site-preloader-stage{position:relative;z-index:1;display:grid;place-items:center;width:180px;height:180px}.site-preloader-ring{position:absolute;inset:12px;border:1px solid rgba(174,232,209,.72);border-radius:50%;box-shadow:0 0 22px rgba(100,200,163,.08);animation:siteRing 1.8s ease-out infinite}.site-preloader-ring:nth-child(2){animation-delay:.55s}.site-preloader-ring:nth-child(3){animation-delay:1.1s}.site-preloader-mark{width:72px;height:72px;filter:drop-shadow(0 0 18px rgba(137,224,178,.48));animation:siteMark 1.8s ease-in-out infinite}
@keyframes siteRing{0%{transform:scale(.58);opacity:.8}75%,100%{transform:scale(1.25);opacity:0}}@keyframes siteMark{50%{transform:translateY(-4px);filter:drop-shadow(0 10px 24px rgba(137,224,178,.62))}}@keyframes siteSheen{0%,100%{opacity:.25;transform:translateX(-12%)}50%{opacity:.8;transform:translateX(12%)}}
.public-landing{display:block;min-height:100vh;padding:0;overflow:visible;color:#173b35;background:#f6faf7}.public-landing:before,.public-landing:after{display:none}.public-landing .login-preferences{display:none}.public-header{position:sticky;z-index:100;top:0;display:grid;align-items:center;grid-template-columns:auto 1fr auto;gap:28px;min-height:78px;padding:12px max(24px,calc((100vw - 1220px)/2));border-bottom:1px solid rgba(18,83,70,.09);background:rgba(248,252,249,.92);box-shadow:0 8px 30px rgba(15,68,57,.04);backdrop-filter:blur(16px)}
.public-logo{display:inline-flex;align-items:center;gap:11px;color:#143c34;text-decoration:none}.public-logo .mgd-mark{width:40px;height:40px}.public-logo span:last-child{display:flex;flex-direction:column}.public-logo b{font:800 14px Manrope}.public-logo small{color:#27866d;font:800 8px Manrope;letter-spacing:.2em;text-transform:uppercase}.public-header nav{display:flex;justify-content:center;gap:clamp(14px,2vw,30px)}.public-header nav a{color:#476760;font-size:12px;font-weight:700;text-decoration:none}.public-header nav a:hover{color:#15725d}.public-header-actions{display:flex;gap:9px}.public-header button,.public-hero button,.public-contact button{min-height:44px;border-radius:999px;padding:10px 17px;font-weight:800}.public-login-button{border:1px solid #b9d5ca;background:#fff;color:#175e50}.public-register-button{border:1px solid #155f50;background:#155f50;color:#fff}
.public-landing main{display:block}.public-hero{position:relative;isolation:isolate;display:grid;align-items:center;grid-template-columns:minmax(0,1.05fr) minmax(370px,.95fr);gap:clamp(38px,7vw,100px);min-height:calc(100vh - 78px);padding:70px max(24px,calc((100vw - 1220px)/2));overflow:hidden;background:radial-gradient(circle at 86% 28%,rgba(83,182,144,.22),transparent 28%),linear-gradient(135deg,#edf7f1 0%,#f9fbf8 53%,#e8f4ee 100%)}.public-hero:after{content:"";position:absolute;z-index:-1;width:560px;height:560px;right:-120px;bottom:-270px;border:1px solid rgba(33,126,101,.13);border-radius:50%;box-shadow:0 0 0 80px rgba(40,139,111,.035),0 0 0 160px rgba(40,139,111,.025)}
.public-hero-copy{max-width:660px}.public-brand-kicker,.public-section-kicker{display:block;color:#188064;font:800 10px Manrope;letter-spacing:.2em}.public-hero h1{max-width:680px;margin:18px 0 8px;color:#123f35;font:800 clamp(46px,5.5vw,76px)/.98 Manrope;letter-spacing:-.055em}.public-hero h2{margin:0;color:#2d7765;font:700 clamp(22px,2.2vw,31px)/1.3 Manrope}.public-hero p{max-width:610px;margin:20px 0 0;color:#55746d;font-size:16px;line-height:1.72}.public-hero-actions{display:flex;gap:12px;margin-top:30px}.public-primary-action{border-color:#166853;background:#166853;color:#fff;box-shadow:0 13px 28px rgba(18,101,81,.2)}.public-primary-action:hover{background:#0f5947;color:#fff}.public-primary-action span{background:#fff;color:#166853}.public-secondary-action{display:inline-flex;align-items:center;gap:9px;border:1px solid #b8d6ca;background:rgba(255,255,255,.76);color:#165d4e}.public-trust-row{display:flex;gap:28px;margin-top:42px;padding-top:23px;border-top:1px solid #cfe1da}.public-trust-row span{display:flex;flex-direction:column;color:#718a84;font-size:10px}.public-trust-row b{margin-bottom:3px;color:#164b40;font:800 17px Manrope}
.public-hero-photo{position:relative;justify-self:center;width:min(440px,100%);height:min(650px,72vh);min-height:510px;margin:0}.public-photo-halo{position:absolute;inset:8% -7% 4%;border-radius:48% 48% 32px 32px;background:linear-gradient(145deg,#2a846d,#0d554b);box-shadow:0 35px 80px rgba(14,76,62,.22)}.public-hero-photo img{position:relative;width:100%;height:100%;object-fit:cover;object-position:center 17%;border-radius:48% 48% 32px 32px;filter:saturate(.93);box-shadow:0 24px 65px rgba(12,69,56,.2)}.public-hero-photo figcaption{position:absolute;right:-20px;bottom:34px;display:flex;flex-direction:column;padding:15px 20px;border:1px solid rgba(255,255,255,.5);border-radius:14px;background:rgba(255,255,255,.88);box-shadow:0 15px 38px rgba(9,66,53,.16);backdrop-filter:blur(14px)}.public-hero-photo figcaption b{color:#164c40;font:800 13px Manrope}.public-hero-photo figcaption span{margin-top:3px;color:#628078;font-size:10px}
.public-intro,.public-transparency{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:100px max(24px,calc((100vw - 1160px)/2));background:#fff}.public-intro h2,.public-transparency h2,.public-highlight h2,.public-contact h2{margin:11px 0 0;color:#153e35;font:800 clamp(30px,3vw,45px)/1.1 Manrope;letter-spacing:-.04em}.public-intro>p{margin:25px 0 0;color:#657d77;font-size:15px;line-height:1.8}
.public-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:0 max(24px,calc((100vw - 1160px)/2)) 100px;background:#fff}.public-feature-grid article{min-height:235px;padding:30px 25px;border:1px solid #dce9e3;border-radius:18px;background:#f9fcfa;transition:transform .2s,box-shadow .2s}.public-feature-grid article:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,79,64,.09)}.public-feature-grid article>span{color:#2b9277;font:800 11px Manrope}.public-feature-grid h3{margin:34px 0 10px;color:#173e36;font:800 19px Manrope}.public-feature-grid p{margin:0;color:#6a807a;font-size:13px;line-height:1.7}
.public-highlight{display:grid;align-items:center;grid-template-columns:.85fr 1.15fr;gap:70px;padding:90px max(24px,calc((100vw - 1160px)/2));color:#fff;background:linear-gradient(135deg,#0b463c,#176654)}.public-highlight-image{height:430px;overflow:hidden;border-radius:22px;background:#d5e1e4}.public-highlight-image img{width:100%;height:100%;object-fit:cover;object-position:center 16%}.public-highlight .public-section-kicker{color:#9fe0bd}.public-highlight h2{color:#fff}.public-highlight p{max-width:560px;color:#c9dfd8;font-size:15px;line-height:1.8}.public-highlight a{display:inline-flex;gap:9px;margin-top:12px;color:#fff;font-weight:800;text-decoration:none}
.public-transparency{background:#eef7f2}.public-transparency-list{display:grid;gap:12px}.public-transparency-list p{display:flex;flex-direction:column;margin:0;padding:18px 20px;border:1px solid #d0e4db;border-radius:13px;background:rgba(255,255,255,.7)}.public-transparency-list b{color:#174a3e}.public-transparency-list span{margin-top:5px;color:#698078;font-size:12px}
.public-contact{padding:100px 24px;text-align:center;background:#fff}.public-contact h2{font-size:clamp(34px,4vw,54px)}.public-contact>p{max-width:650px;margin:18px auto;color:#687f79;font-size:15px;line-height:1.75}.public-contact>div{display:flex;justify-content:center;gap:12px;margin-top:28px}
.public-footer{display:grid;align-items:center;grid-template-columns:1fr auto 1fr;gap:24px;padding:34px max(24px,calc((100vw - 1160px)/2));color:#a9c7be;background:#092f29}.public-footer .public-logo{color:#fff}.public-footer p{margin:0;font-size:12px}.public-footer>span{justify-self:end;font-size:9px}.public-footer button{padding:0;border:0;background:none;color:#d7eee7}

/* Microfone flutuante: surge durante a rolagem e retorna ao início. */
.public-scroll-top{
 position:fixed;z-index:950;right:clamp(16px,2.4vw,34px);bottom:clamp(18px,3vw,34px);
 display:grid;place-items:center;width:86px;height:86px;padding:7px;border:1px solid rgba(34,132,103,.28);
 border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(230,247,239,.97));color:#155f50;
 box-shadow:0 18px 44px rgba(8,65,53,.24),0 0 0 7px rgba(40,145,112,.08),inset 0 1px rgba(255,255,255,.9);
 opacity:0;visibility:hidden;pointer-events:none;
 transform:translate3d(34px,24px,0) rotate(9deg) scale(.72);
 transition:opacity .3s ease,visibility .3s ease,transform .48s cubic-bezier(.18,.85,.2,1.25),box-shadow .25s ease;
 backdrop-filter:blur(13px);isolation:isolate;
}
.public-scroll-top:before,.public-scroll-top:after{
 content:"";position:absolute;z-index:-2;inset:-7px;border:1px solid rgba(34,148,112,.3);
 border-radius:50%;opacity:0;pointer-events:none
}
.public-scroll-top.is-visible{
 opacity:1;visibility:visible;pointer-events:auto;
 transform:translate3d(0,0,0) rotate(0) scale(1);
 animation:publicMicFlight 3.4s ease-in-out .45s infinite;
}
.public-scroll-top.is-visible:before{animation:publicMicSignal 2.4s ease-out .2s infinite}
.public-scroll-top.is-visible:after{animation:publicMicSignal 2.4s ease-out 1.2s infinite}
.public-scroll-top img{
 position:relative;z-index:2;width:68px;height:68px;border-radius:0;object-fit:contain;
 filter:drop-shadow(0 9px 9px rgba(12,87,67,.25));
 transition:transform .24s ease,filter .24s ease;
}
.public-scroll-top-trail{
 position:absolute;z-index:-1;right:54px;width:42px;height:8px;border-radius:999px;
 background:linear-gradient(90deg,transparent,rgba(42,161,126,.14),rgba(53,190,149,.65));
 opacity:0;filter:blur(2px);transform:scaleX(.5);transform-origin:right center;
 transition:opacity .22s ease,transform .22s ease;
}
.public-scroll-top-label{
 position:absolute;right:calc(100% + 10px);padding:6px 9px;border-radius:8px;
 background:#124f43;color:#fff;font:800 9px Manrope;letter-spacing:.06em;text-transform:uppercase;
 opacity:0;transform:translateX(7px);pointer-events:none;
 transition:opacity .2s ease,transform .2s ease;
}
.public-scroll-top:hover{
 box-shadow:0 21px 48px rgba(8,65,53,.28),0 0 0 7px rgba(44,158,126,.08);
 animation-play-state:paused;
}
.public-scroll-top:hover img{transform:translateY(-3px) rotate(-4deg) scale(1.06);filter:hue-rotate(72deg) saturate(.92) brightness(1.1) drop-shadow(0 10px 10px rgba(12,87,67,.28))}
.public-scroll-top:hover .public-scroll-top-trail{opacity:1;transform:scaleX(1)}
.public-scroll-top:hover .public-scroll-top-label{opacity:1;transform:none}
.public-scroll-top:active{transform:scale(.94)}
.public-scroll-top.is-launching img{animation:publicMicLaunch .62s cubic-bezier(.2,.8,.2,1)}
.public-scroll-top:focus-visible{outline:3px solid rgba(35,143,111,.38);outline-offset:5px}
@keyframes publicMicFlight{
 0%,100%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}
 28%{transform:translate3d(-3px,-8px,0) rotate(-2deg) scale(1.02)}
 58%{transform:translate3d(2px,-3px,0) rotate(2deg) scale(.99)}
 78%{transform:translate3d(-1px,-10px,0) rotate(-1deg) scale(1.025)}
}
@keyframes publicMicSignal{0%{opacity:.48;transform:scale(.86)}72%,100%{opacity:0;transform:scale(1.32)}}
@keyframes publicMicLaunch{
 0%{transform:translate(0) rotate(0) scale(1)}
 42%{transform:translate(-9px,5px) rotate(-7deg) scale(.93)}
 100%{transform:translate(20px,-22px) rotate(8deg) scale(1.08)}
}

/* Interações premium dos botões da página pública. */
.public-header :is(.public-login-button,.public-register-button),
.public-hero-actions :is(.public-primary-action,.public-secondary-action),
.public-contact :is(.public-primary-action,.public-secondary-action){
 position:relative;isolation:isolate;overflow:hidden;
 transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,
 border-color .24s ease,background-color .24s ease,color .24s ease;
 will-change:transform;
}
.public-header :is(.public-login-button,.public-register-button)::before,
.public-hero-actions :is(.public-primary-action,.public-secondary-action)::before,
.public-contact :is(.public-primary-action,.public-secondary-action)::before{
 content:"";position:absolute;z-index:-1;inset:-2px auto -2px -45%;width:34%;
 transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.52),transparent);
 transition:left .48s cubic-bezier(.22,.75,.25,1);pointer-events:none;
}
.public-hero-actions button>span,.public-contact button>span{
 transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease;
}
@media(hover:hover) and (pointer:fine){
 .public-header :is(.public-login-button,.public-register-button):hover,
 .public-hero-actions :is(.public-primary-action,.public-secondary-action):hover,
 .public-contact :is(.public-primary-action,.public-secondary-action):hover{
  transform:translateY(-3px) scale(1.015);
  border-color:#55aa91;box-shadow:0 13px 25px rgba(15,86,69,.19);
 }
 .public-header :is(.public-login-button,.public-register-button):hover::before,
 .public-hero-actions :is(.public-primary-action,.public-secondary-action):hover::before,
 .public-contact :is(.public-primary-action,.public-secondary-action):hover::before{left:118%}
 .public-hero-actions button:hover>span,.public-contact button:hover>span{
  transform:translateX(4px) scale(1.08);box-shadow:0 5px 13px rgba(9,83,65,.2);
 }
}
.public-header :is(.public-login-button,.public-register-button):active,
.public-hero-actions :is(.public-primary-action,.public-secondary-action):active,
.public-contact :is(.public-primary-action,.public-secondary-action):active{
 transform:translateY(0) scale(.97);transition-duration:.08s;
}
.public-header :is(.public-login-button,.public-register-button):focus-visible,
.public-hero-actions :is(.public-primary-action,.public-secondary-action):focus-visible,
.public-contact :is(.public-primary-action,.public-secondary-action):focus-visible{
 outline:3px solid rgba(38,145,113,.28);outline-offset:4px;
}
@media(prefers-reduced-motion:reduce){
 .public-header :is(.public-login-button,.public-register-button),
 .public-hero-actions :is(.public-primary-action,.public-secondary-action),
 .public-contact :is(.public-primary-action,.public-secondary-action),
 .public-hero-actions button>span,.public-contact button>span{transition:none}
 .public-header :is(.public-login-button,.public-register-button)::before,
 .public-hero-actions :is(.public-primary-action,.public-secondary-action)::before,
 .public-contact :is(.public-primary-action,.public-secondary-action)::before{display:none}
}

/* Grande atualização: acabamento institucional e administração */
.public-contact-photo-stage{isolation:isolate;overflow:visible;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.88) 0 29%,transparent 30%),linear-gradient(145deg,#dff4ea 0%,#c2e8d7 56%,#edf9f4 100%);border:1px solid rgba(20,101,80,.13);box-shadow:0 28px 70px rgba(15,78,62,.14)}
.public-contact-photo-stage:before{content:"";position:absolute;inset:8% 10%;border:1px solid rgba(23,144,111,.25);border-radius:50%;animation:institutionalOrbit 12s linear infinite;pointer-events:none}
.public-contact-photo-stage:after{content:"";position:absolute;inset:auto 4% 4% 4%;height:28%;border-radius:50%;background:radial-gradient(ellipse,rgba(16,108,82,.2),transparent 68%);filter:blur(12px);z-index:-1}
.public-contact-photo-stage img{position:relative;z-index:2;object-position:center bottom;filter:drop-shadow(0 18px 18px rgba(6,62,49,.14))}
.public-contact-pointer-action{left:50%!important;right:auto!important;bottom:-5px!important;transform:translateX(-50%)!important;z-index:4;white-space:nowrap}
.public-contact-pointer-action:hover{transform:translateX(-50%) translateY(-3px)!important}
.public-secondary-action.public-animated-cta,.public-login-button{color:#0e5f4b!important;background:#fff!important;border-color:#8ccdb8!important}
.public-secondary-action.public-animated-cta:hover,.public-login-button:hover{color:#fff!important;background:#126f57!important;border-color:#126f57!important;box-shadow:0 14px 30px rgba(18,111,87,.2)}
.public-secondary-action.public-animated-cta:hover *,.public-login-button:hover *{color:inherit!important}
@keyframes institutionalOrbit{to{transform:rotate(360deg)}}
.account-devices{margin-top:4px;border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface-soft,#f5faf7)}
.account-devices header{display:flex;justify-content:space-between;margin-bottom:12px}.account-devices header div{display:grid;gap:3px}.account-devices header span{color:var(--muted);font-size:.82rem}
.device-list{display:grid;gap:8px}.device-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff)}
.device-list article>div:first-child{display:grid;min-width:0;gap:3px}.device-list article span,.device-list article small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-list article>div:last-child{display:flex;gap:6px;flex:none}
.user-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.user-detail-grid>div{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft,#f5faf7);overflow-wrap:anywhere}.user-detail-grid small{color:var(--muted)}
.public-metrics-panel{display:grid;gap:18px;margin-top:24px}.public-metrics-panel header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.public-metrics-panel header p{margin:5px 0 0;color:var(--muted)}
.public-metrics-panel header>strong{font-size:2rem;color:var(--green);display:grid;text-align:right}.public-metrics-panel header>strong small{font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase}
.public-metric-row{display:grid;gap:7px}.public-metric-row span{display:flex;justify-content:space-between}.public-metric-row i{display:block;height:12px;border-radius:999px;overflow:hidden;background:#e2eee8}.public-metric-row em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#126f57,#70cda8);transition:width .6s ease}
@media(max-width:760px){.device-list article{align-items:flex-start;flex-direction:column}.device-list article>div:last-child{width:100%}.device-list article button{flex:1}.user-detail-grid{grid-template-columns:1fr}.public-metrics-panel header{flex-direction:column}.public-metrics-panel header>strong{text-align:left}}
@media(max-width:980px){.public-header{grid-template-columns:1fr auto}.public-header nav{display:none}.public-header-actions .public-login-button{display:none}.public-hero{grid-template-columns:1fr .8fr;gap:25px}.public-feature-grid{grid-template-columns:1fr 1fr}.public-intro,.public-transparency{gap:38px}.public-footer{grid-template-columns:1fr 1fr}.public-footer p{display:none}.public-footer>span{justify-self:end}}
@media(max-width:700px){.public-header{min-height:66px;padding:10px 16px}.public-header .public-register-button{padding:8px 12px;font-size:10px}.public-logo b{font-size:12px}.public-logo .mgd-mark{width:34px;height:34px}.public-hero{grid-template-columns:1fr;min-height:auto;padding:54px 20px 65px;text-align:center}.public-hero-copy{display:flex;align-items:center;flex-direction:column}.public-hero h1{font-size:43px}.public-hero h2{font-size:20px}.public-hero p{font-size:14px}.public-hero-actions{flex-direction:column;width:100%}.public-hero-actions button{justify-content:center;width:100%}.public-trust-row{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:8px}.public-hero-photo{order:-1;width:230px;height:300px;min-height:300px}.public-hero-photo figcaption{right:-32px;bottom:16px;padding:10px 12px}.public-intro,.public-transparency,.public-highlight{grid-template-columns:1fr;gap:30px;padding:68px 20px}.public-intro>p{margin-top:0}.public-feature-grid{grid-template-columns:1fr;padding:0 20px 68px}.public-feature-grid article{min-height:0}.public-highlight-image{height:350px}.public-contact{padding:70px 20px}.public-contact>div{flex-direction:column}.public-contact button{justify-content:center}.public-footer{grid-template-columns:1fr;text-align:center}.public-footer .public-logo{justify-content:center}.public-footer>span{justify-self:center}.login-preferences{top:76px;right:10px}}
@media(max-width:700px){.public-scroll-top{right:14px;bottom:16px;width:70px;height:70px;padding:6px}.public-scroll-top img{width:56px;height:56px;border-radius:0}.public-scroll-top-label{display:none}}
@media(prefers-reduced-motion:reduce){.site-preloader-ring,.site-preloader-mark{animation:none}.public-feature-grid article{transition:none}}
@media(prefers-reduced-motion:reduce){.public-scroll-top,.public-scroll-top.is-visible,.public-scroll-top img,.public-scroll-top:before,.public-scroll-top:after{animation:none!important;transition:opacity .15s ease,visibility .15s ease!important}.public-scroll-top.is-visible{transform:none}}

/* Biografia pública */
.public-biography{display:grid;grid-template-columns:.84fr 1.16fr;gap:72px;padding:105px max(24px,calc((100vw - 1160px)/2));background:#fff}.public-biography-photo{position:sticky;top:105px;align-self:start;height:650px;margin:0;overflow:hidden;border-radius:190px 190px 24px 24px;background:#dce5e9;box-shadow:0 24px 55px rgba(16,74,61,.14)}.public-biography-photo img{width:100%;height:100%;object-fit:cover;object-position:center 16%}.public-biography-photo:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(6,51,42,.76))}.public-biography-photo figcaption{position:absolute;z-index:2;right:30px;bottom:28px;left:30px;display:flex;flex-direction:column;color:#fff}.public-biography-photo figcaption span{color:#b5e4cf;font:800 8px Manrope;letter-spacing:.17em}.public-biography-photo figcaption b{margin-top:5px;font:800 25px Manrope}.public-biography-intro h2{margin:12px 0 24px;color:#153e35;font:800 clamp(34px,3.3vw,50px)/1.08 Manrope;letter-spacing:-.045em}.public-biography-intro blockquote{margin:0 0 26px;padding:19px 22px;border-left:4px solid #279372;border-radius:0 13px 13px 0;background:#eef8f3;color:#286454;font:700 16px/1.65 Manrope}.public-biography-intro>p{margin:0;color:#607a73;font-size:15px;line-height:1.85}.public-biography-story{display:grid;gap:0;margin-top:44px;border-top:1px solid #dce9e3}.public-biography-story article{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:23px 0;border-bottom:1px solid #dce9e3}.public-biography-story article>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e6f4ee;color:#1e7b62;font:800 10px Manrope}.public-biography-story h3{margin:4px 0 7px;color:#173f35;font:800 17px Manrope}.public-biography-story p{margin:0;color:#687f79;font-size:13px;line-height:1.7}.public-biography-reasons{grid-column:1/-1;margin-top:8px;padding:34px;border:1px solid #d3e7de;border-radius:18px;background:#f2f9f5}.public-biography-reasons>div{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.public-biography-reasons p{display:flex;flex-direction:column;margin:0;padding:20px;border-radius:13px;background:#fff}.public-biography-reasons b{color:#164b3e}.public-biography-reasons p span{margin-top:7px;color:#698079;font-size:12px;line-height:1.6}
@media(max-width:900px){.public-biography{grid-template-columns:.75fr 1.25fr;gap:35px}.public-biography-photo{height:560px}.public-biography-reasons>div{grid-template-columns:1fr}}
@media(max-width:700px){.public-biography{grid-template-columns:1fr;gap:35px;padding:68px 20px}.public-biography-photo{position:relative;top:auto;width:min(330px,100%);height:480px;margin:auto}.public-biography-intro{text-align:left}.public-biography-intro h2{font-size:35px}.public-biography-intro blockquote{font-size:14px}.public-biography-reasons{grid-column:1;padding:24px 18px}}

/* Experiência pública: retrato contido na seção, boas-vindas, redes e transições */
.public-biography-photo{position:relative;top:auto}
.public-hero .public-welcome-message{display:inline-flex;align-items:center;gap:9px;margin:0 0 20px;padding:10px 14px;border:1px solid #c7dfd5;border-radius:999px;background:rgba(255,255,255,.78);color:#53766d;font-size:11px;line-height:1.4;box-shadow:0 8px 24px rgba(16,91,72,.06)}
.public-welcome-message span{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border-radius:50%;background:#def1e8;color:#16735c}
.public-welcome-message strong{color:#174b3f}
.public-hero-actions{flex-wrap:wrap}
/* Ao rolar: elementos sobem suavemente (PC e mobile) */
.public-landing [data-scroll-reveal]{
  opacity:0;
  transform:translateY(40px);
  transition:
    opacity .85s cubic-bezier(.22,.7,.2,1) var(--reveal-delay, 0ms),
    transform .85s cubic-bezier(.22,.7,.2,1) var(--reveal-delay, 0ms);
  will-change:opacity,transform;
}
.public-landing [data-scroll-reveal].is-visible{
  opacity:1;
  transform:none;
  will-change:auto;
}
@media(max-width:700px){
  .public-hero .public-welcome-message{justify-content:center;border-radius:15px;text-align:left}
  .public-trust-row{margin-top:28px}
}

/* Preloader radial reutilizável e redes sociais sobre o retrato */
.site-preloader-halo{position:absolute;width:min(460px,88vw);height:min(460px,88vw);border-radius:50%;background:radial-gradient(circle,rgba(126,224,181,.16),rgba(37,139,108,.045) 48%,transparent 72%);animation:siteHalo 2.2s ease-in-out infinite}
.site-preloader-stage{width:240px;height:240px;transition:transform .32s ease}
.site-preloader-stage.lvl-1{transform:scale(1.025)}.site-preloader-stage.lvl-2{transform:scale(1.055)}.site-preloader-stage.lvl-3{transform:scale(1.08)}
.site-preloader-ring{inset:34px}.site-preloader-mark{width:84px;height:84px}
.site-preloader-rays{position:absolute;inset:0;transform-origin:center}
.site-preloader-ray-wrap{position:absolute;top:50%;left:50%;width:0;height:0;transform-origin:0 0}
.site-preloader-ray{display:block;width:3px;height:18px;margin-left:-1.5px;border-radius:999px;background:linear-gradient(to top,transparent,#70d3aa 44%,#effff8);box-shadow:0 0 7px rgba(128,232,187,.65);transform-origin:50% 100%;animation:siteRay 1.05s ease-in-out infinite}
.site-preloader-percent{z-index:1;margin-top:4px;color:#b9ead5;font:700 11px Manrope;letter-spacing:.16em}
.public-photo-socials{position:absolute;z-index:4;top:15%;right:8%;display:flex;align-items:center;gap:12px}
.public-photo-socials a{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.48);border-radius:50%;color:#fff;background:rgba(9,64,53,.28);box-shadow:0 7px 22px rgba(5,49,39,.18);backdrop-filter:blur(8px);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.public-photo-socials a:hover{transform:translateY(-3px) scale(1.05);border-color:#fff;background:rgba(17,105,83,.7)}
.public-photo-socials svg{width:20px;height:20px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.public-photo-socials .social-dot{fill:currentColor;stroke:none}.public-photo-socials .social-play{fill:currentColor;stroke:none}
@keyframes siteRay{0%,100%{opacity:.18;transform:scaleY(.45)}50%{opacity:1;transform:scaleY(1.15)}}@keyframes siteHalo{50%{opacity:.72;transform:scale(1.05)}}
@media(max-width:700px){.public-photo-socials{top:12%;right:4%;flex-direction:column;gap:7px}.public-photo-socials a{width:32px;height:32px}.public-photo-socials svg{width:17px;height:17px}.site-preloader-stage{width:210px;height:210px}.site-preloader-ray-wrap{transform-origin:0 0}}
@media(prefers-reduced-motion:reduce){.site-preloader-halo,.site-preloader-ray{animation:none}}

/* Landing institucional inspirada na referência fornecida */
.site-preloader-microphone{position:relative;z-index:2;width:104px;height:104px;border-radius:50%;object-fit:cover;filter:hue-rotate(72deg) saturate(.82) brightness(1.08) drop-shadow(0 0 20px rgba(112,222,170,.65));animation:siteMark 1.8s ease-in-out infinite}
.public-hero{grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:clamp(28px,5vw,76px);min-height:calc(100vh - 78px);background:#fff}
.public-hero:before{content:"";position:absolute;z-index:-2;right:-10%;top:-18%;width:62%;height:124%;border-radius:48% 0 0 52%;background:linear-gradient(150deg,#2d9275 0%,#126653 52%,#0c4d42 100%)}
.public-hero:after{z-index:-1;right:-11%;bottom:-55%;width:770px;height:770px;border-color:rgba(255,255,255,.18);box-shadow:0 0 0 94px rgba(255,255,255,.035),0 0 0 188px rgba(255,255,255,.025)}
.public-hero-copy{position:relative;z-index:2;max-width:720px}
.public-hero .public-welcome-message{position:relative;display:inline-flex;margin:0 0 8px;padding:8px 13px;border:1px solid #2b8e71;border-radius:2px;background:#fff;color:#143f35;font:700 16px Manrope;transform:rotate(-4deg);box-shadow:none}
.public-hero .public-welcome-message:before,.public-hero .public-welcome-message:after{content:"";position:absolute;width:6px;height:6px;background:#2b8e71}.public-hero .public-welcome-message:before{left:-3px;top:-3px}.public-hero .public-welcome-message:after{right:-3px;bottom:-3px}
.public-brand-kicker{margin-top:16px}
.public-hero h1{margin:9px 0 0;color:#121b18;font-size:clamp(56px,6.6vw,98px);line-height:.95;letter-spacing:-.065em}
.public-hero h2{margin:10px 0 0;color:#218268;font:800 clamp(45px,6vw,86px)/.92 Manrope;letter-spacing:-.055em}
.public-hero p:not(.public-welcome-message):not(.public-conversation-call){max-width:570px;margin-top:26px;color:#405f57;font-size:16px;line-height:1.68}
.public-hero .public-conversation-call{margin:28px 0 0;color:#152e28;font:700 18px Manrope}
.public-hero-actions{margin-top:17px}
.public-primary-action{min-width:150px;justify-content:center;background:#198166}
.public-primary-action span{order:2}
.public-hero-photo{align-self:end;width:min(530px,100%);height:min(735px,83vh);min-height:570px}
.public-photo-halo{display:none}
.public-hero-photo img{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:contain;object-position:center bottom;filter:saturate(.96) drop-shadow(0 30px 28px rgba(5,44,35,.19));box-shadow:none}
.public-hero-photo figcaption{right:auto;bottom:28px;left:8%;border-color:rgba(255,255,255,.36);background:rgba(7,62,51,.68);box-shadow:0 15px 38px rgba(5,42,34,.2);color:#fff}.public-hero-photo figcaption b{color:#fff}.public-hero-photo figcaption span{color:#c9e9de}
.public-photo-socials{top:13%;right:4%}
@media(max-width:980px){.public-hero{grid-template-columns:1fr .72fr}.public-hero h1{font-size:clamp(48px,7vw,72px)}.public-hero h2{font-size:clamp(38px,6vw,62px)}.public-hero-photo{min-height:500px}}
@media(max-width:700px){.public-hero{grid-template-columns:1fr;padding-top:44px;background:linear-gradient(180deg,#fff 0 47%,#eaf6f0 47% 100%)}.public-hero:before{top:auto;right:-32%;bottom:-12%;width:150%;height:56%;border-radius:50% 50% 0 0}.public-hero-copy{align-items:center}.public-hero .public-welcome-message{font-size:13px}.public-hero h1{font-size:50px}.public-hero h2{font-size:39px}.public-hero .public-conversation-call{margin-top:20px}.public-hero-photo{order:0;width:min(340px,100%);height:430px;min-height:430px;margin-top:14px}.public-photo-socials{top:17%;right:3%;flex-direction:column}.public-hero-photo figcaption{right:12%;bottom:12px;left:12%}.site-preloader-microphone{width:92px;height:92px}}

.public-hero-photo img{object-fit:cover;object-position:center 18%;border-radius:48% 48% 30px 30px}
.public-biography-photo img{object-position:center 18%}
.public-highlight-image img{object-position:center 18%}
.public-priority-pills{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 4px}
.public-priority-pills span{display:inline-flex;align-items:center;min-height:36px;padding:8px 13px;border:1px solid #bcd9ce;border-radius:999px;background:#f2faf6;color:#17624f;font:700 11px Manrope}
@media(max-width:700px){.public-hero-photo img{object-position:center 16%}.public-priority-pills{justify-content:center}.public-highlight>div:last-child{text-align:center}}

/* Retratos recortados, CTA apontado e acabamento editorial da página pública */
.public-hero-photo{overflow:visible}
.public-hero-photo img{object-fit:contain;object-position:center bottom;border-radius:0;animation:publicPortraitFloat 5.8s ease-in-out infinite}
.public-photo-socials a{opacity:0;animation:publicSocialArrive .58s cubic-bezier(.2,.85,.25,1.2) forwards}
.public-photo-socials a:nth-child(1){animation-delay:.35s}.public-photo-socials a:nth-child(2){animation-delay:.48s}.public-photo-socials a:nth-child(3){animation-delay:.61s}
.public-photo-socials a:hover{transform:translateY(-6px) rotate(-4deg) scale(1.13)}
.public-photo-socials a:nth-child(1):hover{background:linear-gradient(135deg,#8b4acf,#e14372,#f5a63c);box-shadow:0 13px 28px rgba(205,63,116,.36)}
.public-photo-socials a:nth-child(2):hover{background:#071c19;box-shadow:-4px 2px 0 rgba(36,235,223,.65),4px -2px 0 rgba(255,50,91,.55)}
.public-photo-socials a:nth-child(3):hover{background:#e62b2b;box-shadow:0 13px 28px rgba(220,40,40,.35)}
.public-biography{align-items:start}
.public-biography-photo.public-cutout-stage{position:relative;display:flex;align-items:flex-end;justify-content:center;height:660px;overflow:visible;border-radius:0;background:radial-gradient(circle at 50% 43%,#e5f5ee 0 42%,transparent 43%);box-shadow:none}
.public-biography-photo.public-cutout-stage:before{content:"";position:absolute;inset:11% 2% 5%;border:1px solid #b9dfd0;border-radius:48% 48% 24px 24px;transform:rotate(-2deg)}
.public-biography-photo.public-cutout-stage:after{display:none}
.public-biography-photo.public-cutout-stage img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 24px 24px rgba(16,74,61,.18));animation:publicPortraitFloat 6.4s ease-in-out infinite}
.public-biography-photo.public-cutout-stage figcaption{right:8%;bottom:19px;left:8%;align-items:center;padding:13px 18px;border:1px solid rgba(255,255,255,.52);border-radius:16px;background:rgba(9,64,53,.82);text-align:center;backdrop-filter:blur(9px)}
.public-portrait-orbit,.public-contact-orbit{position:absolute;z-index:0;width:88%;aspect-ratio:1;border:1px solid rgba(42,143,111,.24);border-radius:50%;animation:publicOrbit 18s linear infinite}
.public-portrait-orbit:after,.public-contact-orbit:after{content:"";position:absolute;top:8%;right:10%;width:18px;height:18px;border:5px solid #fff;border-radius:50%;background:#269272;box-shadow:0 8px 20px rgba(30,124,97,.3)}
.public-contact{display:grid;grid-template-columns:minmax(350px,.88fr) minmax(0,1fr);align-items:center;gap:clamp(44px,7vw,110px);width:100%;overflow:hidden;box-sizing:border-box;padding:90px max(24px,calc((100vw - 1160px)/2));text-align:left;background:linear-gradient(135deg,#f7fcf9,#eaf7f1)}
.public-contact-portrait{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:600px;margin:0}
.public-contact-portrait:before{content:"";position:absolute;inset:8% 1% 1%;border-radius:48% 48% 28px 28px;background:linear-gradient(160deg,#dff2e9,#bfe4d4)}
.public-contact-portrait img{position:absolute;z-index:2;inset:auto 0 0;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 22px 25px rgba(8,75,58,.18));animation:publicPortraitFloat 6s ease-in-out infinite}
.public-contact-orbit{top:12%;left:6%;width:88%}
.public-contact-pointer-action{position:absolute;z-index:4;right:20%;bottom:6.5%;display:inline-flex;align-items:center;gap:13px;min-height:52px;padding:9px 10px 9px 21px!important;border:0;background:#168269;color:#fff;box-shadow:0 16px 35px rgba(10,104,80,.28);transition:transform .25s ease,box-shadow .25s ease}
.public-contact-pointer-action span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#156c58;transition:transform .25s ease}
.public-contact-pointer-action:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 21px 44px rgba(10,104,80,.36)}
.public-contact-pointer-action:hover span{transform:translateX(4px) rotate(-12deg)}
.public-contact-copy{display:block!important;min-width:0;margin:0!important}
.public-contact-copy h2{max-width:650px;font-size:clamp(40px,5vw,64px)}
.public-contact-copy>p{max-width:590px;margin:20px 0 0;color:#607a73;font-size:16px;line-height:1.75}
.public-contact-copy .public-contact-actions{display:flex!important;align-items:center;flex-direction:row!important;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:30px}
.public-footer{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:13px;width:100%;box-sizing:border-box;margin:0!important;padding:54px 24px 38px;text-align:center;background:radial-gradient(circle at 50% 0,#14594b,#082f29 62%);border-top:1px solid rgba(155,220,193,.2)}
.public-footer .public-logo{justify-content:center}.public-footer p{margin:0;color:#d1e8df;font:700 14px Manrope}
.public-footer>span{font-size:10px}.public-footer-socials{display:flex;justify-content:center;gap:8px;margin:4px 0 7px}
.public-footer-socials a{padding:8px 13px;border:1px solid rgba(207,238,226,.23);border-radius:999px;color:#e8f7f1;font:700 10px Manrope;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.public-footer-socials a:hover{transform:translateY(-4px);border-color:#a8dec9;background:rgba(94,188,150,.18)}
@keyframes publicPortraitFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes publicSocialArrive{from{opacity:0;transform:translateX(20px) scale(.72)}to{opacity:1;transform:none}}
@keyframes publicOrbit{to{transform:rotate(360deg)}}
@media(max-width:900px){.public-contact{grid-template-columns:.82fr 1fr;gap:35px}.public-contact-portrait{min-height:510px}.public-contact-pointer-action{right:13%}}
@media(max-width:700px){
 .public-biography-photo.public-cutout-stage{width:min(390px,100%);height:510px;background:radial-gradient(circle at 50% 44%,#e5f5ee 0 41%,transparent 42%)}
 .public-contact{grid-template-columns:1fr;gap:24px;padding:68px 20px;text-align:center}
 .public-contact-portrait{width:min(390px,100%);min-height:510px;margin:auto}
 .public-contact-pointer-action{right:50%;bottom:5%;transform:translateX(50%)}
 .public-contact-pointer-action:hover{transform:translateX(50%) translateY(-4px)}
 .public-contact-copy>p{margin-right:auto;margin-left:auto}.public-contact-copy .public-contact-actions{justify-content:center;flex-direction:column!important}
 .public-contact-actions button{width:100%}.public-footer{padding:45px 20px 34px}.public-footer-socials{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.public-hero-photo img,.public-biography-photo.public-cutout-stage img,.public-contact-portrait img,.public-portrait-orbit,.public-contact-orbit,.public-photo-socials a{animation:none}.public-photo-socials a{opacity:1}}

/* Acabamento 2026-07-27: CTAs, redes sociais, retratos e microfone flutuante. */
.public-scroll-top-label{display:none!important}
.public-scroll-top-trail{z-index:0;inset:7px;width:auto;height:auto;border-radius:50%;background:none;opacity:1;filter:none;transform:none}
.public-scroll-top-trail::before,.public-scroll-top-trail::after{
 content:"";position:absolute;inset:0;border:2px solid rgba(36,151,116,.43);border-radius:50%;
 opacity:0;animation:publicMicAudioWave 2.2s ease-out infinite;pointer-events:none
}
.public-scroll-top-trail::after{animation-delay:1.1s}
@keyframes publicMicAudioWave{0%{opacity:.62;transform:scale(.72)}75%,100%{opacity:0;transform:scale(1.48)}}

.public-animated-cta{
 position:relative!important;isolation:isolate;display:inline-flex!important;align-items:center!important;
 justify-content:center!important;gap:12px!important;overflow:hidden!important;padding:8px 9px 8px 19px!important;
 white-space:nowrap!important;
 transition:color .28s ease,border-color .28s ease,transform .28s ease,box-shadow .28s ease!important
}
.public-animated-cta::before{
 content:""!important;position:absolute!important;z-index:-1!important;inset:0!important;width:auto!important;
 background:linear-gradient(105deg,#0e5949,#1a8a6d)!important;transform:scaleX(0)!important;
 transform-origin:left center!important;transition:transform .36s cubic-bezier(.2,.78,.2,1)!important;pointer-events:none
}
.public-animated-cta>.public-button-label{position:relative;z-index:1;display:inline!important;width:auto!important;height:auto!important;background:none!important;color:inherit!important}
.public-animated-cta>.public-button-arrow{
 position:relative;z-index:1;display:grid!important;place-items:center;width:34px!important;height:34px!important;
 flex:0 0 34px;border-radius:50%!important;background:#fff!important;color:#176954!important;
 box-shadow:0 5px 13px rgba(8,70,55,.16);transition:transform .25s ease,box-shadow .25s ease!important
}
.public-animated-cta:hover{color:#fff!important;border-color:#176954!important;transform:translateY(-3px)!important;box-shadow:0 14px 28px rgba(13,94,73,.22)!important}
.public-animated-cta:hover::before{transform:scaleX(1)!important}
.public-animated-cta:hover>.public-button-arrow{transform:translateX(3px) rotate(-8deg)!important;box-shadow:0 7px 18px rgba(3,52,40,.25)}
.public-register-button.public-animated-cta::before,.public-primary-action.public-animated-cta::before,.public-contact-pointer-action.public-animated-cta::before{background:linear-gradient(105deg,#0a4c3e,#27a47f)!important}

.public-photo-socials{overflow:visible}
.public-photo-socials a{position:relative;overflow:hidden!important;flex:0 0 auto;text-decoration:none;will-change:transform,background-color}
.public-photo-socials svg{display:block;overflow:hidden!important;flex:none}
.public-photo-socials a:nth-child(1):hover{color:#fff!important;border-color:#fff;background:linear-gradient(135deg,#6f3cc3 5%,#d8397c 48%,#f5a52f 100%)!important}
.public-photo-socials a:nth-child(2):hover{color:#fff!important;border-color:#fff;background:#111!important;box-shadow:-3px 2px 0 #25f4ee,3px -2px 0 #fe2c55,0 13px 28px rgba(0,0,0,.24)!important}
.public-photo-socials a:nth-child(3):hover{color:#fff!important;border-color:#fff;background:#ff0033!important;box-shadow:0 13px 28px rgba(255,0,51,.3)!important}

.public-hero:before{animation:publicHeroBackdrop 12s ease-in-out infinite alternate;transform-origin:center}
.public-hero:after{animation:publicHeroOrbit 22s linear infinite}
.public-contact-portrait:before{inset:6% 3% 1%;animation:publicContactBackdrop 8s ease-in-out infinite alternate}
.public-contact-portrait img{left:50%;width:94%;transform:translateX(-50%);animation:publicContactPortrait 6s ease-in-out infinite}
.public-contact-pointer-action{right:auto;left:50%;bottom:1.5%;transform:translateX(-50%)}
.public-contact-pointer-action:hover{transform:translateX(-50%) translateY(-5px)!important}

/* Portal público: composição desktop estável e institucional */
.public-contact-portrait{isolation:isolate;width:min(560px,100%);min-height:620px;overflow:visible}
.public-contact-portrait:before{inset:8% 5% 5%;border-radius:42% 42% 26% 26%/30% 30% 18% 18%;background:radial-gradient(circle at 72% 18%,rgba(255,255,255,.92) 0 8%,transparent 9%),radial-gradient(circle at 22% 72%,rgba(78,176,143,.25),transparent 30%),linear-gradient(145deg,#eaf7f1 0%,#c9eadc 52%,#a9d9c7 100%);box-shadow:inset 0 0 0 1px rgba(30,132,103,.13),0 28px 70px rgba(22,103,81,.12);animation:publicContactBackdrop 7s ease-in-out infinite alternate}
.public-contact-portrait:after{content:"";position:absolute;z-index:0;width:68%;aspect-ratio:1;border:1px solid rgba(24,128,100,.22);border-radius:50%;top:12%;left:16%;animation:publicOrbitSpin 18s linear infinite}
.public-contact-portrait img{width:92%;height:98%;object-position:center bottom}
.public-contact-pointer-action{bottom:18px;white-space:nowrap}
.public-secondary-action.public-animated-cta:hover,.public-login-button.public-animated-cta:hover{background:#176954!important;color:#fff!important}
.public-animated-cta:hover>.public-button-label{color:#fff!important}

/* Progresso do desenvolvedor: corrida leve, sem estética futurista */
.developer-runner-track{position:relative;grid-column:1/-1;height:70px;overflow:hidden;border:1px solid #b9d9cd;border-radius:18px;background:linear-gradient(180deg,#f6fbf8 0 62%,#d8e7e0 63% 68%,#668478 69% 100%);box-shadow:inset 0 1px #fff,0 9px 25px rgba(18,89,70,.1)}
.developer-runner-track:before{content:"";position:absolute;inset:12px 0 auto;height:28px;background:repeating-linear-gradient(90deg,transparent 0 62px,rgba(26,119,92,.06) 63px 64px)}
.developer-runner-track .developer-flight-fill{left:0;top:auto;bottom:0;height:7px;border-radius:0;background:linear-gradient(90deg,#155e4c,#56b994);box-shadow:none;animation:none;transition:none}
.developer-road-lines{position:absolute;left:0;right:0;bottom:10px;height:2px;background:repeating-linear-gradient(90deg,#eff7f3 0 28px,transparent 29px 48px)}
.developer-runner{position:absolute;z-index:3;left:10px;bottom:12px;width:34px;height:46px;filter:drop-shadow(0 5px 4px rgba(15,73,57,.2));will-change:left}
.developer-runner i{position:absolute;display:block;background:#176b55}.runner-head{width:11px;height:11px;left:12px;top:0;border-radius:50%!important;background:#c98f68!important}.runner-body{width:9px;height:20px;left:13px;top:11px;border-radius:5px!important}.runner-arm,.runner-leg{width:5px;height:19px;border-radius:5px!important;transform-origin:50% 2px}.runner-arm{top:13px}.runner-arm-a{left:12px}.runner-arm-b{left:18px}.runner-leg{top:27px}.runner-leg-a{left:13px}.runner-leg-b{left:18px}
.developer-flight.is-running .runner-arm-a,.developer-flight.is-running .runner-leg-b{animation:runnerStride .48s ease-in-out infinite alternate}.developer-flight.is-running .runner-arm-b,.developer-flight.is-running .runner-leg-a{animation:runnerStrideReverse .48s ease-in-out infinite alternate}.developer-flight.is-running .developer-runner{animation:runnerBounce .24s ease-in-out infinite alternate}
.developer-finish-line{position:absolute;right:14px;bottom:7px;width:10px;height:45px;background:repeating-linear-gradient(180deg,#fff 0 5px,#173f35 6px 10px);opacity:.72}.developer-flight.is-complete .developer-runner{filter:drop-shadow(0 5px 4px rgba(15,73,57,.2)) drop-shadow(0 0 8px #84d8b8)}
@keyframes runnerStride{to{transform:rotate(42deg)}}@keyframes runnerStrideReverse{to{transform:rotate(-42deg)}}@keyframes runnerBounce{to{transform:translateY(-2px)}}
@media(max-width:760px){.public-contact-portrait{min-height:510px}.public-contact-pointer-action{bottom:12px}.developer-runner-track{height:62px}}
@media(prefers-reduced-motion:reduce){.developer-runner,.developer-runner i,.public-contact-portrait:after{animation:none!important}}

/* Acabamento 2026-07-27: contato público estável em desktop */
@media(min-width:901px){
 .public-contact{grid-template-columns:minmax(430px,560px) minmax(460px,1fr);align-items:center}
 .public-contact-portrait{justify-self:center;min-height:590px}
 .public-contact-portrait:before{
  inset:5% 4% 4%;
  border-radius:36px 48% 36px 48%;
  background:
   radial-gradient(circle at 18% 20%,rgba(255,255,255,.9) 0 7%,transparent 7.5%),
   radial-gradient(circle at 78% 68%,rgba(30,143,108,.18) 0 20%,transparent 21%),
   linear-gradient(140deg,#eaf7f1,#bde4d4 55%,#def2e9);
 }
 .public-contact-portrait img{left:50%;transform:translateX(-50%);object-position:center bottom}
 .public-contact-copy{align-self:center}
 .public-contact-pointer-action{left:50%!important;right:auto!important;bottom:7px!important;transform:translateX(-50%)!important}
 .public-contact-pointer-action:hover{transform:translateX(-50%) translateY(-4px)!important}
}
.public-secondary-action.public-animated-cta:hover,
.public-login-button.public-animated-cta:hover{
 background:#176954!important;
 color:#fff!important;
 border-color:#176954!important;
}
.public-secondary-action.public-animated-cta:hover .public-button-label,
.public-login-button.public-animated-cta:hover .public-button-label{color:#fff!important}
.public-secondary-action.public-animated-cta:hover .public-button-arrow,
.public-login-button.public-animated-cta:hover .public-button-arrow{background:#fff!important;color:#176954!important}

/* Cards densos: nomes longos e listas curtas não deformam a grade */
.leader-directory{align-items:start}
.leader-group{height:auto}
.leader-group .leader-toggle{min-width:0}
.leader-group .leader-main{min-width:0}
.leader-group .leader-main b{display:block;max-width:100%;line-height:1.3;overflow-wrap:anywhere}
.leader-group .leader-details{position:static;justify-self:stretch;margin:0 12px 12px;text-align:center}
.leader-group:not(.expanded) .leader-details{margin-bottom:12px}
.leadership-card{height:100%}
.leadership-card header>div{min-width:0}
.leadership-card h3{max-width:100%;overflow-wrap:anywhere;line-height:1.25}
.leadership-card footer{margin-top:auto}
.people-audience-filter{align-self:stretch}
.people-audience-filter select{width:100%}
html[data-theme=dark] .pill:not(.red):not(.amber){color:#164f40}

/* Atualização institucional: cards compactos e nomes longos protegidos */
.leadership-cards{align-items:stretch;gap:18px}
.leadership-card{display:flex;min-width:0;min-height:360px;flex-direction:column;overflow:hidden}
.leadership-card>header{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:0;padding-bottom:8px;text-align:center}
.leadership-card>header>.leader-avatar{width:52px;height:52px;font-size:14px}
.leadership-card-head{min-width:0;width:100%}
.leadership-card>header h3{margin:0;font:800 15px/1.35 Manrope}
.leadership-card-name{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:center;white-space:normal;overflow-wrap:anywhere}
.leadership-card-name:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.leadership-card>header p{margin:4px 0 0;font-size:11px;color:var(--muted);white-space:normal;overflow-wrap:anywhere}
.leadership-card-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;width:100%}
.leadership-card .leader-status{white-space:nowrap}
.leadership-card .group-status{flex-direction:row;align-items:center;gap:6px;width:fit-content;max-width:100%;white-space:nowrap;padding:4px 10px}
.leadership-card .group-status b{font-size:10px;white-space:nowrap}
.leadership-card .group-status small{display:none}
.leader-card-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.leader-card-metrics span{min-width:0;padding:10px 6px;text-align:center;line-height:1.3}
.leadership-card dl{grid-template-columns:minmax(0,1fr) minmax(120px,1fr);gap:8px 12px}
.leadership-card dd{min-width:0;overflow-wrap:anywhere;text-align:center}
.leadership-card dt{text-align:center}
.leadership-card .leader-card-metrics{justify-content:center}
.leadership-card footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:auto}
.leadership-card footer button{min-width:0;min-height:42px;padding:8px;font-size:10px;white-space:normal}.leadership-card footer:has([data-association-edit]){display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}.leadership-card footer:has([data-association-edit]) button{flex:0 1 150px;min-width:140px}
.leader-directory{align-items:stretch;gap:18px}
.leader-group{display:flex;min-width:0;min-height:230px;flex-direction:column;overflow:hidden}
.leader-group>header{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:0;min-height:76px}
.leader-toggle{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important;min-width:0}
.leader-main{min-width:0}.leader-main>b{display:block;overflow:hidden;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.leader-main small,.leader-main em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.leader-details{min-width:104px;white-space:nowrap}
.leader-directory .leader-details{position:static;width:calc(100% - 28px);margin:0 14px 12px;justify-content:center}
.leader-group:not(.expanded){min-height:0}
.followers-wrap{display:flex;flex:1;flex-direction:column}
.followers-head{min-height:46px;padding:12px 14px}
.follower-row{position:relative;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-rows:auto auto auto!important;align-items:start!important;gap:4px 10px!important;min-height:94px;padding:13px 38px 13px 14px!important;border-bottom:1px solid var(--line)!important}
.follower-row .mini-avatar{grid-column:1;grid-row:1/4;align-self:start}
.follower-name{grid-column:2;grid-row:1;min-width:0}.follower-name b,.follower-name small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.follower-place{grid-column:2;grid-row:2;min-width:0}.wa-mini{grid-column:2;grid-row:3}
.follower-row .row-arrow{position:absolute;right:14px;top:50%;transform:translateY(-50%)}
.follower-row:hover{background:var(--green-light)}
.people-toolbar{grid-template-columns:minmax(280px,1fr) minmax(170px,220px) auto auto;align-items:end}
.people-audience-filter{display:grid;gap:5px;min-width:0}
.people-audience-filter select{min-height:42px}
.selection-toolbar{gap:8px!important;padding:10px!important}
.selection-toolbar label{gap:7px!important}
@media(max-width:900px){.people-toolbar{grid-template-columns:1fr 1fr}.leadership-card footer{grid-template-columns:1fr}.leadership-card{min-height:0}}
@media(max-width:560px){.people-toolbar{grid-template-columns:1fr}.leader-group>header{grid-template-columns:1fr}.leader-details{width:100%}.leader-toggle{grid-template-columns:auto minmax(0,1fr) auto!important}.leader-toggle .chevron{display:none}.leadership-card>header h3,.leader-main>b{white-space:normal}}
@keyframes publicHeroBackdrop{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-2.5%,1.5%,0) scale(1.045)}}
@keyframes publicHeroOrbit{to{transform:rotate(360deg)}}
@keyframes publicContactBackdrop{0%{transform:scale(.97);border-radius:48% 48% 28px 28px}100%{transform:scale(1.02);border-radius:42% 52% 34px 24px}}
@keyframes publicContactPortrait{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-8px)}}

@media(max-width:700px){
 .public-header-actions .public-login-button{display:none!important}
 .public-header .public-register-button{gap:7px!important;padding:6px 7px 6px 11px!important;font-size:9px!important}
 .public-header .public-register-button>.public-button-arrow{width:27px!important;height:27px!important;flex-basis:27px}
 .public-animated-cta{min-height:50px!important}
 .public-animated-cta>.public-button-arrow{width:32px!important;height:32px!important;flex-basis:32px}
 .public-contact-pointer-action{right:auto;left:50%;bottom:1%;width:auto!important;transform:translateX(-50%)}
 .public-contact-pointer-action:hover{transform:translateX(-50%) translateY(-4px)!important}
 .public-contact-portrait img{width:100%}
}
@media(prefers-reduced-motion:reduce){
 .public-scroll-top-trail::before,.public-scroll-top-trail::after,.public-hero:before,.public-hero:after,
 .public-contact-portrait:before,.public-contact-portrait img{animation:none!important}
 .public-animated-cta::before{transition:none!important}
}

/* Camada final de estabilidade: scroll mobile, animações e layout público */
html,body{min-height:100%;overflow-x:hidden}
body.modal-open,body.is-scroll-locked,html.modal-open,html.is-scroll-locked{overflow:hidden!important}
body:not(.modal-open):not(.is-scroll-locked){overflow-y:auto!important}
.public-landing{position:relative;min-height:100dvh;overflow-x:hidden!important;overflow-y:visible!important;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.public-landing main,.public-landing section{touch-action:pan-y}
.public-landing button,.public-landing a{touch-action:manipulation}
.site-preloader.is-done{pointer-events:none!important}
.public-hero,.public-contact,.public-biography,.public-footer{contain:layout paint style}
.public-hero:before{animation:publicHeroBackdropStable 13s ease-in-out infinite alternate!important;will-change:transform,border-radius}
.public-hero:after{animation:publicHeroOrbit 24s linear infinite!important;will-change:transform}
.public-hero-photo img{transform:translate3d(0,0,0);animation:publicPortraitFloatStable 6s ease-in-out infinite!important;will-change:transform,filter;backface-visibility:hidden}
.public-photo-socials a{animation:publicSocialFloatStable 4.8s ease-in-out infinite!important;will-change:transform,box-shadow,background-color}
.public-photo-socials a:nth-child(2){animation-delay:.18s!important}.public-photo-socials a:nth-child(3){animation-delay:.36s!important}
.public-contact-portrait{isolation:isolate;overflow:visible!important;transform:translateZ(0)}
.public-contact-portrait:before{animation:publicContactBackdropStable 8s ease-in-out infinite alternate!important;will-change:transform,border-radius}
.public-contact-portrait:after,.public-contact-orbit{animation:publicOrbitSpin 22s linear infinite!important;will-change:transform}
.public-contact-portrait img{left:50%!important;width:min(100%,540px)!important;transform:translate3d(-50%,0,0);animation:publicContactPortraitStable 6s ease-in-out infinite!important;will-change:transform,filter;backface-visibility:hidden}
.public-contact-pointer-action{left:50%!important;right:auto!important;bottom:18px!important;transform:translate3d(-50%,0,0)!important;white-space:nowrap;will-change:transform,box-shadow}
.public-contact-pointer-action:hover{transform:translate3d(-50%,-5px,0) scale(1.02)!important}
.public-scroll-top{transform:translate3d(0,22px,0) scale(.9);will-change:transform,opacity}
.public-scroll-top.is-visible{transform:translate3d(0,0,0) scale(1)}
.developer-flight.is-running .developer-runner{animation:runnerBounce .24s ease-in-out infinite alternate!important}
@keyframes publicHeroBackdropStable{0%{transform:translate3d(0,0,0) scale(1);border-radius:48% 0 0 52%}100%{transform:translate3d(-16px,8px,0) scale(1.025);border-radius:52% 0 0 48%}}
@keyframes publicPortraitFloatStable{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-10px,0)}}
@keyframes publicSocialFloatStable{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-5px,0)}}
@keyframes publicContactBackdropStable{0%{transform:translate3d(0,0,0) scale(1);filter:saturate(1)}100%{transform:translate3d(8px,-6px,0) scale(1.018);filter:saturate(1.08)}}
@keyframes publicContactPortraitStable{0%,100%{transform:translate3d(-50%,0,0)}50%{transform:translate3d(-50%,-8px,0)}}
@media(max-width:760px){
 html,body{height:auto!important;min-height:100%}
 .public-landing{min-height:100svh;overflow-y:visible!important}
 .public-header{position:sticky;top:0}
 .public-hero{min-height:auto!important;overflow:visible!important}
 .public-contact{overflow:visible!important}
 .public-contact-portrait{min-height:520px!important;width:min(100%,390px)!important;margin-inline:auto!important}
 .public-contact-portrait img{width:100%!important;height:100%!important}
 .public-contact-pointer-action{bottom:12px!important;max-width:calc(100vw - 48px)}
 .public-scroll-top{right:16px!important;bottom:18px!important}
}
@media(prefers-reduced-motion:reduce){
 .public-hero:before,.public-hero:after,.public-hero-photo img,.public-photo-socials a,
 .public-contact-portrait:before,.public-contact-portrait:after,.public-contact-orbit,
 .public-contact-portrait img,.developer-flight.is-running .developer-runner{animation:none!important}
}

/* Mesmo com movimento reduzido ativo no navegador, manter microanimações leves */
@media(prefers-reduced-motion:reduce){
 .public-hero:before{animation:publicHeroBackdropStable 22s ease-in-out infinite alternate!important}
 .public-hero-photo img{animation:publicPortraitFloatStable 14s ease-in-out infinite!important}
 .public-photo-socials a{animation:publicSocialFloatStable 12s ease-in-out infinite!important}
 .public-contact-portrait:before{animation:publicContactBackdropStable 16s ease-in-out infinite alternate!important}
 .public-contact-portrait:after,.public-contact-orbit{animation:publicOrbitSpin 48s linear infinite!important}
 .public-contact-portrait img{animation:publicContactPortraitStable 14s ease-in-out infinite!important}
}

/* Correções finais: botões de importação legíveis e estados rápidos */
.import-sheet-action{
 background:#fff!important;color:#0f5d4c!important;border:1px solid #b7d9cd!important;
 box-shadow:0 8px 18px rgba(13,76,61,.06);display:inline-flex;align-items:center;justify-content:center;gap:8px;
 min-height:42px!important;white-space:nowrap!important;font-weight:800!important;text-align:center!important;
}
.import-sheet-action::before{content:"⇧";font-weight:900;color:#0f5d4c}
.import-sheet-action:hover{background:#eef8f3!important;color:#093f34!important;border-color:#69b99f!important;transform:translateY(-1px)}
.import-group-action{
 background:#155448!important;
 color:#fff!important;
 border:1px solid #155448!important;
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 gap:8px!important;
 min-width:150px!important;
 min-height:42px!important;
 padding:10px 16px!important;
 font-weight:800!important;
 text-align:center!important;
 white-space:nowrap!important;
 opacity:1!important;
 visibility:visible!important;
 overflow:visible!important;
 text-indent:0!important;
 letter-spacing:0!important;
 font-size:13px!important;
 line-height:1.2!important;
}
.import-group-action::before{content:"⇩";font-weight:900;color:#fff}
.import-group-action:disabled{
 background:#6f9a8d!important;
 border-color:#6f9a8d!important;
 color:#fff!important;
 cursor:not-allowed!important;
 opacity:1!important;
}
.primary:disabled{opacity:.58;cursor:not-allowed;filter:saturate(.72)}
.import-group-action:disabled{opacity:1!important;filter:saturate(.82)!important}


/* Perfil: seleção de grupos do WhatsApp */
.group-picker{display:grid;gap:14px;width:100%}
.group-picker p{margin:0;color:var(--muted);line-height:1.45}
.group-picker label{display:grid;gap:7px}
.group-option-list{display:grid;gap:9px;max-height:380px;overflow:auto;padding:4px 2px}
.group-option{display:flex!important;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:13px 14px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.group-option:hover{border-color:#8bcab5;background:#f5fbf8;transform:translateY(-1px)}
.group-option input{margin-top:3px;width:auto!important;min-width:16px;height:16px}
.group-option span{display:grid;gap:3px;line-height:1.25}
.group-option[hidden]{display:none!important}
.group-picker-actions{display:flex;justify-content:flex-end;margin-top:4px}
.group-picker-actions .primary{min-width:220px}
.person-modal .modal-actions{position:sticky;bottom:0;z-index:2;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 28%);padding-top:10px}
.fixed-group-save{display:flex!important;align-items:center;gap:10px;border:1px solid #b9ddcf;background:#f0f9f5;border-radius:14px;padding:12px 14px;color:#073f35}
.fixed-group-save input{width:auto!important;min-width:16px;height:16px}
.group-enrollment-callout.enrolled{border-color:#8bcab5;background:#f1faf6}
.wa-mini.yes{color:#0f6f5f;font-weight:700}
.people-group-select select{min-width:180px;max-width:240px}
.people-audience-filter select{min-width:130px}
.group-status{display:inline-flex;flex-direction:column;gap:2px;padding:4px 10px;border-radius:999px;font-size:10px;line-height:1.2;max-width:100%;white-space:nowrap}
.group-status b{font-size:10px;font-weight:800}
.group-status small{font-size:9px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-status.in{background:#e8f7f2;color:#0f6f5f;border:1px solid #b9e6d8}
.group-status.invite{background:#fff8e6;color:#9a6b00;border:1px solid #f2df9a}
.group-status.out{background:#fdeeed;color:#b42318;border:1px solid #f3c4c0}
.group-status.declined{background:#fff1f3;color:#9f1239;border:1px solid #f5c2cf}
.group-status.pending{background:#f3f6f8;color:#52606d;border:1px solid #d7e0e7}
.leader-filter-footer{flex-wrap:wrap}
.leader-filter-footer>label{min-width:160px}
.leader-filter-footer .people-group-select select{min-width:170px;max-width:220px}
.leader-filter-footer .leader-group-status-filter select{min-width:140px}
.connection-actions{display:flex;gap:8px;align-items:center}
@media(max-width:760px){.connection-actions{grid-column:1/-1;flex-wrap:wrap}.connection-actions button{flex:1}}
.leader-main .group-status,.follower-row .group-status{flex-direction:row;align-items:center;white-space:nowrap;border-radius:999px;padding:3px 9px}
.leader-main .group-status small,.follower-row .group-status small{display:none}
.leadership-card header .group-status{margin-top:0}
.group-status-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.bulk-group-picker .bulk-group-filters{display:grid;grid-template-columns:1fr 180px;gap:12px}
.bulk-eligible-head{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.bulk-eligible-list{display:grid;gap:8px;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:14px;padding:10px;background:#fbfcfb}
.bulk-eligible-item{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff}
.bulk-eligible-item input{margin-top:3px}
.bulk-eligible-item span{display:grid;gap:2px}
.group-add-status{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.group-add-status.in{background:#e8f7f2;color:#0f6f5f;border:1px solid #b9e6d8}
.group-add-status.invite{background:#fff8e6;color:#9a6b00;border:1px solid #f2df9a}
.group-add-status.out{background:#fdeeed;color:#b42318;border:1px solid #f3c4c0}
.group-add-status.pending{background:#f3f6f8;color:#52606d;border:1px solid #d7e0e7}
.group-add-queue{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#f8fbfa}
.group-add-queue header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.group-add-queue-note{margin:0 0 10px;font-size:12px;color:var(--muted)}
.group-add-queue-list{display:grid;gap:8px;max-height:320px;overflow:auto}
.group-add-queue-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.import-source-message{margin:0 0 12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8faf9}
.import-source-message small{display:block;margin-bottom:8px;font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--muted)}
.import-source-message pre{margin:0;white-space:pre-wrap;word-break:break-word;font:500 12px/1.5 Manrope;color:var(--ink)}
.import-source-message.muted p{margin:0;font-size:12px;color:var(--muted)}
.import-message-preview{display:block;margin-top:6px;font-size:11px;color:var(--muted);line-height:1.4}
.wa-groups-enroll-panel{margin:14px 0;padding:16px;border:1px solid #cfe4dc;border-radius:14px;background:#f3faf7;display:grid;gap:14px}
.wa-groups-enroll-copy b{display:block;font:800 15px Manrope;margin-bottom:4px}
.wa-groups-enroll-copy p{margin:0 0 4px;font-size:12px;color:var(--ink)}
.wa-groups-enroll-copy small{font-size:11px;color:var(--muted)}
.wa-groups-enroll-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wa-groups-enroll-metrics article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.wa-groups-enroll-metrics strong{display:block;font:800 24px Manrope;color:var(--green)}
.wa-groups-enroll-metrics span{font-size:11px;color:var(--muted)}
.wa-groups-enroll-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.wa-groups-enroll-controls label{display:grid;gap:6px;min-width:160px;font-size:11px;font-weight:700;color:var(--muted)}
.wa-groups-enroll-controls input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff}
.wa-groups-row.selected{border-color:#9fd4c3;background:#f7fcfa}
.wa-groups-bulk-actions .danger{color:#b42318;border-color:#f3c4c0}
.comms-group-queue{margin-bottom:14px}
.wa-groups-invite-panel{margin:0 0 14px;padding:14px 16px;border:1px dashed #bcd9cf;border-radius:14px;background:#fbfefd}
.address-field-wrap{position:relative}
.address-suggest-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;display:grid;gap:4px;max-height:240px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 14px 34px rgba(15,58,49,.16)}
.address-suggest-menu.hidden{display:none}
.address-suggest-menu button{display:grid;gap:2px;width:100%;border:0;border-radius:8px;padding:9px 10px;background:transparent;text-align:left;cursor:pointer}
.address-suggest-menu button:hover,.address-suggest-menu button:focus-visible{background:#eef7f3}
.address-suggest-menu b{font-size:12px;color:var(--ink)}
.address-suggest-menu small{font-size:10px;color:var(--muted)}
.address-suggest-loading,.address-suggest-empty{padding:8px 10px;font-size:11px;color:var(--muted)}
input[name=cep].is-loading{background-image:linear-gradient(90deg,#f4faf8 25%,#e6f3ef 50%,#f4faf8 75%);background-size:200% 100%;animation:cep-loading 1s linear infinite}
@keyframes cep-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}
.wa-invite-btn,.wa-quick-add-btn{font-size:11px;padding:6px 10px;white-space:nowrap}
.wa-quick-add-btn{color:#1f6b57;border-color:#9fd4c3}
.comms-invite-queue{margin-bottom:14px}
.wa-groups-row{display:grid;grid-template-columns:auto auto 1fr auto auto auto auto;gap:12px;align-items:center}
.wa-groups-check,.wa-groups-check-spacer{width:18px;display:inline-flex;justify-content:center}
.wa-groups-check input{width:16px;height:16px}
@media(max-width:900px){.wa-groups-row{grid-template-columns:auto 1fr auto;grid-template-areas:"check avatar actions" "check info actions"}.wa-groups-row .mini-avatar{grid-area:avatar}.wa-groups-row>div{grid-area:info}.wa-groups-row>.ghost{grid-area:actions}}
.bulk-group-picker.queue-running .bulk-eligible-list,.bulk-group-picker.queue-running .bulk-group-filters,.bulk-group-picker.queue-running .group-option-list{opacity:.45;pointer-events:none}
.selection-toolbar [data-bulk-add-group]{white-space:nowrap}
@media(max-width:760px){.bulk-group-picker .bulk-group-filters{grid-template-columns:1fr}}


/* Toast interaction hardening */
#toast.show,
#toast.actionable.show {
  pointer-events: auto;
}
#toast .toast-close,
#toast.actionable .toast-close {
  position: relative;
  z-index: 3;
}
#toast .toast-progress,
#toast.actionable .toast-progress {
  will-change: transform;
}

/* === Public landing refresh: carousel, video and button hover fix === */
.public-welcome-message{display:none!important}
.public-landing{
  background:
    radial-gradient(circle at 18% 16%, rgba(50, 167, 128, .18), transparent 18%),
    radial-gradient(circle at 82% 16%, rgba(255,255,255,.76), transparent 16%),
    radial-gradient(circle at 84% 74%, rgba(19, 110, 88, .16), transparent 22%),
    linear-gradient(180deg, #fbfefa 0%, #eff7f2 100%);
  background-attachment: fixed;
}
.public-landing::before,
.public-landing::after{pointer-events:none}
.public-landing::before{
  background:radial-gradient(circle, rgba(53, 172, 133, .18) 0 22%, transparent 55%);
  animation:publicLandingBlob 18s ease-in-out infinite alternate;
}
.public-landing::after{
  background:radial-gradient(circle, rgba(21, 94, 78, .12) 0 18%, transparent 58%);
  animation:publicLandingBlob 26s ease-in-out infinite alternate-reverse;
}
.public-hero{
  position:relative;
  gap:clamp(28px,5vw,76px);
  background:linear-gradient(180deg, rgba(255,255,255,.26), rgba(255,255,255,0));
  border-bottom:1px solid rgba(25,112,94,.08);
  overflow:visible;
}
.public-hero::before{
  content:"";
  position:absolute;
  inset:10% auto auto -10%;
  width:340px;
  height:340px;
  border-radius:40% 60% 57% 43% / 48% 40% 60% 52%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.78), rgba(124,220,189,.55) 38%, rgba(38,150,120,.2) 70%, transparent 74%);
  filter:blur(6px);
  opacity:.85;
  animation:publicHeroAura 12s ease-in-out infinite alternate;
}
.public-hero::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-70px;
  width:300px;
  height:300px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(31,124,101,.18), transparent 68%);
  animation:publicHeroPulse 10s ease-in-out infinite alternate;
}
.public-hero-copy,
.public-hero-photo{position:relative;z-index:2}
.public-hero-copy{max-width:660px}
.public-brand-kicker,
.public-section-kicker{color:#168064;letter-spacing:.24em}
.public-hero h1{letter-spacing:-.06em}
.public-hero h2{color:#2d7765}
.public-hero p{color:#5f7c76}
.public-welcome-message{display:none!important}
.public-hero-actions .public-secondary-action.public-animated-cta,
.public-header-actions .public-login-button.public-animated-cta,
.public-secondary-action.public-animated-cta{
  position:relative;
  overflow:hidden;
  background:#fff!important;
  color:#155f50!important;
  border-color:#b7dacc!important;
  box-shadow:0 10px 24px rgba(12,72,60,.08);
}
.public-hero-actions .public-secondary-action.public-animated-cta::before,
.public-header-actions .public-login-button.public-animated-cta::before,
.public-secondary-action.public-animated-cta::before{
  background:linear-gradient(105deg,#0d5e4b,#2db48b)!important;
}
.public-hero-actions .public-secondary-action.public-animated-cta:hover,
.public-header-actions .public-login-button.public-animated-cta:hover,
.public-secondary-action.public-animated-cta:hover{
  background:#156853!important;
  color:#fff!important;
  border-color:#156853!important;
  box-shadow:0 14px 30px rgba(18,111,87,.24);
}
.public-hero-actions .public-secondary-action.public-animated-cta:hover .public-button-label,
.public-header-actions .public-login-button.public-animated-cta:hover .public-button-label,
.public-secondary-action.public-animated-cta:hover .public-button-label{color:#fff!important}
.public-hero-actions .public-secondary-action.public-animated-cta:hover .public-button-arrow,
.public-header-actions .public-login-button.public-animated-cta:hover .public-button-arrow,
.public-secondary-action.public-animated-cta:hover .public-button-arrow{
  background:#fff!important;
  color:#156853!important;
}
.public-hero-photo.public-carousel-stage{
  width:min(540px,100%);
  height:min(760px,84vh);
  min-height:560px;
  margin:0;
  overflow:visible;
  display:grid;
  align-items:end;
  justify-items:center;
}
.public-carousel-viewport{
  position:relative;
  width:100%;
  height:100%;
  overflow:visible;
}
.public-carousel-slide{
  position:absolute;
  inset:0;
  display:grid;
  place-items:end center;
  padding:22px 20px 0;
  border-radius:46% 46% 34px 34px;
  opacity:0;
  transform:translate3d(18px,22px,0) scale(.94);
  transition:opacity .55s ease, transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease;
  box-shadow:0 26px 70px rgba(10,72,59,.16);
  overflow:hidden;
}
.public-carousel-slide::before{
  content:"";
  position:absolute;
  inset:auto 8% 10% 8%;
  height:44%;
  border-radius:50%;
  filter:blur(18px);
  opacity:.56;
}
.public-carousel-slide:nth-child(1){background:linear-gradient(180deg,#f5fbf7 0%,#e1f3eb 58%,#c2e6d9 100%)}
.public-carousel-slide:nth-child(1)::before{background:radial-gradient(circle, rgba(28,131,104,.35), transparent 68%)}
.public-carousel-slide:nth-child(2){background:linear-gradient(180deg,#f8fbff 0%,#e5eff7 56%,#cadcea 100%)}
.public-carousel-slide:nth-child(2)::before{background:radial-gradient(circle, rgba(39,95,128,.28), transparent 68%)}
.public-carousel-slide:nth-child(3){background:linear-gradient(180deg,#fbfaf7 0%,#f1ece3 56%,#e3d8c6 100%)}
.public-carousel-slide:nth-child(3)::before{background:radial-gradient(circle, rgba(163,108,43,.24), transparent 68%)}
.public-carousel-slide.is-active{opacity:1;transform:translate3d(0,0,0) scale(1);z-index:1;filter:saturate(1.02)}
.public-carousel-slide img{
  position:relative;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 24px 20px rgba(10,40,33,.16));
  animation:publicSlideFloat 7s ease-in-out infinite;
}
.public-carousel-dots{
  position:absolute;
  left:50%;
  bottom:18px;
  z-index:3;
  display:flex;
  gap:8px;
  transform:translateX(-50%);
}
.public-carousel-dot{
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(17,104,86,.18);
  box-shadow:inset 0 0 0 1px rgba(19,99,79,.14);
  transition:transform .2s ease, width .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.public-carousel-dot.is-active{
  width:28px;
  background:#166853;
  box-shadow:0 6px 15px rgba(22,104,83,.2);
}
.public-story{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(28px,5vw,70px);
  align-items:center;
  padding:24px max(24px,calc((100vw - 1220px)/2)) 104px;
  background:linear-gradient(180deg, rgba(255,255,255,.88) 0%, rgba(244,250,247,.98) 100%);
}
.public-story-copy h2{
  margin:10px 0 12px;
  color:#123f35;
  font:800 clamp(30px,3.4vw,52px)/1.05 Manrope;
  letter-spacing:-.05em;
}
.public-story-copy p{max-width:690px;margin:0;color:#54706a;font-size:16px;line-height:1.72}
.public-story-points{display:grid;gap:16px;margin-top:28px}
.public-story-points article{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
  padding:16px 18px;
  border:1px solid rgba(20,92,78,.1);
  border-radius:22px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 26px rgba(12,66,55,.05);
}
.public-story-points b{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#e1f3ec;
  color:#156c58;
  font:800 12px Manrope;
}
.public-story-points h3{margin:0 0 5px;color:#113f35;font:800 18px Manrope;letter-spacing:-.03em}
.public-story-points p{margin:0;color:#57706a;font-size:13px;line-height:1.65}
.public-story-media{
  position:relative;
  padding:22px;
  border:1px solid rgba(20,92,78,.1);
  border-radius:30px;
  background:linear-gradient(180deg,#ffffff 0%,#eef8f3 100%);
  box-shadow:0 24px 54px rgba(10,66,55,.08);
  overflow:hidden;
}
.public-story-media::before{
  content:"";
  position:absolute;
  inset:auto -30px -42px auto;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(40,142,117,.15), transparent 65%);
  pointer-events:none;
}
.public-story-media-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}
.public-story-tag{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#e8f7f2;
  color:#116b58;
  font:800 11px Manrope;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.public-story-media small{color:#6c857f;font-size:12px;line-height:1.5;text-align:right}
.public-story-video-shell{
  position:relative;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:24px;
  background:linear-gradient(180deg,#0c2d25,#113d33);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 16px 36px rgba(9,56,46,.22);
}
.public-story-video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.001;
  transform:scale(1.02);
  transition:opacity .5s ease, transform .5s ease;
}
.public-story-video.is-ready{opacity:1;transform:scale(1)}
.public-story-video-shell::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.14));
  pointer-events:none;
}
.public-contact-pointer-action{
  right:auto!important;
  left:50%!important;
  bottom:18px!important;
  transform:translate3d(-50%,0,0)!important;
  white-space:nowrap;
  z-index:4;
}
.public-contact-pointer-action:hover{transform:translate3d(-50%,-5px,0) scale(1.02)!important}
.public-photo-socials a{
  animation:publicSocialLift 4.8s ease-in-out infinite;
}
.public-photo-socials a:nth-child(2){animation-delay:.18s}
.public-photo-socials a:nth-child(3){animation-delay:.36s}
.public-photo-socials a:hover{transform:translateY(-4px) scale(1.08)}
.public-landing footer{padding-bottom:8px}
.public-landing footer .desktop-developer-credit{padding:0;border:0;background:transparent!important;box-shadow:none}
@keyframes publicLandingBlob{
  0%{transform:translate3d(0,0,0) scale(1)}
  100%{transform:translate3d(12px,-10px,0) scale(1.04)}
}
@keyframes publicHeroAura{
  0%{transform:translate3d(0,0,0) rotate(0deg)}
  100%{transform:translate3d(20px,-16px,0) rotate(8deg)}
}
@keyframes publicHeroPulse{
  0%{transform:scale(.94);opacity:.52}
  100%{transform:scale(1.08);opacity:.84}
}
@keyframes publicSlideFloat{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-10px,0)}
}
@keyframes publicSocialLift{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-3px,0)}
}
@media(max-width:980px){
  .public-hero{grid-template-columns:1fr .85fr;gap:28px}
  .public-story{grid-template-columns:1fr;gap:30px}
  .public-story-media{order:2}
}
@media(max-width:700px){
  .public-hero{grid-template-columns:1fr;min-height:auto;padding:48px 20px 54px;text-align:center}
  .public-hero::before{inset:0 auto auto -18%;width:250px;height:250px;opacity:.55}
  .public-hero::after{right:-120px;bottom:-120px;width:240px;height:240px}
  .public-hero-copy{display:flex;align-items:center;flex-direction:column}
  .public-hero h1{font-size:clamp(40px,11vw,54px)}
  .public-hero h2{font-size:clamp(18px,5.2vw,24px)}
  .public-hero p{font-size:14px}
  .public-hero-actions{flex-direction:column;width:100%}
  .public-hero-actions button{justify-content:center;width:100%}
  .public-trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px}
  .public-hero-photo.public-carousel-stage{order:-1;width:min(340px,100%);height:450px;min-height:450px}
  .public-carousel-slide{padding:18px 16px 10px;border-radius:46% 46% 28px 28px}
  .public-story{padding:14px 20px 78px}
  .public-story-copy h2{font-size:clamp(28px,8vw,42px)}
  .public-story-copy p{font-size:14px}
  .public-story-media{padding:16px;border-radius:24px}
  .public-story-media-head{flex-direction:column}
  .public-story-media small{text-align:left}
  .public-story-points article{padding:14px}
  .public-contact-pointer-action{left:50%!important;bottom:10px!important;transform:translate3d(-50%,0,0)!important;max-width:calc(100vw - 44px)}
  .public-contact-pointer-action:hover{transform:translate3d(-50%,-4px,0) scale(1.02)!important}
}
@media(max-width:380px){
  .public-hero-photo.public-carousel-stage{width:min(300px,100%);height:392px;min-height:392px}
  .public-hero h1{font-size:clamp(34px,11vw,46px)}
  .public-story{padding-inline:16px}
}
@media(prefers-reduced-motion:reduce){
  .public-landing,.public-hero::before,.public-hero::after,.public-hero-photo img,.public-photo-socials a,
  .public-story-video,.public-carousel-slide,.public-carousel-dot,.public-story-media::before{animation:none!important;transition:none!important}
  .public-story-video{opacity:1;transform:none}
}

/* === Public landing: poster/campaign style refresh === */
.public-landing{
  background:#f8fbf8;
  color:#133f35;
}
.public-landing .public-header{
  background:rgba(248,252,249,.94);
  border-bottom-color:rgba(255,255,255,.55);
}
.public-hero{
  min-height:calc(100vh - 78px);
  padding:72px max(24px,calc((100vw - 1220px)/2)) 54px;
  background:
    radial-gradient(circle at 82% 14%, rgba(53, 165, 86, .26) 0 8%, transparent 8.2%),
    radial-gradient(circle at 92% 18%, rgba(39, 131, 63, .18) 0 10%, transparent 10.2%),
    radial-gradient(circle at 84% 36%, rgba(53, 165, 86, .22) 0 8%, transparent 8.2%),
    radial-gradient(circle at 95% 58%, rgba(39, 131, 63, .18) 0 11%, transparent 11.2%),
    radial-gradient(circle at 84% 80%, rgba(53, 165, 86, .22) 0 8%, transparent 8.2%),
    linear-gradient(90deg,#0c6f33 0%, #0f7a39 48%, #0d642f 100%);
  overflow:hidden;
}
.public-hero::before{
  inset:auto auto -130px -100px;
  width:420px;
  height:420px;
  background:radial-gradient(circle, rgba(255,255,255,.14), transparent 68%);
  opacity:.8;
  filter:blur(4px);
}
.public-hero::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:min(34vw,390px);
  height:100%;
  background:
    radial-gradient(circle at 20% 12%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 20% 36%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 20% 60%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 20% 84%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 58% 12%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 58% 36%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 58% 60%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    radial-gradient(circle at 58% 84%, rgba(255,255,255,.08) 0 14%, transparent 14.2%),
    linear-gradient(180deg, transparent 0 14%, rgba(255,255,255,.05) 14% 16%, transparent 16% 30%, rgba(255,255,255,.05) 30% 32%, transparent 32% 100%);
  opacity:.75;
  pointer-events:none;
}
.public-hero-copy{max-width:620px;align-self:center}
.public-brand-kicker{color:#d7ff56;font-size:12px}
.public-hero h1{
  margin-top:12px;
  color:#fff;
  font:800 clamp(34px,3.5vw,52px)/1.02 Manrope;
  letter-spacing:-.055em;
  max-width:500px;
}
.public-hero h2{
  margin-top:6px;
  color:#ffd51f;
  font:900 clamp(50px,6.5vw,86px)/.92 Manrope;
  letter-spacing:-.07em;
  text-transform:uppercase;
  max-width:620px;
}
.public-hero p{
  max-width:390px;
  margin-top:18px;
  color:rgba(255,255,255,.9);
  font-size:15px;
  line-height:1.68;
}
.public-conversation-call{
  margin-top:28px!important;
  color:#fff;
  font-size:18px!important;
  font-weight:800;
}
.public-hero-actions{margin-top:26px;gap:12px;flex-wrap:wrap}
.public-hero-actions .public-primary-action,
.public-hero-actions .public-secondary-action{
  min-height:52px;
  padding-inline:18px;
  border-width:1px;
}
.public-hero-actions .public-primary-action{
  background:#fff;
  color:#15684f;
  border-color:#fff;
  box-shadow:0 16px 30px rgba(0,0,0,.12);
}
.public-hero-actions .public-primary-action:hover{background:#ffd51f!important;color:#0d5d49!important;border-color:#ffd51f!important}
.public-hero-actions .public-secondary-action{
  background:rgba(255,255,255,.88)!important;
  color:#15684f!important;
  border-color:rgba(255,255,255,.92)!important;
}
.public-hero-actions .public-secondary-action:hover{background:#fff!important;color:#0d5d49!important;border-color:#fff!important}
.public-hero-actions .public-button-arrow{
  background:#fff!important;
  color:#15684f!important;
}
.public-hero-photo.public-carousel-stage{
  width:min(560px,100%);
  height:min(760px,84vh);
  min-height:560px;
  justify-self:end;
  align-self:end;
}
.public-carousel-viewport{overflow:visible}
.public-carousel-slide{
  inset:auto 0 0;
  height:100%;
  padding:0;
  border-radius:34px 34px 16px 16px;
  box-shadow:none;
  background:transparent;
}
.public-carousel-slide::before{display:none}
.public-carousel-slide img{
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 30px 28px rgba(0,0,0,.18));
  animation:publicSlideFloat 6.8s ease-in-out infinite;
}
.public-hero-photo .public-photo-halo{
  inset:0 10% 0 0;
  border-radius:48% 52% 26px 26px;
  background:
    radial-gradient(circle at 63% 20%, rgba(255,255,255,.9) 0 4%, transparent 4.2%),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.18), transparent 44%),
    linear-gradient(180deg,#eff8ff 0%, #ddeaf6 100%);
  box-shadow:0 30px 60px rgba(14,68,55,.18);
}
.public-photo-socials{
  top:18%;
  right:18%;
  gap:10px;
}
.public-photo-socials a{
  width:42px;
  height:42px;
  border-color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.08);
  box-shadow:0 10px 20px rgba(0,0,0,.14);
  backdrop-filter:blur(12px);
}
.public-photo-socials a:nth-child(1){color:#fff}
.public-photo-socials a:nth-child(2){color:#fff}
.public-photo-socials a:nth-child(3){color:#fff}
.public-photo-socials a:hover{background:rgba(255,255,255,.14)}
.public-photo-socials svg{stroke-width:1.8}
.public-photo-socials .social-play{fill:#fff;stroke:none}
.public-hero figcaption{
  right:12px;
  bottom:22px;
  padding:12px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 16px 34px rgba(8,61,50,.15);
}
.public-hero figcaption b{font-size:14px}
.public-hero figcaption span{font-size:10px}
.public-story{
  padding-top:38px;
  padding-bottom:104px;
}
.public-story-copy h2{color:#123f35}
.public-story-media{background:linear-gradient(180deg,#ffffff 0%,#f3faf7 100%)}
.public-story-tag{background:#e0f7ed;color:#106e59}
.public-story-media small{color:#6b847d}
.public-story-video-shell{background:#0d3b31}
.public-story-video-shell::after{background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.16))}
.public-story-points article{border-radius:20px;background:#fff}
.public-story-points b{background:#e2f5ee;color:#0f6d58}
.public-story-points h3{color:#123f35}
.public-story-points p{color:#5e706d}
.public-contact-pointer-action{bottom:22px!important}
.public-landing footer{padding-top:0}
.public-landing footer .desktop-developer-credit{color:#1e6f5a}
@media(max-width:980px){
  .public-hero{grid-template-columns:1fr .92fr;gap:24px}
  .public-hero-photo.public-carousel-stage{height:min(680px,74vh)}
}
@media(max-width:700px){
  .public-hero{padding:50px 20px 28px;background:linear-gradient(180deg,#0e7a39 0%, #0b6d33 100%)}
  .public-hero::after{width:100%;height:36%;top:auto;bottom:0;opacity:.6}
  .public-hero h1{font-size:clamp(30px,8vw,40px);max-width:none}
  .public-hero h2{font-size:clamp(42px,12vw,58px);max-width:none}
  .public-hero p{max-width:none;font-size:14px}
  .public-hero-actions{width:100%}
  .public-hero-actions button{width:100%}
  .public-hero-photo.public-carousel-stage{width:min(340px,100%);height:430px;min-height:430px;justify-self:center}
  .public-photo-socials{top:16%;right:12px;flex-direction:column}
  .public-story{padding-top:18px;padding-bottom:72px}
}

/* === Public portal 2026.07.29 — Sulielma campaign hero final === */
.public-hero.public-hero-campaign{
  width:100%!important;
  min-height:calc(100vh - 76px)!important;
  margin:0!important;
  padding:clamp(58px,7vw,96px) max(24px,calc((100vw - 1260px)/2)) clamp(46px,6vw,78px)!important;
  display:grid!important;
  grid-template-columns:minmax(390px,.96fr) minmax(420px,.82fr)!important;
  gap:clamp(42px,6vw,96px)!important;
  align-items:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 16% 18%, rgba(255,255,255,.16) 0 0, transparent 18%),
    radial-gradient(circle at 83% 22%, rgba(255,214,34,.18) 0 0, transparent 25%),
    linear-gradient(122deg,#07572d 0%,#087339 48%,#086534 100%)!important;
}
.public-hero.public-hero-campaign::before{
  content:""!important;
  position:absolute!important;
  inset:0 0 0 auto!important;
  width:min(48vw,620px)!important;
  height:100%!important;
  border-radius:0!important;
  background:
    linear-gradient(90deg,transparent 0 8%,rgba(255,255,255,.13) 8% 9%,transparent 9% 100%),
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.14) 0 23%,transparent 24%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 92px,rgba(255,255,255,.16) 92px 96px,transparent 96px 184px)!important;
  clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)!important;
  opacity:.62!important;
  transform:none!important;
  animation:publicPatternDrift 16s ease-in-out infinite alternate!important;
}
.public-hero.public-hero-campaign::after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:10% 4% auto auto!important;
  width:min(44vw,590px)!important;
  height:min(44vw,590px)!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.2)!important;
  box-shadow:0 0 0 96px rgba(255,255,255,.035),0 0 0 178px rgba(255,255,255,.025)!important;
  opacity:.9!important;
  animation:publicHeroOrbit 28s linear infinite!important;
}
@keyframes publicPatternDrift{
  from{transform:translate3d(0,0,0) scale(1)}
  to{transform:translate3d(18px,-14px,0) scale(1.04)}
}
.public-hero-campaign .public-hero-copy--poster{
  max-width:620px!important;
  padding:0!important;
  color:#fff!important;
  text-align:left!important;
}
.public-hero-campaign h1{
  margin:0 0 6px!important;
  color:#fff!important;
  font:800 clamp(40px,4.4vw,64px)/.98 Manrope,Arial,sans-serif!important;
  letter-spacing:-.065em!important;
  text-shadow:0 14px 36px rgba(0,0,0,.16)!important;
}
.public-hero-campaign h2{
  max-width:640px!important;
  margin:0!important;
  color:#ffd51f!important;
  font:900 clamp(44px,5.7vw,82px)/.92 Manrope,Arial,sans-serif!important;
  letter-spacing:-.075em!important;
  text-transform:uppercase!important;
}
.public-hero-campaign p:not(.public-conversation-call){
  max-width:485px!important;
  margin:20px 0 0!important;
  color:rgba(255,255,255,.91)!important;
  font-size:clamp(15px,1.18vw,18px)!important;
  line-height:1.65!important;
  text-shadow:0 8px 28px rgba(0,0,0,.18)!important;
}
.public-hero-campaign .public-conversation-call{
  margin:22px 0 0!important;
  color:#fff!important;
  font:800 20px/1.2 Manrope,Arial,sans-serif!important;
}
.public-hero-actions--poster{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:22px!important;
}
.public-hero-actions--poster .public-animated-cta{
  position:relative!important;
  isolation:isolate!important;
  min-height:56px!important;
  padding:0 12px 0 26px!important;
  border-radius:999px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.64)!important;
  background:#fff!important;
  color:#0d6444!important;
  box-shadow:0 20px 38px rgba(0,0,0,.18)!important;
  transform:translateZ(0)!important;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,color .25s ease!important;
}
.public-hero-actions--poster .public-animated-cta::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  z-index:-1!important;
  width:0!important;
  background:#ffd21f!important;
  transition:width .34s cubic-bezier(.22,1,.36,1)!important;
}
.public-hero-actions--poster .public-animated-cta:hover,
.public-hero-actions--poster .public-animated-cta:focus-visible{
  color:#053c27!important;
  border-color:#ffd21f!important;
  transform:translateY(-4px)!important;
  box-shadow:0 28px 48px rgba(0,0,0,.22)!important;
}
.public-hero-actions--poster .public-animated-cta:hover::before,
.public-hero-actions--poster .public-animated-cta:focus-visible::before{width:100%!important}
.public-hero-actions--poster .public-button-arrow{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  margin-left:14px!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#0b5d3e!important;
  box-shadow:inset 0 0 0 1px rgba(11,93,62,.12)!important;
  transition:transform .25s ease,background .25s ease!important;
}
.public-hero-actions--poster .public-animated-cta:hover .public-button-arrow{transform:translateX(4px);background:#fffef2!important}
.public-hero-campaign .public-hero-photo.public-carousel-stage{
  width:min(440px,100%)!important;
  height:min(680px,76vh)!important;
  min-height:560px!important;
  justify-self:center!important;
  overflow:visible!important;
  filter:drop-shadow(0 34px 46px rgba(0,0,0,.22))!important;
}
.public-hero-campaign .public-photo-halo{
  position:absolute!important;
  inset:0!important;
  border-radius:44px!important;
  background:linear-gradient(180deg,#f8fff9 0%,#e3f6ec 58%,#c5ead9 100%)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.55),0 28px 64px rgba(0,0,0,.16)!important;
}
.public-hero-campaign .public-carousel-viewport{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  border-radius:44px!important;
}
.public-hero-campaign .public-carousel-slide{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  padding:0!important;
  border:0!important;
  border-radius:44px!important;
  background:transparent!important;
  opacity:0!important;
  transform:translateX(18px) scale(.985)!important;
  transition:opacity .72s ease,transform .72s ease!important;
}
.public-hero-campaign .public-carousel-slide.is-active{
  opacity:1!important;
  transform:translateX(0) scale(1)!important;
}
.public-hero-campaign .public-carousel-slide img{
  position:absolute!important;
  inset:auto 50% 0 auto!important;
  width:118%!important;
  height:96%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(50%)!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:saturate(1.02) contrast(1.02) drop-shadow(0 18px 20px rgba(0,0,0,.12))!important;
  animation:publicPortraitFloatStable 8s ease-in-out infinite!important;
}
.public-hero-campaign .public-photo-socials{
  top:clamp(104px,20%,146px)!important;
  right:clamp(24px,7%,42px)!important;
  gap:12px!important;
  z-index:5!important;
}
.public-hero-campaign .public-photo-socials a{
  width:44px!important;
  height:44px!important;
  border:1px solid rgba(255,255,255,.58)!important;
  background:rgba(255,255,255,.82)!important;
  color:#0f7a4d!important;
  box-shadow:0 16px 30px rgba(9,69,48,.18)!important;
}
.public-hero-campaign .public-photo-socials a:hover{
  color:#fff!important;
  background:#0f8d5b!important;
  transform:translateY(-6px) rotate(-3deg) scale(1.08)!important;
}
.public-hero-campaign .public-photo-socials a:nth-child(2):hover{background:#111!important}
.public-hero-campaign .public-photo-socials a:nth-child(3):hover{background:#ff0033!important}
.public-hero-campaign .public-carousel-dots{
  position:absolute!important;
  left:50%!important;
  bottom:20px!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  display:flex!important;
  gap:8px!important;
  padding:8px 10px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.42)!important;
  backdrop-filter:blur(12px)!important;
}
.public-hero-campaign .public-carousel-dot,
.public-hero-campaign .public-carousel-dots button{
  width:16px!important;
  height:16px!important;
  padding:0!important;
  border:2px solid #103d31!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:0 6px 14px rgba(0,0,0,.12)!important;
  transition:width .25s ease,background .25s ease,border-color .25s ease!important;
}
.public-hero-campaign .public-carousel-dot.is-active,
.public-hero-campaign .public-carousel-dots button.is-active{
  width:34px!important;
  border-color:#ffd21f!important;
  background:#ffd21f!important;
}
.public-hero-campaign figcaption{
  left:22px!important;
  right:22px!important;
  bottom:74px!important;
  z-index:6!important;
  padding:12px 16px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:16px!important;
  background:rgba(8,79,52,.72)!important;
  color:#fff!important;
}
.public-hero-campaign figcaption b{color:#fff!important}
.public-hero-campaign figcaption span{color:rgba(255,255,255,.82)!important}
.public-story-campaign{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(360px,.82fr)!important;
  gap:clamp(32px,5vw,72px)!important;
  align-items:center!important;
  padding:clamp(72px,8vw,112px) max(24px,calc((100vw - 1220px)/2))!important;
  background:#fff!important;
}
.public-story-campaign .public-story-media{
  min-height:360px!important;
  opacity:1!important;
  transform:none!important;
}
.public-story-campaign .public-story-video-shell{
  min-height:330px!important;
  border-radius:24px!important;
}
.public-story-campaign .public-story-video{
  width:100%!important;
  height:100%!important;
  min-height:330px!important;
  object-fit:cover!important;
  opacity:1!important;
  transform:none!important;
}
@media(max-width:980px){
  .public-hero.public-hero-campaign{
    grid-template-columns:1fr!important;
    text-align:center!important;
    padding-top:48px!important;
  }
  .public-hero-campaign .public-hero-copy--poster{
    justify-self:center!important;
    text-align:center!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }
  .public-hero-campaign .public-hero-photo.public-carousel-stage{order:-1;min-height:500px!important;height:540px!important}
  .public-story-campaign{grid-template-columns:1fr!important}
}
@media(max-width:700px){
  .public-hero.public-hero-campaign{
    min-height:auto!important;
    padding:34px 18px 48px!important;
    background:linear-gradient(180deg,#0b7036 0%,#087238 100%)!important;
  }
  .public-hero.public-hero-campaign::before{width:100%!important;clip-path:none!important;opacity:.24!important}
  .public-hero.public-hero-campaign::after{display:none!important}
  .public-hero-campaign h1{font-size:clamp(32px,11vw,44px)!important}
  .public-hero-campaign h2{font-size:clamp(42px,15vw,62px)!important}
  .public-hero-campaign p:not(.public-conversation-call){font-size:14px!important}
  .public-hero-actions--poster{width:100%!important;flex-direction:column!important}
  .public-hero-actions--poster .public-animated-cta{width:100%!important;justify-content:center!important}
  .public-hero-campaign .public-hero-photo.public-carousel-stage{width:min(340px,100%)!important;height:430px!important;min-height:430px!important}
  .public-hero-campaign .public-photo-socials{top:20px!important;right:20px!important;flex-direction:column!important}
  .public-story-campaign{padding:58px 18px!important}
  .public-story-campaign .public-story-media,.public-story-campaign .public-story-video-shell,.public-story-campaign .public-story-video{min-height:240px!important}
}


/* === Public landing: bolder poster update to match the new campaign look === */
.public-landing .public-header{
  backdrop-filter:saturate(1.02) blur(10px);
}
.public-hero{
  padding-top:78px;
  background:
    radial-gradient(circle at 15% 16%, rgba(255,255,255,.08) 0 8%, transparent 8.4%),
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.05) 0 14%, transparent 14.2%),
    radial-gradient(circle at 88% 14%, rgba(255,214,31,.16) 0 10%, transparent 10.3%),
    radial-gradient(circle at 88% 44%, rgba(255,255,255,.08) 0 8%, transparent 8.2%),
    radial-gradient(circle at 82% 72%, rgba(255,255,255,.08) 0 12%, transparent 12.2%),
    linear-gradient(90deg,#0b5f2d 0%, #0d7035 46%, #0a5d2a 100%);
}
.public-hero::before{
  inset:auto auto -180px -90px;
  width:520px;
  height:520px;
  background:radial-gradient(circle, rgba(255,255,255,.14), transparent 66%);
  opacity:.58;
}
.public-hero::after{
  width:min(32vw,380px);
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.08) 0 13%, transparent 13.2%),
    radial-gradient(circle at 18% 62%, rgba(255,255,255,.08) 0 13%, transparent 13.2%),
    radial-gradient(circle at 58% 18%, rgba(255,255,255,.08) 0 13%, transparent 13.2%),
    radial-gradient(circle at 58% 62%, rgba(255,255,255,.08) 0 13%, transparent 13.2%),
    linear-gradient(180deg, transparent 0 14%, rgba(255,255,255,.05) 14% 16%, transparent 16% 100%);
  opacity:.45;
}
.public-hero-copy{padding-top:24px}
.public-brand-kicker{font-size:12px;letter-spacing:.24em;color:#dcff5e}
.public-hero h1{font-size:clamp(48px,4.2vw,68px);max-width:560px}
.public-hero h2{
  color:#ffd520;
  font-size:clamp(58px,7vw,98px);
  line-height:.9;
  letter-spacing:-.08em;
  text-transform:uppercase;
  max-width:620px;
}
.public-hero p{max-width:430px;font-size:16px}
.public-conversation-call{font-size:20px!important}
.public-hero-photo.public-carousel-stage{
  width:min(590px,100%);
  height:min(790px,86vh);
  min-height:590px;
}
.public-carousel-slide img{animation-duration:7.6s}
.public-photo-socials{top:18%;right:19%}
.public-photo-socials a{width:44px;height:44px;border-width:1.4px}
.public-hero figcaption{right:18px;bottom:22px;background:rgba(255,255,255,.94)}
.public-contact-pointer-action{bottom:20px!important}
.public-story{
  padding-top:46px;
  background:linear-gradient(180deg,#f8fbf8 0%, #eff8f3 100%);
}
.public-story-media{min-height:100%}
.public-story-video{box-shadow:0 28px 60px rgba(11,78,52,.14)}
@media(max-width:980px){
  .public-hero{grid-template-columns:1fr .95fr;gap:20px}
}
@media(max-width:700px){
  .public-hero{padding-top:52px;background:linear-gradient(180deg,#0d7035 0%, #0b5f2d 100%)}
  .public-hero::after{opacity:.62}
  .public-hero h1{font-size:clamp(32px,8vw,44px)}
  .public-hero h2{font-size:clamp(40px,12vw,64px)}
  .public-hero-photo.public-carousel-stage{height:432px;min-height:432px}
  .public-story{padding-top:22px}
  .public-story-copy h2{font-size:clamp(28px,7.5vw,40px)}
}

/* === Public landing final minimal refresh === */
.public-hero .public-brand-kicker{display:none!important;}
.public-hero.public-hero-poster{
  width:min(1280px,calc(100vw - 56px));
  min-height:720px;
  grid-template-columns:minmax(0,1.06fr) minmax(400px,.94fr);
  gap:clamp(24px,4vw,56px);
  align-items:center;
  padding:clamp(56px,6vw,96px) clamp(20px,3vw,40px) 70px;
  background:linear-gradient(135deg,#0b5f2d 0%, #0d7035 48%, #0a5326 100%);
}
.public-hero-copy--poster{
  max-width:640px;
  padding-top:0;
  justify-self:start;
}
.public-hero-copy--poster h1,
.public-hero-campaign .public-hero-title{
  max-width:min(640px,100%);
  font-size:clamp(40px,4.4vw,68px);
}
@media (max-width:900px){
  .public-hero-copy--poster h1,
  .public-hero-campaign .public-hero-title{font-size:clamp(36px,6.2vw,54px)}
}
@media (max-width:640px){
  .public-hero-copy--poster h1,
  .public-hero-campaign .public-hero-title{font-size:clamp(32px,8.4vw,42px)}
}

/* Logotipo tipográfico: microfone = letra O (mesma baseline de Barros) */
.public-hero-campaign .public-hero-logo{
  display:block;
  margin:9px 0 0;
  color:#fff;
  letter-spacing:-.065em;
  line-height:1;
  font-weight:800;
  white-space:normal;
}
.public-hero-campaign .public-hero-title-lead{
  white-space:pre;
}
.public-hero-campaign .public-hero-title-tail{
  white-space:nowrap;
}
.public-hero-campaign .public-hero-title-s{
  display:inline-block;
  vertical-align:baseline;
  line-height:1;
  opacity:0;
  transform:translate3d(-.12em,0,0);
}
.public-hero-campaign .public-hero-logo-mic{
  position:relative;
  display:inline-block;
  width:auto;
  height:auto;
  margin:0 -.015em;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-weight:inherit;
  line-height:1;
  letter-spacing:0;
  vertical-align:baseline;
  cursor:default;
  appearance:none;
  -webkit-appearance:none;
  transform-origin:50% 70%;
  opacity:0;
  transform:translate3d(0,-1.1em,0) scale(.94);
  filter:drop-shadow(0 0 0 transparent);
  transition:transform .3s cubic-bezier(.22,.7,.2,1), filter .3s ease, opacity .3s ease;
}
.public-hero-campaign .public-hero-logo-mic:disabled{cursor:default}
.public-hero-campaign .public-hero-logo-mic.is-ready{cursor:pointer}
.public-hero-campaign .public-hero-logo-spacer{
  display:inline-block;
  opacity:0;
  pointer-events:none;
  user-select:none;
  font:inherit;
  font-weight:inherit;
  line-height:1;
}
.public-hero-campaign .public-hero-logo-svg{
  position:absolute;
  left:50%;
  top:50%;
  width:.92em;
  height:.92em;
  transform:translate(-50%,-50%);
  display:block;
  overflow:visible;
  pointer-events:none;
}
.public-hero-campaign .public-hero-logo-gleam{
  opacity:0;
  pointer-events:none;
}

/* Estado final após entrada */
.public-hero-campaign .public-hero-logo.is-complete .public-hero-logo-mic{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}
.public-hero-campaign .public-hero-logo.is-complete .public-hero-title-s{
  opacity:1;
  transform:none;
}

/* Hover premium (só pronto) */
.public-hero-campaign .public-hero-logo-mic.is-ready:hover,
.public-hero-campaign .public-hero-logo-mic.is-ready:focus-visible{
  transform:translate3d(0,0,0) scale(1.08) rotate(4deg);
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.28));
}
.public-hero-campaign .public-hero-logo-mic.is-ready:hover .public-hero-logo-gleam,
.public-hero-campaign .public-hero-logo-mic.is-ready:focus-visible .public-hero-logo-gleam{
  animation:publicHeroLogoShine .9s ease-in-out;
}
@keyframes publicHeroLogoShine{
  0%{opacity:0;transform:translateX(-140%) rotate(-18deg)}
  35%{opacity:.95}
  100%{opacity:0;transform:translateX(190%) rotate(-18deg)}
}
.public-hero-copy--poster h2{
  max-width:640px;
  font-size:clamp(58px,7vw,96px);
  line-height:.88;
  letter-spacing:-.08em;
}
.public-hero-copy--poster p{
  max-width:460px;
  font-size:16px;
  color:rgba(255,255,255,.92);
}
.public-conversation-call{
  margin-top:28px!important;
  color:#fff;
  font-size:19px!important;
  font-weight:800;
}
.public-hero-actions--poster{margin-top:26px;gap:12px;flex-wrap:wrap}
.public-hero-actions--poster .public-primary-action,
.public-hero-actions--poster .public-secondary-action{
  min-height:52px;
  padding-inline:18px;
  border-width:1px;
}
.public-hero-actions--poster .public-primary-action{
  background:#fff;
  color:#15684f;
  border-color:#fff;
  box-shadow:0 16px 30px rgba(0,0,0,.12);
}
.public-hero-actions--poster .public-primary-action:hover,
.public-hero-actions--poster .public-primary-action:focus-visible{
  background:#ffd51f!important;
  color:#0d5d49!important;
  border-color:#ffd51f!important;
}
.public-hero-actions--poster .public-secondary-action{
  background:rgba(255,255,255,.92)!important;
  color:#15684f!important;
  border-color:rgba(255,255,255,.95)!important;
}
.public-hero-actions--poster .public-secondary-action:hover,
.public-hero-actions--poster .public-secondary-action:focus-visible{
  background:#fff!important;
  color:#0d5d49!important;
  border-color:#fff!important;
}
.public-hero-actions--poster .public-button-arrow{
  background:#fff!important;
  color:#15684f!important;
}
.public-hero-photo.public-carousel-stage{
  width:min(590px,100%);
  height:min(790px,86vh);
  min-height:590px;
  justify-self:end;
  align-self:end;
}
.public-carousel-viewport{overflow:visible}
.public-carousel-slide{
  inset:auto 0 0;
  height:100%;
  padding:0;
  border-radius:34px 34px 16px 16px;
  box-shadow:none;
  background:transparent;
}
.public-carousel-slide::before{display:none}
.public-carousel-slide img{
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 30px 28px rgba(0,0,0,.18));
  animation:publicSlideFloat 7.2s ease-in-out infinite;
}
.public-hero-photo .public-photo-halo{
  inset:0 10% 0 0;
  border-radius:48% 52% 26px 26px;
  background:
    radial-gradient(circle at 63% 20%, rgba(255,255,255,.95) 0 4%, transparent 4.2%),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.18), transparent 44%),
    linear-gradient(180deg,#eff8ff 0%, #ddeaf6 100%);
  box-shadow:0 30px 60px rgba(14,68,55,.18);
}
.public-photo-socials{
  top:18%;
  right:18%;
  gap:10px;
}
.public-photo-socials a{
  width:42px;
  height:42px;
  border-color:rgba(255,255,255,.42);
  background:rgba(255,255,255,.1);
  box-shadow:0 10px 20px rgba(0,0,0,.14);
  backdrop-filter:blur(12px);
}
.public-photo-socials a:hover{
  background:rgba(255,255,255,.18);
}
.public-photo-socials svg{stroke-width:1.8}
.public-photo-socials .social-play{fill:#fff;stroke:none}
.public-hero figcaption{
  right:12px;
  bottom:22px;
  padding:12px 16px;
  border-radius:16px;
  background:rgba(255,255,255,.92);
  box-shadow:0 16px 34px rgba(8,61,50,.15);
}
.public-hero figcaption b{font-size:14px}
.public-hero figcaption span{font-size:10px}
.public-story{
  padding-top:38px;
  padding-bottom:104px;
}
.public-story .public-section-kicker{display:none!important;}
.public-story-copy h2{color:#123f35}
.public-story-media{background:linear-gradient(180deg,#ffffff 0%,#f3faf7 100%)}
.public-story-media-head small{color:#6b847d}
.public-story-tag{background:#e0f7ed;color:#106e59}
.public-story-video-shell{background:#0d3b31;overflow:hidden}
.public-story-video-shell::after{background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.16))}
.public-story-video{
  opacity:1!important;
  transform:none!important;
  filter:saturate(1.05) contrast(1.02);
}
.public-story-points article{border-radius:20px;background:#fff}
.public-story-points b{background:#e2f5ee;color:#0f6d58}
.public-story-points h3{color:#123f35}
.public-story-points p{color:#5e706d}
.public-contact-pointer-action{bottom:22px!important}
.public-landing footer{padding-top:0}
.public-landing footer .desktop-developer-credit{color:#1e6f5a}
@media(max-width:980px){
  .public-hero{grid-template-columns:1fr .92fr;gap:24px}
  .public-hero.public-hero-poster{width:min(100%,calc(100vw - 24px));min-height:auto;padding:44px 18px 28px}
  .public-hero-photo.public-carousel-stage{height:min(680px,74vh)}
}
@media(max-width:700px){
  .public-hero{padding:50px 20px 28px;background:linear-gradient(180deg,#0e7a39 0%, #0b6d33 100%)}
  .public-hero::after{width:100%;height:36%;top:auto;bottom:0;opacity:.6}
  .public-hero h1{font-size:clamp(30px,8vw,40px);max-width:none}
  .public-hero h2{font-size:clamp(42px,12vw,58px);max-width:none}
  .public-hero p{max-width:none;font-size:14px}
  .public-hero-actions{width:100%}
  .public-hero-actions button{width:100%}
  .public-hero-photo.public-carousel-stage{width:min(340px,100%);height:430px;min-height:430px;justify-self:center}
  .public-photo-socials{top:16%;right:12px;flex-direction:column}
  .public-story{padding-top:18px;padding-bottom:72px}
}

/* === Public portal 2026.07.29 — foto única e vídeo centralizado === */
.public-hero-campaign .public-hero-photo.public-single-photo{
  position:relative!important;
  display:block!important;
  justify-self:center!important;
  width:min(520px,100%)!important;
  height:min(660px,74vh)!important;
  min-height:520px!important;
  margin:0!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.public-hero-campaign .public-single-photo .public-photo-halo{
  position:absolute!important;
  inset:28px -26px -18px 32px!important;
  border-radius:34px!important;
  background:radial-gradient(circle at 26% 20%,rgba(255,255,255,.24),transparent 30%),linear-gradient(135deg,rgba(23,123,65,.8),rgba(6,75,38,.96))!important;
  box-shadow:0 30px 90px rgba(0,66,33,.28)!important;
  transform:rotate(-1.6deg)!important;
}
.public-hero-campaign .public-single-photo .public-photo-halo::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,transparent 0 62%,rgba(32,167,94,.22) 62% 100%),repeating-linear-gradient(90deg,transparent 0 84px,rgba(255,255,255,.1) 84px 86px)!important;
  opacity:.34!important;
}
.public-hero-campaign .public-single-photo img{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:34px!important;
  filter:saturate(1.03) contrast(1.02) drop-shadow(0 30px 34px rgba(0,45,26,.25))!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.18),0 24px 60px rgba(2,48,27,.22)!important;
  animation:publicPortraitFloatStable 7s ease-in-out infinite!important;
}
.public-hero-campaign .public-single-photo .public-photo-socials{
  z-index:5!important;
  top:20px!important;
  right:20px!important;
}
.public-hero-campaign .public-single-photo figcaption{
  z-index:6!important;
  right:22px!important;
  bottom:22px!important;
  left:auto!important;
  background:rgba(4,65,38,.8)!important;
  border-color:rgba(255,255,255,.28)!important;
  color:#fff!important;
}
.public-hero-campaign .public-carousel-dots,
.public-hero-campaign .public-carousel-viewport,
.public-hero-campaign [data-carousel-dots]{
  display:none!important;
}
.public-story-campaign .public-story-media{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:clamp(14px,2vw,24px)!important;
}
.public-story-campaign .public-story-media-head{
  display:none!important;
}
.public-story-campaign .public-story-video-shell{
  width:min(820px,100%)!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  height:auto!important;
  margin:auto!important;
  border-radius:28px!important;
  background:#062a20!important;
  overflow:hidden!important;
  box-shadow:0 28px 70px rgba(11,78,52,.18)!important;
}
.public-story-campaign .public-story-video{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#062a20!important;
}
@media(max-width:980px){
  .public-hero-campaign .public-hero-photo.public-single-photo{
    min-height:500px!important;
    height:min(620px,68vh)!important;
  }
  .public-story-campaign .public-story-video-shell{width:100%!important}
}
@media(max-width:700px){
  .public-hero-campaign .public-hero-photo.public-single-photo{
    order:-1!important;
    width:min(340px,100%)!important;
    height:430px!important;
    min-height:430px!important;
  }
  .public-hero-campaign .public-single-photo .public-photo-halo{
    inset:24px -12px -10px 12px!important;
    border-radius:28px!important;
  }
  .public-hero-campaign .public-single-photo img{
    border-radius:28px!important;
    object-position:center top!important;
  }
  .public-hero-campaign .public-single-photo .public-photo-socials{
    top:14px!important;
    right:14px!important;
    flex-direction:column!important;
  }
  .public-hero-campaign .public-single-photo figcaption{
    right:12px!important;
    bottom:12px!important;
  }
  .public-story-campaign .public-story-media{padding:12px!important;}
  .public-story-campaign .public-story-video-shell{border-radius:20px!important;}
}
.public-hero-campaign h2 span{display:block!important;white-space:nowrap!important}
.public-hero-campaign h2 span:nth-child(2)::first-letter{text-transform:uppercase}
@media(max-width:700px){.public-hero-campaign h2 span{white-space:normal!important}}


/* === Portal público — faixa lateral verde institucional (2026-07-29) === */
:root{
  --portal-band-dark:#0e3d29;
  --portal-band-dark-2:#0a2f1f;
  --portal-band-shape:#23935f;
  --portal-band-shape-light:#2fae72;
  --portal-band-accent:#d7ff56;
}
.public-landing{
  --public-green:#0e3d29;
  --public-green-2:#0a2f1f;
  --public-green-3:#23935f;
  --public-soft:#eef8f2;
  background:#f7fbf8!important;
}
.public-green-band{
  display:none;
}
@media (min-width:1100px){
  .public-green-band{
    position:absolute;
    z-index:0;
    top:78px;
    right:0;
    bottom:0;
    display:block;
    width:clamp(86px,8vw,136px);
    min-height:calc(100% - 78px);
    overflow:hidden;
    pointer-events:none;
    background:
      radial-gradient(circle at 28% 14%,rgba(255,255,255,.07),transparent 56%),
      linear-gradient(160deg,var(--portal-band-dark) 0%,var(--portal-band-dark-2) 100%);
    box-shadow:inset 1px 0 0 rgba(255,255,255,.05), -22px 0 60px rgba(14,61,41,.08);
  }
  .public-green-band::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.28),transparent 18%,transparent 80%,rgba(0,0,0,.34));
  }
  .public-green-band-noise{
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);
    background-size:3px 3px;
    mix-blend-mode:overlay;
    opacity:.7;
  }
  .public-green-band-grid{
    position:absolute;
    inset:0;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    grid-auto-rows:calc(clamp(86px,8vw,136px) / 2);
    height:118%;
    opacity:.92;
    animation:publicBandDrift 24s ease-in-out infinite alternate;
  }
  .public-green-band-grid span{
    position:relative;
    overflow:hidden;
    background:rgba(10,47,31,.72);
    animation:publicBandCellIn .7s ease-out both, publicBandPulse 7s ease-in-out infinite;
  }
  .public-green-band-grid span::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,var(--portal-band-shape),var(--portal-band-shape-light));
    border-radius:0 0 100% 0;
    transform-origin:center;
    opacity:.95;
  }
  .public-green-band-grid span:nth-child(4n+2)::before{border-radius:0 0 0 100%;}
  .public-green-band-grid span:nth-child(4n+3)::before{border-radius:0 100% 0 0;}
  .public-green-band-grid span:nth-child(4n+4)::before{border-radius:100% 0 0 0;}
  .public-green-band-grid span:nth-child(3n){animation-delay:.12s,1.4s;}
  .public-green-band-grid span:nth-child(5n){animation-delay:.24s,2.2s;}
  .public-green-band-grid span:nth-child(7n){animation-delay:.36s,3s;}
  .public-landing > :not(.public-green-band){position:relative;z-index:1;}
  .public-header,
  .public-footer{
    padding-right:max(24px,calc((100vw - 1220px)/2 + clamp(86px,8vw,136px)))!important;
  }
  .public-hero,
  .public-story,
  .public-biography,
  .public-feature-grid,
  .public-highlight,
  .public-transparency,
  .public-contact{
    padding-right:max(24px,calc((100vw - 1220px)/2 + clamp(86px,8vw,136px)))!important;
  }
}
.public-hero.public-hero-campaign{
  background:
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.12),transparent 20%),
    radial-gradient(circle at 82% 18%,rgba(35,147,95,.2),transparent 26%),
    linear-gradient(122deg,#0e3d29 0%,#155d3d 50%,#0a2f1f 100%)!important;
}
.public-hero.public-hero-campaign::after{
  opacity:.48!important;
}
.public-hero-campaign h2{
  color:#eaff5b!important;
  text-shadow:0 8px 28px rgba(0,0,0,.16);
}
.public-hero-campaign p:not(.public-conversation-call){
  color:rgba(245,255,250,.94)!important;
}
.public-hero-actions--poster .public-primary-action:hover,
.public-hero-actions--poster .public-primary-action:focus-visible{
  background:#eaff5b!important;
  border-color:#eaff5b!important;
  color:#0e3d29!important;
}
.public-hero-actions--poster .public-secondary-action:hover,
.public-hero-actions--poster .public-secondary-action:focus-visible{
  background:#0e3d29!important;
  border-color:#0e3d29!important;
  color:#fff!important;
}
.public-section-kicker,
.public-brand-kicker{
  color:#23935f!important;
}
.public-footer{
  background:linear-gradient(135deg,#0e3d29 0%,#0a2f1f 100%)!important;
}
@keyframes publicBandDrift{from{transform:translateY(0)}to{transform:translateY(-7%)}}
@keyframes publicBandCellIn{from{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}
@keyframes publicBandPulse{0%,100%{filter:saturate(1);opacity:.98}50%{filter:saturate(1.15);opacity:.84}}
@media (prefers-reduced-motion:reduce){
  .public-green-band-grid,
  .public-green-band-grid span{animation:none!important;}
}

/* Correção de posicionamento: faixa verde na lateral ESQUERDA do portal público. */
@media (min-width:1100px){
  .public-green-band{
    left:0!important;
    right:auto!important;
    top:78px!important;
    bottom:0!important;
    width:clamp(118px,9.5vw,170px)!important;
    min-height:calc(100% - 78px)!important;
    box-shadow:inset -1px 0 0 rgba(255,255,255,.05), 24px 0 60px rgba(14,61,41,.08)!important;
  }
  .public-green-band-grid{
    grid-template-columns:repeat(3,1fr)!important;
    grid-auto-rows:calc(clamp(118px,9.5vw,170px) / 3)!important;
  }
  .public-header,
  .public-footer{
    padding-left:max(24px,calc((100vw - 1220px)/2 + clamp(118px,9.5vw,170px)))!important;
    padding-right:max(24px,calc((100vw - 1220px)/2))!important;
  }
  .public-hero,
  .public-story,
  .public-biography,
  .public-feature-grid,
  .public-highlight,
  .public-transparency,
  .public-contact{
    padding-left:max(24px,calc((100vw - 1220px)/2 + clamp(118px,9.5vw,170px)))!important;
    padding-right:max(24px,calc((100vw - 1220px)/2))!important;
  }
  .public-hero.public-hero-campaign{
    background:
      linear-gradient(90deg,rgba(10,47,31,.1) 0,rgba(10,47,31,0) clamp(118px,9.5vw,170px)),
      radial-gradient(circle at 18% 20%,rgba(255,255,255,.12),transparent 20%),
      radial-gradient(circle at 82% 18%,rgba(35,147,95,.2),transparent 26%),
      linear-gradient(122deg,#0e3d29 0%,#155d3d 50%,#0a2f1f 100%)!important;
  }
}

/* Correção visual definitiva da faixa lateral:
   a faixa precisa aparecer na esquerda e o hero não pode cobri-la. */
@media (min-width:1100px){
  .public-green-band{
    z-index:3!important;
    width:clamp(180px,15vw,280px)!important;
    opacity:1!important;
    background:
      radial-gradient(circle at 32% 18%,rgba(255,255,255,.08),transparent 58%),
      linear-gradient(160deg,#0e3d29 0%,#0a2f1f 100%)!important;
  }
  .public-green-band-grid{
    grid-template-columns:repeat(4,1fr)!important;
    grid-auto-rows:calc(clamp(180px,15vw,280px) / 4)!important;
  }
  .public-green-band-grid span::before{
    background:linear-gradient(135deg,#23935f,#2fae72)!important;
  }
  .public-landing > :not(.public-green-band){
    position:relative!important;
    z-index:2!important;
  }
  .public-header{z-index:20!important}
  .public-hero.public-hero-campaign{
    padding-left:max(250px,calc((100vw - 1220px)/2 + clamp(180px,15vw,280px) + 28px))!important;
  }
  .public-hero-copy--poster{
    padding-left:22px!important;
    border-left:5px solid #2fae72!important;
  }
  .public-hero-copy--poster::before{
    content:"";
    position:absolute;
    left:-5px;
    top:42%;
    width:5px;
    height:34%;
    border-radius:999px;
    background:#eaff5b;
    box-shadow:0 0 22px rgba(234,255,91,.38);
  }
  .public-footer{
    padding-left:max(250px,calc((100vw - 1220px)/2 + clamp(180px,15vw,280px) + 28px))!important;
  }
}

@media (max-width:1099px){
  .public-green-band{display:none!important}
}

.public-scroll-top.is-near-footer{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translate3d(34px,24px,0) rotate(9deg) scale(.72)!important;
}

/* Ajuste final: faixa verde larga na lateral esquerda, igual ao modelo enviado. */
@media (min-width:1100px){
  .public-green-band{
    left:0!important;
    right:auto!important;
    top:78px!important;
    bottom:0!important;
    width:clamp(220px,18vw,340px)!important;
    min-height:calc(100% - 78px)!important;
    box-shadow:inset -1px 0 0 rgba(255,255,255,.05), 24px 0 60px rgba(14,61,41,.08)!important;
  }
  .public-green-band-grid{
    grid-template-columns:repeat(4,1fr)!important;
    grid-auto-rows:calc(clamp(220px,18vw,340px) / 4)!important;
  }
  .public-header,
  .public-footer{
    padding-left:max(24px,calc((100vw - 1220px)/2 + clamp(220px,18vw,340px)))!important;
    padding-right:max(24px,calc((100vw - 1220px)/2))!important;
  }
  .public-hero,
  .public-story,
  .public-biography,
  .public-feature-grid,
  .public-highlight,
  .public-transparency,
  .public-contact{
    padding-left:max(24px,calc((100vw - 1220px)/2 + clamp(220px,18vw,340px)))!important;
    padding-right:max(24px,calc((100vw - 1220px)/2))!important;
  }
  .public-hero.public-hero-campaign{
    background:
      linear-gradient(90deg,rgba(10,47,31,.14) 0,rgba(10,47,31,0) clamp(220px,18vw,340px)),
      radial-gradient(circle at 18% 20%,rgba(255,255,255,.12),transparent 20%),
      radial-gradient(circle at 82% 18%,rgba(35,147,95,.2),transparent 26%),
      linear-gradient(122deg,#0e3d29 0%,#155d3d 50%,#0a2f1f 100%)!important;
  }
}

/* === Ajuste definitivo: faixa verde somente na seção "Presença..." === */
@media (min-width:1100px){
  .public-landing > .public-green-band{
    display:none!important;
  }

  .public-header{
    display:grid!important;
    grid-template-columns:minmax(190px,auto) minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:clamp(16px,2.2vw,34px)!important;
    padding-left:max(24px,calc((100vw - 1220px)/2))!important;
    padding-right:max(24px,calc((100vw - 1220px)/2))!important;
  }
  .public-header nav{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:10px clamp(13px,1.65vw,24px)!important;
    min-width:0!important;
    text-align:center!important;
  }
  .public-header nav a{
    line-height:1.2!important;
    white-space:nowrap!important;
  }
  .public-header-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
  }

  .public-hero.public-hero-campaign{
    padding-left:max(32px,calc((100vw - 1220px)/2))!important;
    padding-right:max(32px,calc((100vw - 1220px)/2))!important;
  }
  .public-hero-copy--poster{
    padding-left:0!important;
    border-left:0!important;
  }
  .public-hero-copy--poster::before{
    display:none!important;
  }

  .public-story.public-story-campaign{
    position:relative!important;
    overflow:hidden!important;
    padding-left:max(154px,calc((100vw - 1220px)/2 + 136px))!important;
    padding-right:max(32px,calc((100vw - 1220px)/2))!important;
    background:linear-gradient(180deg,#fbfdfb 0%,#f1f8f4 100%)!important;
  }
  .public-story.public-story-campaign > .public-story-side-band{
    display:block!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    bottom:auto!important;
    width:clamp(88px,6vw,112px)!important;
    height:var(--public-story-band-height,calc(100% - 92px))!important;
    min-height:calc(100% - 92px)!important;
    z-index:1!important;
    overflow:hidden!important;
    pointer-events:none!important;
    opacity:1!important;
    box-shadow:inset -1px 0 0 rgba(255,255,255,.05),18px 0 42px rgba(14,61,41,.06)!important;
    background:
      radial-gradient(circle at 28% 17%,rgba(255,255,255,.08),transparent 58%),
      linear-gradient(160deg,#0e3d29 0%,#0a2f1f 100%)!important;
  }
  .public-story.public-story-campaign > .public-story-side-band::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:3!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,rgba(0,0,0,.22),transparent 24%,transparent 76%,rgba(0,0,0,.26))!important;
  }
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-noise{
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    opacity:.7!important;
    mix-blend-mode:overlay!important;
    background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px)!important;
    background-size:3px 3px!important;
  }
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    display:grid!important;
    width:100%!important;
    height:145%!important;
    grid-template-columns:repeat(3,1fr)!important;
    grid-auto-rows:calc(clamp(88px,6vw,112px) / 3)!important;
    animation:publicBandDrift 22s ease-in-out infinite alternate!important;
  }
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span{
    position:relative!important;
    min-height:auto!important;
    overflow:hidden!important;
    opacity:0;
    animation:publicBandCellIn .8s ease-out forwards,publicBandPulse 6s ease-in-out infinite!important;
  }
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(135deg,#23935f,#2fae72)!important;
    border-radius:0 0 100% 0!important;
  }
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(4n+2)::before{border-radius:0 0 0 100%!important}
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(4n+3)::before{border-radius:0 100% 0 0!important}
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(4n+4)::before{border-radius:100% 0 0 0!important}
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(3n){animation-delay:.12s,1.4s!important}
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(5n){animation-delay:.24s,2.2s!important}
  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span:nth-child(7n){animation-delay:.36s,3s!important}
  .public-story.public-story-campaign > .public-story-copy,
  .public-story.public-story-campaign > .public-story-media{
    position:relative!important;
    z-index:2!important;
  }

  .public-footer{
    padding-left:max(32px,calc((100vw - 1220px)/2))!important;
    padding-right:max(32px,calc((100vw - 1220px)/2))!important;
  }
}

@media (max-width:1099px){
  .public-story-side-band{
    display:none!important;
  }
}

@media (max-width:1099px) and (min-width:701px){
  .public-header{
    grid-template-columns:auto auto!important;
    justify-content:space-between!important;
  }
  .public-header nav{
    display:none!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .public-story-side-band .public-green-band-grid,
  .public-story-side-band .public-green-band-grid span{
    animation:none!important;
    opacity:1!important;
  }
}

/* === Portal público: lógica visual inspirada na landing de referência, com identidade Sulielma === */
.site-preloader.is-done{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.public-landing{
  overflow-x:hidden!important;
}

.public-landing main{
  position:relative!important;
  overflow:visible!important;
}

.public-landing .public-header{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(14px,2.2vw,34px)!important;
  width:100%!important;
  min-height:76px!important;
  padding-inline:max(20px,calc((100vw - 1260px)/2))!important;
}

.public-landing .public-header nav{
  justify-content:center!important;
  justify-self:center!important;
  width:100%!important;
  max-width:720px!important;
}

.public-landing .public-header-actions{
  justify-content:flex-end!important;
  justify-self:end!important;
}

.public-landing .public-hero.public-hero-campaign{
  min-height:calc(100svh - 76px)!important;
}

@media (min-width:1100px){
  .public-story.public-story-campaign{
    overflow:visible!important;
    padding-left:max(210px,calc((100vw - 1180px)/2 + 168px))!important;
  }

  .public-story.public-story-campaign > .public-story-side-band{
    position:absolute!important;
    top:0!important;
    right:auto!important;
    bottom:auto!important;
    left:0!important;
    display:block!important;
    width:clamp(110px,7.2vw,136px)!important;
    height:var(--public-story-band-height,100%)!important;
    min-height:100%!important;
    max-width:136px!important;
    border-radius:0!important;
    transform:none!important;
    background:
      linear-gradient(180deg,rgba(10,54,36,.98),rgba(17,82,56,.96)),
      #0e4d34!important;
    box-shadow:18px 0 44px rgba(7,51,32,.08)!important;
  }

  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid{
    grid-template-columns:repeat(2,1fr)!important;
    grid-auto-rows:calc(clamp(110px,7.2vw,136px) / 2)!important;
    height:118%!important;
    opacity:.98!important;
  }

  .public-story.public-story-campaign > .public-story-side-band .public-green-band-grid span::before{
    background:linear-gradient(135deg,#168f57 0%,#28a96b 100%)!important;
  }
}

.public-landing > .public-scroll-top,
.public-scroll-top{
  display:grid!important;
  place-items:center!important;
  position:fixed!important;
  left:auto!important;
  right:clamp(16px,2.4vw,34px)!important;
  bottom:calc(clamp(18px,3vw,34px) + var(--scroll-top-footer-offset, 0px))!important;
  width:76px!important;
  height:76px!important;
  opacity:0!important;
  visibility:hidden!important;
  z-index:120!important;
  pointer-events:none!important;
}

.public-landing > .public-scroll-top.is-visible,
.public-scroll-top.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

.public-landing > .public-scroll-top.is-near-footer,
.public-scroll-top.is-near-footer{
  opacity:1!important;
  visibility:visible!important;
  position:fixed!important;
  left:auto!important;
  right:clamp(16px,2.4vw,34px)!important;
  transform:translate3d(0,0,0) scale(.9)!important;
  animation:none!important;
}

.public-scroll-top img{
  width:60px!important;
  height:60px!important;
}

.public-scroll-top:hover::before{
  animation:publicMicSignal 1.35s ease-out infinite!important;
}

.public-footer{
  position:relative!important;
  z-index:5!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  text-align:center!important;
}

.public-footer .public-logo,
.public-footer-socials{
  margin-inline:auto!important;
}

.public-footer-socials a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  transform:translateY(0)!important;
}

.public-footer-socials a:hover{
  transform:translateY(-4px) scale(1.03)!important;
}

@media (max-width:1099px){
  .public-story.public-story-campaign{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

@media (max-width:980px){
  .public-landing .public-header{
    grid-template-columns:auto auto!important;
    justify-content:space-between!important;
  }
  .public-landing .public-header nav{
    display:none!important;
  }
  .public-landing .public-header-actions{
    justify-self:end!important;
  }
}

/* Atualização institucional: publicações, agenda, rodapé e conversão */
.public-news-events{
  position:relative;
  z-index:1;
  padding:94px max(24px,calc((100vw - 1160px)/2));
  background:radial-gradient(circle at 12% 8%,rgba(33,145,106,.09),transparent 28%),linear-gradient(180deg,#fff 0%,#f4fbf7 100%);
}
.public-news-heading{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(280px,.55fr);
  align-items:end;
  gap:34px;
  margin-bottom:28px;
}
.public-news-heading h2{
  max-width:760px;
  margin:10px 0 0;
  color:#123f35;
  font:800 clamp(34px,4vw,56px)/1.05 Manrope;
  letter-spacing:-.045em;
}
.public-news-heading p{
  margin:0;
  color:#607a73;
  font-size:15px;
  line-height:1.75;
}
.public-news-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.public-news-card{
  position:relative;
  overflow:hidden;
  min-height:250px;
  padding:28px;
  border:1px solid rgba(18,96,76,.14);
  border-radius:26px;
  background:#fff;
  box-shadow:0 24px 56px rgba(10,74,58,.08);
  transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease;
}
.public-news-card::before{
  content:"";
  position:absolute;
  inset:auto -18% -38% auto;
  width:210px;
  aspect-ratio:1;
  border-radius:50%;
  background:rgba(34,151,111,.1);
  pointer-events:none;
}
.public-news-card:hover{
  transform:translateY(-7px);
  border-color:rgba(22,130,105,.32);
  box-shadow:0 34px 76px rgba(10,74,58,.13);
}
.public-news-card>span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:#e3f5ee;
  color:#13705b;
  font:800 10px Manrope;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.public-news-card h3{
  margin:22px 0 10px;
  color:#123f35;
  font:800 24px/1.18 Manrope;
  letter-spacing:-.035em;
}
.public-news-card p{
  margin:0 0 22px;
  color:#5f746f;
  font-size:14px;
  line-height:1.7;
}
.public-news-card a,
.public-inline-cta,
.public-calendar-actions a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:0 16px;
  border:1px solid rgba(21,95,80,.18);
  border-radius:999px;
  background:#fff;
  color:#0f604e;
  font:800 12px Manrope;
  text-decoration:none;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease;
}
.public-news-card a:hover,
.public-inline-cta:hover,
.public-calendar-actions a:hover{
  transform:translateY(-3px);
  border-color:#155f50;
  background:#155f50;
  color:#fff;
}
.public-inline-cta{cursor:pointer}
.public-news-card--event{
  background:linear-gradient(145deg,#0b3c32,#166b58);
  border-color:rgba(255,255,255,.18);
}
.public-news-card--event>span{background:rgba(255,255,255,.16);color:#d9fff1}
.public-news-card--event h3{color:#fff}
.public-news-card--event p{color:#d6ebe5}
.public-calendar-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.public-calendar-actions a{
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.1);
  color:#fff;
}
.public-calendar-actions a:hover{
  background:#fff;
  color:#0d604d;
}

.public-footer{
  display:grid!important;
  grid-template-columns:minmax(260px,1.25fr) minmax(150px,.55fr) minmax(150px,.65fr) minmax(230px,.85fr)!important;
  align-items:start!important;
  gap:34px!important;
  padding:64px max(24px,calc((100vw - 1160px)/2)) 28px!important;
  text-align:left!important;
  background:radial-gradient(circle at 15% 0,rgba(70,184,143,.18),transparent 32%),linear-gradient(145deg,#07352d 0%,#092f29 62%,#041f1b 100%)!important;
}
.public-footer .public-logo{justify-content:flex-start!important}
.public-footer-brand p,
.public-footer-cta p{
  max-width:350px;
  margin:16px 0 0!important;
  color:#cfe9df!important;
  font:600 13px/1.65 DM Sans!important;
}
.public-footer-column,
.public-footer-cta{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.public-footer-column strong,
.public-footer-cta strong{
  margin-bottom:7px;
  color:#fff;
  font:800 13px Manrope;
}
.public-footer-column a{
  color:#b8d8cf;
  font:700 12px DM Sans;
  text-decoration:none;
  transition:color .18s ease,transform .18s ease;
}
.public-footer-column a:hover{
  color:#fff;
  transform:translateX(4px);
}
.public-footer-cta button{
  justify-content:space-between;
  width:max-content;
  max-width:100%;
  min-height:46px;
  margin-top:10px;
  padding:8px 9px 8px 18px;
  border:1px solid rgba(211,243,231,.22);
  border-radius:999px;
  background:#fff;
  color:#0c5c4b;
  font-weight:800;
}
.public-footer-bottom{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:12px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(215,244,232,.16);
  color:#b8d8cf;
  font-size:11px;
}
.public-footer-bottom button{
  padding:0;
  border:0;
  background:none;
  color:#9be4c9;
  font:800 11px Manrope;
}

.public-exit-dialog{
  width:min(520px,calc(100vw - 34px));
  padding:30px;
  border:1px solid rgba(22,130,105,.22);
  border-radius:28px;
  background:#fff;
  color:#123f35;
  box-shadow:0 35px 120px rgba(2,36,29,.28);
}
.public-exit-dialog::backdrop{
  background:rgba(4,31,27,.45);
  backdrop-filter:blur(6px);
}
.public-exit-dialog h2{
  margin:8px 0 8px;
  font:800 34px/1 Manrope;
  letter-spacing:-.045em;
}
.public-exit-dialog p{
  margin:0 0 24px;
  color:#5f746f;
  line-height:1.65;
}
.public-exit-dialog>div{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.public-exit-dialog button{
  min-height:46px;
  border-radius:999px;
  font-weight:800;
}
.public-exit-close{
  position:absolute;
  top:14px;
  right:16px;
  width:34px;
  height:34px;
  border:0;
  background:#eff8f4;
  color:#155f50;
  cursor:pointer;
}

@media(max-width:980px){
  .public-news-heading{grid-template-columns:1fr}
  .public-news-grid{grid-template-columns:1fr}
  .public-footer{
    grid-template-columns:1fr 1fr!important;
    text-align:left!important;
  }
  .public-footer-brand{grid-column:1/-1}
  .public-footer-bottom{justify-content:center;text-align:center}
}
@media(max-width:640px){
  .public-news-events{padding:68px 18px}
  .public-news-card{min-height:0;padding:22px}
  .public-footer{
    grid-template-columns:1fr!important;
    padding:52px 20px 28px!important;
    text-align:center!important;
  }
  .public-footer .public-logo,
  .public-footer-socials{justify-content:center!important}
  .public-footer-brand p,
  .public-footer-cta p{margin-inline:auto!important}
  .public-footer-column{align-items:center}
  .public-footer-cta{align-items:center}
  .public-exit-dialog{padding:26px 20px}
  .public-exit-dialog>div{flex-direction:column}
  .public-exit-dialog button{width:100%}
}

/* Ajustes WhatsApp/grupos, modais e senha */
.person-modal[open] #modalForm,
.person-modal[open] .modal-body {
  max-height: calc(94vh - 112px);
  overflow-y: auto;
  min-height: 0;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.group-chip {
  display: inline-flex;
  flex-direction: column;
  gap: 1px;
  max-width: 190px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 5px 10px;
  line-height: 1.1;
  background: #f7faf8;
  color: var(--muted);
  vertical-align: middle;
}

.group-chip b {
  font: 800 10px Manrope;
  color: inherit;
  white-space: nowrap;
}

.group-chip small {
  overflow: hidden;
  color: inherit;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.group-chip.yes {
  border-color: #a9dac8;
  background: #eaf8f1;
  color: #12624f;
}

.group-chip.pending {
  border-color: #ead6a6;
  background: #fff8df;
  color: #8a6415;
}

.group-chip.no {
  border-color: #efc1bc;
  background: #fff2f0;
  color: #9d3d34;
}

.group-chip.neutral {
  border-color: #d9e6e1;
  background: #f6faf8;
  color: #60756f;
}

.leader-groups,
.profile-groups {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-top: 7px;
}

.follower-groups {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 4px;
}

.group-picker-summary {
  display: grid;
  gap: 8px;
  padding: 14px;
  margin-bottom: 12px;
  background: #f8fbf9;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.group-picker-summary p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.group-picker-actions {
  gap: 8px;
}

@media (max-width: 700px) {
  .follower-groups {
    display: none;
  }

  .group-chip {
    max-width: 100%;
  }

  .profile-groups {
    flex-direction: column;
    align-items: stretch;
  }

  .group-picker-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}

/* Importações — grade estável e sem botões duplicados/ilegíveis */
.import-workspace > header {
  align-items: stretch;
}
.import-workspace .import-filters {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  gap: 12px !important;
  align-items: end !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 14px !important;
  border: 1px solid var(--line) !important;
  border-radius: 16px !important;
  background: var(--surface) !important;
}
.import-workspace .import-filters button,
.import-workspace .import-filters input,
.import-workspace .import-filters select {
  min-height: 46px !important;
  min-width: 0 !important;
}
.import-workspace .import-group-action,
.import-workspace .import-sheet-action,
.import-workspace .import-clear-action,
.import-workspace .import-model-action,
.import-workspace #refreshImportGroups {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  white-space: nowrap !important;
  width: 100% !important;
}
.import-workspace .import-model-action,
.import-workspace .import-sheet-action {
  color: var(--green) !important;
  background: #fff !important;
  border-color: var(--line) !important;
}
.import-workspace .import-model-action:hover,
.import-workspace .import-sheet-action:hover {
  color: #fff !important;
  background: var(--green) !important;
}
@media (max-width: 1280px) {
  .import-workspace .import-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 1281px) {
  .import-workspace .import-group-search,
  .import-workspace .import-group-filter,
  .import-workspace #importSearch {
    grid-column: span 2;
  }
}
@media (max-width: 700px) {
  .import-workspace .import-filters {
    grid-template-columns: 1fr !important;
  }
}

/* Blog público — inspirado na lógica de cards da landing page de referência,
   sem usar o componente antigo de stories que colapsava no desktop. */
.public-blog-section {
  --blog-green: #123d37;
  --blog-green-2: #0f5f48;
  position: relative;
  isolation: isolate;
  max-width: 1380px;
  margin: 0 auto;
  padding: clamp(72px, 8vw, 118px) clamp(20px, 5vw, 76px);
  overflow: hidden;
}

.public-blog-section > .public-blog-side-band.public-green-band {
  position: absolute;
  inset: clamp(92px, 9vw, 138px) auto clamp(70px, 7vw, 110px) 0 !important;
  width: clamp(36px, 4vw, 58px) !important;
  min-width: 0 !important;
  max-width: 58px !important;
  height: auto !important;
  border-radius: 0 22px 22px 0;
  opacity: .45;
  pointer-events: none;
  z-index: 0;
}

.public-blog-section > :not(.public-blog-side-band) {
  position: relative;
  z-index: 1;
}

.public-blog-header {
  width: min(1180px, 100%);
  margin: 0 auto clamp(26px, 4vw, 42px);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
}

.public-blog-header > div {
  max-width: 760px;
}

.public-blog-header h2 {
  margin: 10px 0 14px;
  color: var(--blog-green);
  font-size: clamp(2.2rem, 4.2vw, 4.05rem);
  line-height: 1;
  letter-spacing: -.055em;
}

.public-blog-header p {
  margin: 0;
  max-width: 680px;
  color: rgba(18, 61, 55, .72);
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  line-height: 1.75;
}

.public-blog-all {
  flex: 0 0 auto;
  margin-bottom: 10px;
}

.public-blog-grid {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .92fr) minmax(0, .92fr);
  gap: clamp(18px, 2.2vw, 28px);
  align-items: stretch;
}

.public-blog-post {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(18, 61, 55, .14);
  border-radius: 30px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 22px 60px rgba(18, 61, 55, .10);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.public-blog-post:hover {
  transform: translateY(-8px);
  border-color: rgba(18, 61, 55, .28);
  box-shadow: 0 30px 78px rgba(18, 61, 55, .16);
}

.public-blog-post-media {
  position: relative;
  height: 250px;
  overflow: hidden;
  background: linear-gradient(135deg, #0b332d, #17664f);
}

.public-blog-post-featured .public-blog-post-media {
  height: 360px;
}

.public-blog-post-media img,
.public-blog-post-media video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
}

.public-blog-post-media video {
  background: #0b332d;
}

.public-blog-post-media > span {
  position: absolute;
  top: 18px;
  left: 18px;
  z-index: 2;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  color: var(--blog-green);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .12);
}

.public-blog-post-empty {
  display: grid;
  place-items: center;
  text-align: center;
  background:
    radial-gradient(circle at 22% 24%, rgba(202, 255, 93, .28), transparent 26%),
    radial-gradient(circle at 80% 78%, rgba(255, 255, 255, .22), transparent 32%),
    linear-gradient(135deg, #123d37, #0e6b4d);
}

.public-blog-post-empty strong {
  max-width: 240px;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1;
  letter-spacing: -.05em;
}

.public-blog-post-body {
  flex: 1;
  padding: clamp(22px, 2.4vw, 30px);
  display: flex;
  flex-direction: column;
}

.public-blog-post-body small {
  color: var(--blog-green-2);
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.public-blog-post-body h3 {
  margin: 10px 0 12px;
  color: var(--blog-green);
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.08;
  letter-spacing: -.04em;
}

.public-blog-post-body p {
  margin: 0;
  color: rgba(18, 61, 55, .70);
  line-height: 1.7;
}

.public-blog-post-body a {
  margin-top: auto;
  padding-top: 22px;
  color: var(--blog-green);
  font-weight: 900;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.public-blog-post-body a span {
  transition: transform .25s ease;
}

.public-blog-post-body a:hover span {
  transform: translateX(5px);
}

.is-hidden-legacy {
  display: none !important;
}

@media (max-width: 980px) {
  .public-blog-section {
    padding-inline: 18px;
  }
  .public-blog-section .public-blog-side-band {
    display: none;
  }
  .public-blog-header {
    display: grid;
    align-items: start;
  }
  .public-blog-all {
    justify-self: start;
    margin-bottom: 0;
  }
  .public-blog-grid {
    grid-template-columns: 1fr;
  }
  .public-blog-post,
  .public-blog-post-featured {
    min-height: 0;
  }
}

@media (max-width: 640px) {
  .public-blog-section {
    padding-block: 58px;
  }
  .public-blog-header h2 {
    font-size: clamp(2.25rem, 14vw, 3.35rem);
  }
  .public-blog-post {
    border-radius: 24px;
  }
  .public-blog-post-media,
  .public-blog-post-featured .public-blog-post-media {
    height: 260px;
  }
}

/* Ajuste final do portal público: remove fantasmas do blog antigo,
   estabiliza a faixa lateral e impede corte do vídeo institucional. */
.public-blog-redesign {
  --public-blog-band-width: clamp(52px, 5.2vw, 82px);
  padding-left: max(clamp(20px, 5vw, 76px), calc(var(--public-blog-band-width) + 38px));
}

/* Barra lateral animada */
.public-blog-redesign > .public-blog-side-band.public-green-band {
  display: block !important;
  inset: clamp(36px, 4vw, 64px) auto clamp(36px, 4vw, 64px) 0 !important;
  width: var(--public-blog-band-width) !important;
  max-width: var(--public-blog-band-width) !important;
  min-height: 0 !important;
  opacity: 1 !important;
  border-radius: 0 28px 28px 0;
  overflow: hidden;
  box-shadow:
    inset 1px 0 0 rgba(255,255,255,.1),
    12px 0 40px rgba(18,61,55,.18);
  background:
    linear-gradient(180deg, #147a5a 0%, #123d37 45%, #0b332d 100%) !important;
  animation: publicBlogBandGlow 3.6s ease-in-out infinite;
}

.public-blog-redesign > .public-blog-side-band .public-green-band-noise {
  opacity: .85;
  animation: publicBlogBandNoise 8s linear infinite;
}

.public-blog-redesign > .public-blog-side-band .public-green-band-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  grid-auto-rows: calc(var(--public-blog-band-width) / 2) !important;
  height: 160% !important;
  opacity: 1 !important;
  animation: publicBlogBandDrift 10s ease-in-out infinite alternate !important;
}

.public-blog-redesign > .public-blog-side-band .public-green-band-grid span {
  animation:
    publicBandCellIn .7s ease-out both,
    publicBlogBandPulse 3.8s ease-in-out infinite !important;
}

.public-blog-redesign > .public-blog-side-band .public-green-band-grid span:nth-child(3n) {
  animation-delay: .08s, .8s !important;
}
.public-blog-redesign > .public-blog-side-band .public-green-band-grid span:nth-child(5n) {
  animation-delay: .16s, 1.4s !important;
}
.public-blog-redesign > .public-blog-side-band .public-green-band-grid span:nth-child(7n) {
  animation-delay: .24s, 2s !important;
}

.public-blog-band-shine {
  position: absolute;
  inset: -30% 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(183,255,99,.05) 40%,
    rgba(183,255,99,.45) 50%,
    rgba(255,255,255,.2) 56%,
    transparent 72%
  );
  mix-blend-mode: soft-light;
  animation: publicBlogBandShine 2.8s ease-in-out infinite;
}

@keyframes publicBlogBandDrift {
  from { transform: translateY(0) scale(1.02); }
  to { transform: translateY(-18%) scale(1.02); }
}
@keyframes publicBlogBandPulse {
  0%, 100% { filter: saturate(1); opacity: 1; transform: scale(1); }
  50% { filter: saturate(1.35); opacity: .72; transform: scale(.94); }
}
@keyframes publicBlogBandShine {
  0% { transform: translateY(-40%); opacity: .2; }
  40% { opacity: 1; }
  100% { transform: translateY(60%); opacity: .15; }
}
@keyframes publicBlogBandGlow {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.12); }
}
@keyframes publicBlogBandNoise {
  from { background-position: 0 0; }
  to { background-position: 0 48px; }
}

/* 3 cards iguais; mídia no mesmo tamanho; vídeo inteiro sem corte */
.public-blog-grid-redesign {
  width: min(1180px, 100%);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: none;
  align-items: stretch;
  gap: clamp(16px, 2vw, 24px);
}

.public-blog-grid-redesign .public-blog-post,
.public-blog-grid-redesign .public-blog-post-featured {
  grid-row: auto;
  height: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.public-blog-grid-redesign .public-blog-post-media,
.public-blog-grid-redesign .public-blog-post-featured .public-blog-post-media,
.public-blog-redesign .public-video-frame {
  flex: 0 0 auto;
  width: 100%;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 9 / 16;
  padding: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(135deg, #0b332d, #123d37);
}

.public-blog-redesign .public-video-frame video {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  background: transparent;
  cursor: zoom-in;
}

.public-blog-grid-redesign .public-blog-post-media img,
.public-blog-redesign .public-blog-post-media:not(.public-video-frame) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.public-blog-grid-redesign .public-blog-post-body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.public-whatsapp-cta {
  text-decoration: none;
}

.public-whatsapp-cta:hover,
.public-whatsapp-cta:focus-visible {
  color: #fff;
}

@media (max-width: 980px) {
  .public-blog-redesign {
    --public-blog-band-width: 14px;
    padding-left: 30px;
  }

  .public-blog-section .public-blog-side-band,
  .public-blog-redesign > .public-blog-side-band.public-green-band {
    display: block !important;
    width: 14px !important;
    max-width: 14px !important;
    opacity: 1 !important;
    border-radius: 0 14px 14px 0;
  }

  .public-blog-grid-redesign {
    grid-template-columns: 1fr;
    max-width: 420px;
    margin-inline: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .public-blog-redesign > .public-blog-side-band.public-green-band,
  .public-blog-redesign > .public-blog-side-band .public-green-band-grid,
  .public-blog-redesign > .public-blog-side-band .public-green-band-grid span,
  .public-blog-redesign > .public-blog-side-band .public-green-band-noise,
  .public-blog-band-shine {
    animation: none !important;
  }
}
/* Ajuste fino institucional — sidebar, notícias e paleta da biografia */
.sidebar,
.sidebar *{
  transition:all .4s ease;
}
.sidebar .logo>span,
.mobile-logo span{
  background:rgba(255,255,255,.08)!important;
  color:#e8fff7!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
.sidebar nav button{
  background:transparent;
}
.sidebar nav button:hover,
.sidebar nav button.active{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
.sidebar nav i{
  background:rgba(255,255,255,.08)!important;
  color:#dff8ef!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.sidebar nav button:hover i,
.sidebar nav button.active i{
  background:rgba(203,255,68,.16)!important;
  color:#d8ff7a!important;
}
.sidebar .user-card{
  background:rgba(255,255,255,.035)!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  border-radius:18px!important;
  padding:12px 10px!important;
}
.sidebar .avatar{
  background:rgba(255,255,255,.10)!important;
  color:#effff9!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}
.sidebar .avatar img{
  background:#123d37!important;
}
.sidebar .user-profile-link,
.sidebar .logout-button{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
}
.sidebar .user-profile-link:hover,
.sidebar .logout-button:hover{
  background:rgba(255,255,255,.12)!important;
  transform:translateY(-1px);
}
@media(max-width:760px){
  .sidebar{
    transform:translateX(-105%)!important;
    transition:transform .4s ease, box-shadow .4s ease!important;
    will-change:transform;
  }
  .sidebar.open{
    transform:translateX(0)!important;
    box-shadow:26px 0 60px rgba(5,29,25,.24)!important;
  }
}

.public-blog-copy .public-section-kicker{
  display:inline-flex!important;
  color:#1b755f!important;
}
.public-blog-points article{
  position:relative;
  overflow:hidden;
}
.public-blog-points article::after{
  content:"";
  position:absolute;
  inset:auto 18px 0 72px;
  height:2px;
  background:linear-gradient(90deg,rgba(18,61,55,.24),transparent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s ease;
}
.public-blog-points article:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 34px rgba(18,61,55,.08);
}
.public-blog-points article:hover::after{
  transform:scaleX(1);
}
.public-blog-media{
  min-height:430px;
}
.public-blog-carousel{
  position:relative;
  min-height:385px;
}
.public-blog-slide{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  gap:16px;
  opacity:0;
  transform:translateX(18px) scale(.985);
  pointer-events:none;
  transition:opacity .55s ease, transform .55s ease;
}
.public-blog-slide.is-active{
  opacity:1;
  transform:translateX(0) scale(1);
  pointer-events:auto;
}
.public-blog-card-preview{
  display:flex;
  justify-content:center;
  flex-direction:column;
  min-height:318px;
  padding:34px;
  border-radius:24px;
  background:
    radial-gradient(circle at 82% 18%,rgba(203,255,68,.18),transparent 34%),
    linear-gradient(135deg,#123d37,#0b2f29 72%);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 22px 40px rgba(18,61,55,.18);
}
.public-blog-card-preview small{
  color:#d8ff7a;
  font:800 11px Manrope;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.public-blog-card-preview h3{
  max-width:420px;
  margin:14px 0 10px;
  font:800 clamp(25px,3vw,38px)/1.08 Manrope;
  letter-spacing:-.035em;
}
.public-blog-card-preview p{
  max-width:430px;
  margin:0 0 22px;
  color:#d5e8e0;
}
.public-blog-card-preview a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:max-content;
  padding:12px 16px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  color:#fff;
  font-weight:800;
  text-decoration:none;
}
.public-blog-card-preview a:hover{
  background:rgba(255,255,255,.12);
  transform:translateY(-2px);
}
.public-blog-dots{
  position:absolute;
  right:28px;
  bottom:26px;
  z-index:3;
}

.public-biography-photo.public-cutout-stage,
.public-contact-portrait.public-cutout-stage{
  background:radial-gradient(circle at 50% 44%,rgba(18,61,55,.15) 0 41%,transparent 42%)!important;
}
.public-biography-photo.public-cutout-stage:before,
.public-contact-portrait.public-cutout-stage:before{
  border-color:rgba(18,61,55,.22)!important;
}
.public-portrait-orbit,
.public-contact-orbit{
  border-color:rgba(18,61,55,.30)!important;
  animation-duration:22s!important;
}
.public-portrait-orbit:after,
.public-contact-orbit:after{
  background:#123d37!important;
  box-shadow:0 10px 24px rgba(18,61,55,.30)!important;
}
.public-biography-photo.public-cutout-stage img,
.public-contact-portrait img{
  filter:drop-shadow(0 26px 28px rgba(18,61,55,.22))!important;
}

@media(max-width:700px){
  .public-blog-media{min-height:360px}
  .public-blog-carousel{min-height:310px}
  .public-blog-card-preview{min-height:245px;padding:24px}
  .public-blog-dots{right:22px;bottom:20px}
}
.person-modal[open] .profile-followers,
.person-modal[open] .followers-wrap {
  overflow: visible;
  min-height: 0;
}
.leadership-card .group-status small,
.leader-main .group-status small,
.follower-row .group-status small,
.group-status small {
  display: block !important;
  max-width: 190px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wa-mini.group-status {
  align-items: flex-start;
  gap: 2px;
  line-height: 1.2;
}
.wa-mini.group-status b {
  font-weight: 800;
}
.wa-mini.group-status.in {
  background: #e9f8ef;
  color: #0f6847;
}
.wa-mini.group-status.invite {
  background: #fff7df;
  color: #8a5a00;
}
.wa-mini.group-status.declined,
.wa-mini.group-status.out {
  background: #f2f6f4;
  color: #60746c;
}
.group-picker-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.password-strength {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  color: #61756d;
}
.password-strength i {
  display: block;
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8efec;
  box-shadow: inset 0 0 0 1px rgba(6, 78, 59, 0.08);
}
.password-strength span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  transition: width .22s ease, background .22s ease;
  background: #93a39c;
}
.password-strength b {
  font-size: .82rem;
}
.password-strength[data-level="weak"] span { background: #d97b73; }
.password-strength[data-level="medium"] span { background: #d8a735; }
.password-strength[data-level="strong"] span { background: #15845d; }
.wa-groups-row .ghost {
  min-height: 38px;
  white-space: nowrap;
}
.event-confirmation-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 520px);
  gap: 20px;
  align-items: end;
}
.event-filter-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(150px, .8fr);
  gap: 12px;
  align-items: end;
}
.event-filter-grid label,
.team .user-name-button,
.user-name-button {
  min-width: 0;
}
.event-filter-grid input {
  width: 100%;
}
.confirmation-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}
.confirmation-summary > div {
  border-radius: 14px;
  padding: 12px;
  background: #eef8f3;
  border: 1px solid rgba(21, 101, 76, .12);
}
.confirmation-summary span {
  display: block;
  color: #5f746c;
  font-size: .82rem;
}
.confirmation-summary strong {
  color: #064e3b;
  font-size: 1.55rem;
}
.confirmation-basis {
  color: #6b7f77;
}
.access-request-actions,
.request-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.danger-outline {
  border: 1px solid rgba(197, 80, 72, .35);
  background: #fff9f8;
  color: #a33d36;
  border-radius: 12px;
  padding: 12px 16px;
  font-weight: 800;
  cursor: pointer;
}
.danger-outline:hover {
  background: #ffecea;
  transform: translateY(-1px);
}
.audit-card td small {
  display: block;
  max-width: 380px;
  color: #687c74;
  line-height: 1.45;
}
.group-enrollment-callout label small {
  color: #6b7f77;
  font-weight: 700;
}
@media (max-width: 760px) {
  .person-modal[open] #modalForm,
  .person-modal[open] .modal-body {
    max-height: calc(100dvh - 104px);
  }
  .wa-groups-row {
    grid-template-columns: auto 1fr;
  }
  .wa-groups-row .ghost,
  .wa-groups-row .group-status {
    grid-column: 1 / -1;
  }
  .event-confirmation-head,
  .event-filter-grid,
  .confirmation-summary {
    grid-template-columns: 1fr;
  }
  .access-request-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Biografia pública: composição editorial compacta e fotos recortadas. */
@media (min-width: 901px) {
  .public-page .public-biography {
    display: grid !important;
    grid-template-columns: minmax(360px, 470px) minmax(440px, 590px) !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 36px clamp(42px, 5vw, 72px) !important;
    max-width: 1220px !important;
    margin: 0 auto !important;
    padding: 56px 28px 64px !important;
    background: #fff !important;
  }

  .public-page .public-biography-photo.public-cutout-stage {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    width: 100% !important;
    height: clamp(500px, 48vw, 610px) !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage::before,
  .public-page .public-biography-photo.public-cutout-stage::after,
  .public-page .public-biography-photo .public-portrait-orbit,
  .public-page .public-biography-photo figcaption {
    display: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage img {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
    filter: drop-shadow(0 22px 18px rgba(18, 61, 55, .16)) !important;
  }

  .public-page .public-biography-intro {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
  }

  .public-page .public-biography-heading {
    width: 100% !important;
    max-width: 590px !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .public-page .public-biography-heading h2 {
    max-width: 590px !important;
    margin: 10px 0 0 !important;
    font-size: clamp(36px, 3.1vw, 50px) !important;
    line-height: 1.08 !important;
  }

  .public-page .public-biography-intro blockquote,
  .public-page .public-biography-intro > p {
    width: 100% !important;
    max-width: 590px !important;
    text-align: left !important;
  }

  .public-page .public-biography-intro blockquote {
    margin: 0 0 20px !important;
  }

  .public-page .public-biography-intro > p {
    margin: 0 !important;
  }

  .public-page .public-biography-story {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
  }

  .public-page .public-biography-story .public-story-feature {
    display: grid !important;
    grid-template-columns: minmax(290px, 390px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(30px, 4vw, 58px) !important;
    min-height: 350px !important;
    padding: 28px clamp(30px, 4vw, 52px) !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 61, 55, .12) !important;
    border-radius: 28px !important;
    background:
      radial-gradient(circle at 14% 18%, rgba(43, 153, 113, .14), transparent 38%),
      linear-gradient(135deg, #f8fbfa, #edf7f3) !important;
  }

  .public-page .public-story-feature figure {
    height: 350px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }

  .public-page .public-story-feature figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
    filter: drop-shadow(0 18px 16px rgba(18, 61, 55, .16)) !important;
  }

  .public-page .public-biography-reasons {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  .public-page .public-biography-photo.public-cutout-stage {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage::before,
  .public-page .public-biography-photo.public-cutout-stage::after,
  .public-page .public-biography-photo .public-portrait-orbit,
  .public-page .public-biography-photo figcaption {
    display: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage img {
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
  }
}

/* Public footer alignment override */
.public-page .public-footer {
  display: grid !important;
  grid-template-columns:
    minmax(250px, 1.05fr)
    minmax(160px, .65fr)
    minmax(170px, .7fr)
    minmax(250px, .95fr) !important;
  align-items: start !important;
  gap: clamp(24px, 3vw, 44px) !important;
  text-align: left !important;
}

.public-page .public-footer__brand,
.public-page .public-footer__nav,
.public-page .public-footer__social,
.public-page .public-footer__cta {
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.public-page .public-footer__brand p,
.public-page .public-footer__cta p {
  max-width: 34ch !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.public-page .public-footer__nav a,
.public-page .public-footer__social a {
  justify-content: flex-start !important;
  text-align: left !important;
  white-space: nowrap !important;
}

.public-page .public-footer__bottom {
  grid-column: 1 / -1 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  text-align: center !important;
  margin-top: 6px !important;
}

@media (max-width: 980px) {
  .public-page .public-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .public-page .public-footer__cta {
    grid-column: 1 / -1 !important;
    align-items: center !important;
    text-align: center !important;
  }

  .public-page .public-footer__cta p {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 700px) {
  .public-page .public-footer {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .public-page .public-footer__brand,
  .public-page .public-footer__nav,
  .public-page .public-footer__social,
  .public-page .public-footer__cta {
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .public-page .public-footer__brand p,
  .public-page .public-footer__cta p {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .public-page .public-footer__nav a,
  .public-page .public-footer__social a {
    justify-content: center !important;
  }
}

/* Ajuste final do rodapé público: colunas alinhadas e sem texto "quebrado" palavra por palavra. */
.public-page .public-footer {
  display: grid !important;
  grid-template-columns:
    minmax(250px, 1.05fr)
    minmax(160px, .65fr)
    minmax(170px, .7fr)
    minmax(250px, .95fr) !important;
  align-items: start !important;
  justify-items: stretch !important;
  gap: clamp(22px, 3vw, 42px) !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: clamp(46px, 5vw, 68px) max(24px, calc((100vw - 1180px) / 2)) 30px !important;
  text-align: left !important;
}

.public-page .public-footer > * {
  min-width: 0 !important;
}

.public-page .public-footer :is(.public-footer-brand, .public-footer-column, .public-footer-cta) {
  display: flex !important;
  align-items: flex-start !important;
  flex-direction: column !important;
  text-align: left !important;
}

.public-page .public-footer .public-logo,
.public-page .public-footer-socials {
  justify-content: flex-start !important;
}

.public-page .public-footer-brand p,
.public-page .public-footer-cta p {
  max-width: 34ch !important;
  margin-inline: 0 !important;
  text-align: left !important;
  white-space: normal !important;
}

.public-page .public-footer-column a,
.public-page .public-footer-cta button {
  white-space: nowrap !important;
}

.public-page .public-footer-cta {
  grid-column: auto !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

.public-page .public-footer-bottom {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px 16px !important;
  width: 100% !important;
  padding-top: 22px !important;
  text-align: center !important;
  white-space: normal !important;
}

@media (max-width: 980px) {
  .public-page .public-footer {
    grid-template-columns: repeat(2, minmax(220px, 1fr)) !important;
    padding-inline: 24px !important;
  }

  .public-page .public-footer-cta {
    grid-column: 1 / -1 !important;
    align-items: center !important;
    text-align: center !important;
  }

  .public-page .public-footer-cta p {
    margin-inline: auto !important;
    text-align: center !important;
  }
}

@media (max-width: 700px) {
  .public-page .public-footer {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 24px !important;
    text-align: center !important;
  }

  .public-page .public-footer :is(.public-footer-brand, .public-footer-column, .public-footer-cta) {
    align-items: center !important;
    text-align: center !important;
  }

  .public-page .public-footer .public-logo,
  .public-page .public-footer-socials {
    justify-content: center !important;
  }

  .public-page .public-footer-brand p,
  .public-page .public-footer-cta p {
    margin-inline: auto !important;
    text-align: center !important;
  }
}

/* Biografia institucional — composição final, compacta e sem cartão na foto. */
@media (min-width: 901px) {
  .public-page .public-biography {
    display: grid !important;
    grid-template-columns: minmax(370px, 500px) minmax(440px, 600px) !important;
    align-items: center !important;
    justify-content: center !important;
    column-gap: clamp(42px, 5vw, 76px) !important;
    row-gap: 34px !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: clamp(54px, 5vw, 72px) 30px !important;
    background: #fff !important;
  }

  .public-page .public-biography-photo.public-cutout-stage {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    width: 100% !important;
    height: clamp(520px, 57vw, 640px) !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage::before,
  .public-page .public-biography-photo.public-cutout-stage::after,
  .public-page .public-biography-photo .public-portrait-orbit,
  .public-page .public-biography-photo figcaption {
    display: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage img {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
    filter: drop-shadow(0 24px 20px rgba(18, 61, 55, .16)) !important;
  }

  .public-page .public-biography-intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  .public-page .public-biography-heading {
    width: 100% !important;
    max-width: 600px !important;
    margin: 0 auto 24px !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .public-page .public-biography-heading h2 {
    max-width: 600px !important;
    margin: 12px auto 0 !important;
    font-size: clamp(36px, 3vw, 52px) !important;
    line-height: 1.08 !important;
  }

  .public-page .public-biography-intro blockquote,
  .public-page .public-biography-intro > p {
    width: 100% !important;
    max-width: 590px !important;
    text-align: left !important;
  }

  .public-page .public-biography-intro blockquote {
    margin: 0 auto 22px !important;
  }

  .public-page .public-biography-intro > p {
    margin: 0 auto !important;
  }

  .public-page .public-biography-story {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
  }

  .public-page .public-biography-story .public-story-feature {
    display: grid !important;
    grid-template-columns: minmax(300px, 410px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(34px, 5vw, 68px) !important;
    min-height: 400px !important;
    padding: 30px clamp(30px, 4vw, 58px) !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 61, 55, .12) !important;
    border-radius: 28px !important;
    background:
      radial-gradient(circle at 16% 22%, rgba(43, 153, 113, .13), transparent 38%),
      linear-gradient(135deg, #f7fbf9, #eef7f3) !important;
  }

  .public-page .public-story-feature figure {
    height: 380px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }

  .public-page .public-story-feature figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    filter: drop-shadow(0 20px 18px rgba(18, 61, 55, .16)) !important;
  }

  .public-page .public-biography-reasons {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  .public-page .public-biography-photo.public-cutout-stage {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .public-page .public-biography-photo.public-cutout-stage img {
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
  }

  .public-page .public-biography-story .public-story-feature {
    overflow: hidden !important;
  }
}

/* Consolidação visual — biografia, ranking, busca de liderança e microfone. */
@media (min-width: 901px) {
  .public-page .public-biography {
    display: grid !important;
    grid-template-columns: minmax(400px, 520px) minmax(520px, 650px) !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(42px, 5vw, 78px) !important;
    max-width: 1440px !important;
    margin: 0 auto !important;
    padding: clamp(68px, 7vw, 96px) clamp(28px, 5vw, 72px) !important;
    background: #fff !important;
  }
  .public-page .public-biography-photo {
    position: relative !important;
    top: auto !important;
    align-self: center !important;
    width: 100% !important;
    height: clamp(610px, 67vh, 750px) !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .public-page .public-biography-photo::after,
  .public-page .public-biography-photo figcaption,
  .public-page .public-biography-photo .public-portrait-orbit {
    display: none !important;
  }
  .public-page .public-biography-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    filter: drop-shadow(0 24px 24px rgba(18, 61, 55, 0.16)) !important;
  }
  .public-page .public-biography-intro {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0 !important;
    text-align: center !important;
  }
  .public-page .public-biography-heading {
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 26px !important;
    text-align: center !important;
  }
  .public-page .public-biography-heading h2 {
    max-width: 650px !important;
    margin: 12px auto 0 !important;
    font-size: clamp(38px, 3.2vw, 56px) !important;
    line-height: 1.08 !important;
  }
  .public-page .public-biography-intro blockquote {
    max-width: 650px !important;
    margin: 0 auto 24px !important;
    text-align: left !important;
  }
  .public-page .public-biography-intro > p {
    max-width: 650px !important;
    margin: 0 auto !important;
    text-align: left !important;
  }
  .public-page .public-biography-story {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-top: 16px !important;
  }
  .public-page .public-biography-story .public-story-feature {
    display: grid !important;
    grid-template-columns: minmax(320px, 440px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(32px, 5vw, 72px) !important;
    min-height: 490px !important;
    padding: 42px clamp(34px, 5vw, 76px) !important;
    border: 1px solid rgba(18, 61, 55, 0.12) !important;
    border-radius: 32px !important;
    background:
      radial-gradient(circle at 14% 20%, rgba(43, 153, 113, 0.14), transparent 38%),
      linear-gradient(135deg, #f7fbf9, #eef7f3) !important;
    overflow: hidden !important;
  }
  .public-page .public-story-feature figure {
    height: 430px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }
  .public-page .public-story-feature figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    filter: drop-shadow(0 22px 22px rgba(18, 61, 55, 0.16)) !important;
  }
  .public-page .public-story-feature-copy {
    display: grid !important;
    grid-template-columns: 54px 1fr !important;
    gap: 20px !important;
    align-items: start !important;
  }
  .public-page .public-biography-reasons {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  .public-page .public-biography {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding: 58px 20px !important;
  }
  .public-page .public-biography-photo {
    position: relative !important;
    top: auto !important;
    width: min(430px, 100%) !important;
    height: 540px !important;
    margin: 0 auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .public-page .public-biography-photo::after,
  .public-page .public-biography-photo figcaption,
  .public-page .public-biography-photo .public-portrait-orbit {
    display: none !important;
  }
  .public-page .public-biography-photo img {
    object-fit: contain !important;
    object-position: center bottom !important;
    filter: drop-shadow(0 18px 18px rgba(18, 61, 55, 0.15)) !important;
  }
  .public-page .public-biography-intro,
  .public-page .public-biography-heading {
    text-align: center !important;
  }
  .public-page .public-biography-intro blockquote,
  .public-page .public-biography-intro > p {
    text-align: left !important;
  }
  .public-page .public-biography-story {
    grid-column: 1 !important;
  }
  .public-page .public-biography-story .public-story-feature {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 26px 20px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, #f4faf7, #fff) !important;
  }
  .public-page .public-story-feature figure {
    height: 350px !important;
    margin: 0 !important;
    background: transparent !important;
  }
  .public-page .public-story-feature figure img {
    object-fit: contain !important;
    object-position: center bottom !important;
  }
}

@media (max-width: 520px) {
  .public-page .public-biography-photo {
    height: 440px !important;
  }
  .public-page .public-biography-heading h2 {
    font-size: clamp(31px, 9vw, 40px) !important;
  }
  .public-page .public-story-feature figure {
    height: 300px !important;
  }
}

.leadership-ranking {
  display: grid;
  gap: 22px;
  padding: clamp(24px, 3vw, 40px) !important;
}
.leadership-ranking > header {
  display: flex !important;
  justify-content: center !important;
  width: 100%;
  text-align: center;
}
.leadership-ranking > header > div {
  max-width: 760px;
}
.leadership-ranking .ranking-actions {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
}
.leadership-ranking .ranking-limit {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
}
.leadership-ranking .ranking-collapse {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 40px;
  margin: 0 auto !important;
  padding: 8px 14px !important;
  cursor: pointer;
}
.ranking-chevron {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(18, 61, 55, 0.1);
}
.ranking-chevron::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: 4px;
  border-top: 2px solid currentColor;
  border-left: 2px solid currentColor;
  transform: rotate(45deg);
}
.leadership-ranking.is-collapsed .ranking-chevron::before {
  margin-top: -3px;
  transform: rotate(225deg);
}
.leadership-ranking.is-collapsed .ranking-content {
  display: none;
}
.leadership-ranking .ranking-limit {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface);
}
.leadership-ranking .ranking-limit button {
  min-height: 40px;
  padding: 9px 14px;
  border: 0;
  border-left: 1px solid var(--line);
  background: transparent;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}
.leadership-ranking .ranking-limit button:first-child {
  border-left: 0;
}
.leadership-ranking .ranking-limit button:hover {
  background: var(--green-light);
  color: var(--green);
}
.leadership-ranking .ranking-limit button.active {
  background: var(--green);
  color: #fff;
}
.ranking-pyramid {
  display: grid;
  grid-template-columns: 1fr 1.15fr 1fr;
  align-items: end;
  gap: 14px;
  max-width: 900px;
  margin: 28px auto 8px;
}
.ranking-place {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  min-height: 140px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(180deg, var(--card), var(--green-light));
  color: var(--ink);
  text-align: center;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
}
.ranking-place:hover {
  transform: translateY(-4px);
}
.ranking-place.place-1 {
  grid-column: 2;
  grid-row: 1;
  min-height: 195px;
  border-color: #d8b442;
  background: linear-gradient(180deg, #fff8d9 0%, #f4d66c 100%);
  box-shadow: 0 15px 34px rgba(184, 137, 20, 0.22);
}
.ranking-place.place-2 {
  grid-column: 1;
  grid-row: 1;
  min-height: 165px;
  border-color: #b8c2ca;
  background: linear-gradient(180deg, #f8fafb 0%, #dce3e7 100%);
  box-shadow: 0 12px 28px rgba(90, 105, 117, 0.15);
}
.ranking-place.place-3 {
  grid-column: 3;
  grid-row: 1;
  min-height: 145px;
  border-color: #c88a57;
  background: linear-gradient(180deg, #fff4ea 0%, #daa16f 100%);
  box-shadow: 0 12px 28px rgba(143, 82, 34, 0.16);
}
.ranking-place i {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  min-width: 32px;
  height: 25px;
  margin-bottom: 10px;
  border-radius: 999px;
  background: var(--green);
  color: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}
.ranking-place.place-1 i {
  background: #b88a16;
}
.ranking-place.place-2 i {
  background: #7f8d97;
}
.ranking-place.place-3 i {
  background: #a8622d;
}
.ranking-place .leader-avatar {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  font-size: 13px;
}
.ranking-place > b {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-height: 32px;
  margin-top: 8px;
  font: 800 12px/1.35 Manrope;
  text-align: center;
  word-break: break-word;
}
.ranking-supporters {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  width: 100%;
  margin-top: 8px;
}
.ranking-supporters strong {
  margin: 0;
  color: var(--green);
  font: 800 28px Manrope;
  line-height: 1;
}
.ranking-place.place-1 .ranking-supporters strong {
  color: #8f6810;
}
.ranking-place.place-2 .ranking-supporters strong {
  color: #596771;
}
.ranking-place.place-3 .ranking-supporters strong {
  color: #81481f;
}
.ranking-supporters small {
  margin: 0;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.25;
}
.ranking-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  max-width: 900px;
  margin: 0 auto;
}
.ranking-list button {
  display: grid;
  grid-template-columns: 32px auto 1fr auto auto;
  align-items: center;
  gap: 8px;
  padding: 9px 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--card);
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}
.ranking-list i {
  color: var(--muted);
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}
.ranking-list b {
  font-size: 11px;
}
.ranking-list strong {
  color: var(--green);
  font-size: 14px;
}
.ranking-list small {
  color: var(--muted);
  font-size: 8px;
}
@media (max-width: 820px) {
  .leadership-ranking .ranking-limit {
    width: 100%;
  }
  .leadership-ranking .ranking-limit button {
    flex: 1;
    padding-inline: 7px;
  }
  .ranking-pyramid {
    gap: 7px;
  }
  .ranking-place.place-1 {
    min-height: 180px;
  }
  .ranking-place.place-2 {
    min-height: 155px;
  }
  .ranking-place.place-3 {
    min-height: 138px;
  }
  .ranking-place .leader-avatar {
    width: 42px;
    height: 42px;
  }
  .ranking-place > b {
    font-size: 10px;
  }
  .ranking-supporters strong {
    font-size: 24px;
  }
}
@media (max-width: 720px) {
  .ranking-pyramid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5px;
  }
  .ranking-place {
    padding: 8px;
  }
  .ranking-list {
    grid-template-columns: 1fr;
  }
  .ranking-list button {
    grid-template-columns: 28px auto 1fr auto;
  }
  .ranking-list small {
    display: none;
  }
}
@media (max-width: 480px) {
  .ranking-pyramid {
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 10px;
  }
  .ranking-place.place-1,
  .ranking-place.place-2,
  .ranking-place.place-3 {
    grid-column: 1;
    grid-row: auto;
    min-height: 132px;
  }
  .ranking-place.place-1 {
    order: 1;
  }
  .ranking-place.place-2 {
    order: 2;
  }
  .ranking-place.place-3 {
    order: 3;
  }
  .ranking-place {
    justify-content: center;
  }
  .ranking-place > b {
    min-height: auto;
  }
}

.leader-native-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
.leader-lookup-field,
.leader-lookup {
  width: 100%;
}

.public-scroll-top {
  position: fixed !important;
  right: clamp(14px, 2.4vw, 32px) !important;
  bottom: clamp(14px, 2.4vw, 30px) !important;
  z-index: 2147480000 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0, 18px, 0) scale(.92) !important;
}
.public-scroll-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}

/* =========================================================
   Portal público — auditoria visual de 31/07/2026
   Este bloco fica no fim do arquivo para não ser sobrescrito
   pelas regras históricas do tema.
   ========================================================= */
.public-page {
  --public-green: #166451;
  --public-green-hover: #22c55e;
  --public-ink: #123d37;
  --public-muted: #607a73;
  --public-line: #d8e7e1;
  --public-footer-bg: #092f29;
}

.public-page :is(
  .public-blog-header > div,
  .public-section-heading,
  .public-news-heading,
  .public-transparency > div:first-child
) {
  width: min(100%, 880px);
  margin-inline: auto;
  padding-inline: clamp(16px, 3vw, 32px);
  text-align: center;
}

.public-page :is(
  .public-blog-header h2,
  .public-section-heading h2,
  .public-news-heading h2,
  .public-transparency > div:first-child h2
) {
  margin-inline: auto;
  text-wrap: balance;
}

.public-page :is(
  .public-blog-header p,
  .public-news-heading p
) {
  max-width: 720px;
  margin-inline: auto;
  text-wrap: pretty;
}

.public-page .public-blog-header {
  display: block;
  width: min(100%, 1180px);
  margin: 0 auto clamp(28px, 4vw, 48px);
  padding: 0;
}

.public-page .public-blog-grid {
  width: min(100%, 1180px);
  margin-inline: auto;
}

.public-page .public-blog-post-body {
  min-width: 0;
}

.public-page .public-blog-post-body h3,
.public-page .public-blog-post-body p {
  overflow-wrap: anywhere;
}

.public-page .public-blog-video {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  background: #082f29;
  accent-color: var(--public-green-hover);
}

.public-page .public-biography-intro .public-section-heading {
  padding-inline: 0;
}

.public-page .public-biography-heading {
  grid-column: 1 / -1;
  width: min(100%, 920px);
  margin: 0 auto 8px;
  padding-inline: clamp(16px, 3vw, 42px);
  text-align: center;
}

.public-page .public-biography-heading h2 {
  max-width: 820px;
  margin: 12px auto 0;
}

.public-page .public-section-heading h2,
.public-page .public-biography-heading h2 {
  color: var(--public-ink) !important;
}

.public-page .public-biography-photo.public-cutout-stage {
  background:
    radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.98) 0 27%, transparent 60%),
    linear-gradient(180deg, #f8fbfa 0%, #e7efec 100%) !important;
}

.public-page .public-biography-intro > :not(.public-section-heading) {
  text-align: left;
}

.public-page .public-biography-photo.public-cutout-stage {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  border: 1px solid var(--public-line);
  border-radius: clamp(28px, 5vw, 64px);
  background:
    radial-gradient(circle at 50% 38%, rgba(255,255,255,.95), rgba(237,244,241,.92) 56%, #e6efeb 100%);
  box-shadow: 0 24px 56px rgba(18, 61, 55, .12);
}

.public-page .public-biography-photo.public-cutout-stage::before,
.public-page .public-biography-photo.public-cutout-stage::after,
.public-page .public-biography-photo .public-portrait-orbit {
  display: none !important;
}

.public-page .public-biography-photo.public-cutout-stage img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 20px 22px rgba(18, 61, 55, .15));
}

.public-page .public-biography-photo figcaption {
  display: none !important;
}

.public-page :is(
  .public-animated-cta,
  .public-primary-action,
  .public-secondary-action,
  .public-inline-cta,
  .public-blog-post-body a,
  .public-news-card a,
  .public-calendar-actions a,
  .public-footer a,
  .public-footer button
) {
  transition:
    background-color .2s ease,
    border-color .2s ease,
    color .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}

.public-page :is(
  .public-animated-cta,
  .public-primary-action,
  .public-secondary-action,
  .public-inline-cta,
  .public-blog-post-body a,
  .public-news-card a,
  .public-calendar-actions a
):hover {
  border-color: var(--public-green-hover) !important;
  background: var(--public-green-hover) !important;
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
}

.public-page :is(
  a,
  button,
  input[type="submit"]
):focus-visible {
  outline: 2px solid var(--public-green-hover);
  outline-offset: 3px;
}

.public-page .public-footer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) repeat(2, minmax(150px, .75fr));
  align-items: start !important;
  gap: clamp(28px, 4vw, 64px) !important;
  width: 100%;
  margin: 0 !important;
  padding: clamp(48px, 6vw, 78px) max(24px, calc((100vw - 1160px) / 2)) 30px !important;
  border-top: 1px solid rgba(196, 232, 218, .16);
  background: var(--public-footer-bg) !important;
  color: #d9ece5;
  text-align: left !important;
}

.public-page .public-footer :is(
  .public-footer-brand,
  .public-footer-column,
  .public-footer-cta
) {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  min-width: 0;
  text-align: left;
}

.public-page .public-footer .public-logo,
.public-page .public-footer-socials {
  justify-content: flex-start !important;
}

.public-page .public-footer-brand p,
.public-page .public-footer-cta p {
  max-width: 420px;
  margin: 14px 0 0 !important;
  color: #bed8cf;
  font-size: 13px;
  line-height: 1.7;
}

.public-page .public-footer-column strong,
.public-page .public-footer-cta strong {
  margin-bottom: 16px;
  color: #fff;
  font-size: 14px;
}

.public-page .public-footer-column a {
  display: inline-flex;
  margin: 0 0 10px;
  color: #d9ece5;
  text-decoration: none;
}

.public-page .public-footer-column a:hover,
.public-page .public-footer-socials a:hover {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.public-page .public-footer-cta {
  grid-column: 1 / -1;
  align-items: center !important;
  padding-top: 28px;
  border-top: 1px solid rgba(196, 232, 218, .15);
  text-align: center !important;
}

.public-page .public-footer-cta p {
  margin-inline: auto !important;
}

.public-page .public-footer-bottom {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-top: 24px;
  border-top: 1px solid rgba(196, 232, 218, .15);
  color: #9fc2b6;
  font-size: 11px;
}

.public-page .public-footer-bottom button {
  color: #d9ece5;
}

@media (max-width: 900px) {
  .public-page .public-footer {
    grid-template-columns: 1fr 1fr;
  }
  .public-page .public-footer-brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .public-page :is(
    .public-blog-header > div,
    .public-section-heading,
    .public-news-heading,
    .public-transparency > div:first-child
  ) {
    padding-inline: 18px;
  }

  .public-page .public-blog-redesign {
    padding-inline: 18px !important;
  }

  .public-page .public-blog-grid {
    grid-template-columns: 1fr;
  }

  .public-page .public-biography-photo.public-cutout-stage {
    width: min(100%, 390px);
    height: min(520px, 130vw);
    margin-inline: auto;
  }

  .public-page .public-biography-heading {
    grid-column: 1;
    margin-bottom: 0;
    padding-inline: 12px;
  }

  .public-page .public-footer {
    grid-template-columns: 1fr;
    gap: 30px !important;
    padding-inline: 22px !important;
    text-align: center !important;
  }

  .public-page .public-footer :is(
    .public-footer-brand,
    .public-footer-column,
    .public-footer-cta
  ) {
    grid-column: 1;
    align-items: center !important;
    text-align: center;
  }

  .public-page .public-footer .public-logo,
  .public-page .public-footer-socials {
    justify-content: center !important;
  }

  .public-page .public-footer-bottom {
    grid-column: 1;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .public-page *,
  .public-page *::before,
  .public-page *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Busca inteligente de liderança */
.leader-lookup-field {
  position: relative;
}
.leader-lookup {
  position: relative;
  display: block;
  min-width: 0;
}
.leader-lookup-control {
  position: relative;
  width: 100%;
  min-width: 0;
}
.leader-lookup input[data-leader-search] {
  width: 100%;
  padding-right: 48px;
}
.leader-lookup-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  background: rgba(18, 61, 55, 0.08);
  color: #123d37;
  cursor: pointer;
  transform: translateY(-50%);
  transition: all 0.22s ease;
}
.leader-lookup-toggle:hover {
  background: rgba(18, 61, 55, 0.16);
  transform: translateY(-50%) scale(1.04);
}
.leader-lookup.is-open .leader-lookup-toggle span {
  display: inline-block;
  transform: rotate(180deg);
}
.leader-lookup-panel {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-top: 8px;
  display: none;
  max-height: 280px;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 8px;
  border: 1px solid rgba(18, 61, 55, 0.16);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 45px rgba(6, 45, 38, 0.18);
}
.leader-lookup.is-open .leader-lookup-panel {
  display: grid;
  gap: 6px;
}
.leader-lookup-option {
  display: grid;
  gap: 3px;
  width: 100%;
  padding: 11px 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #092f2a;
  text-align: left;
  cursor: pointer;
  transition: all 0.18s ease;
}
.leader-lookup-option b {
  font-size: 0.95rem;
}
.leader-lookup-option small {
  color: #657b76;
  font-size: 0.78rem;
}
.leader-lookup-option:hover,
.leader-lookup-option:focus-visible {
  background: rgba(18, 61, 55, 0.08);
  outline: none;
}
.leader-lookup-empty {
  color: #1a6b5d;
  background: rgba(30, 141, 116, 0.08);
}
.leader-lookup-no-results {
  padding: 14px 12px;
  color: #657b76;
  font-size: 0.88rem;
}

/* Base de robustez visual: ícones seguros, botões responsivos e alvos de toque consistentes. */
.nav-icon {
  width: 18px;
  min-width: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: 14px;
  line-height: 1;
}
.sidebar nav button {
  gap: 10px;
}
button,
.primary,
.ghost,
.danger,
.danger-outline,
.transfer-button,
.link-button {
  touch-action: manipulation;
}
.header-actions,
.modal-actions,
.person-actions,
.profile-actions,
.entity-actions,
.message-actions,
.import-filters,
.group-actions,
.wa-main-actions,
.wa-groups-controls {
  flex-wrap: wrap;
}
@media (max-width: 720px) {
  .header-actions {
    width: 100%;
    justify-content: flex-start;
  }
  .header-actions > button {
    flex: 1 1 140px;
    min-width: 0;
  }
  .modal-actions,
  .supporter-form-actions {
    gap: 10px;
  }
  .modal-actions button,
  .supporter-form-actions button {
    min-height: 44px;
  }
  .sidebar nav button {
    min-height: 44px;
  }
}

/* WhatsApp > Grupos: overrides finais para evitar desalinhamento/duplicidade */
.wa-groups-panel .wa-groups-controls {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto;
  gap: 12px;
  align-items: end;
  min-width: min(680px, 100%);
}
.wa-groups-panel .wa-groups-controls label,
.wa-groups-panel .wa-groups-toolbar label {
  min-width: 0;
}
.wa-groups-panel .wa-groups-controls select,
.wa-groups-panel .wa-groups-toolbar input,
.wa-groups-panel .wa-groups-toolbar select {
  width: 100%;
  min-height: 46px;
  border-radius: 14px;
}
.wa-groups-panel .wa-groups-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(160px, 220px);
  gap: 12px;
  align-items: end;
  margin: 16px 0;
}
.wa-groups-panel .wa-groups-list {
  display: grid;
  gap: 10px;
  max-height: min(68vh, 760px);
  overflow: auto;
  padding: 2px 8px 2px 2px;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.wa-groups-panel .wa-groups-row {
  display: grid;
  grid-template-columns: auto 46px minmax(220px, 1fr) minmax(170px, auto) minmax(150px, auto) auto auto auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(6, 78, 59, .12);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(6, 78, 59, .04);
}
.wa-groups-panel .wa-groups-row > div {
  min-width: 0;
}
.wa-groups-panel .wa-groups-row b,
.wa-groups-panel .wa-groups-row span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.wa-groups-panel .wa-groups-row .ghost,
.wa-groups-panel .wa-groups-controls .ghost,
.wa-groups-panel .wa-groups-controls .primary {
  justify-content: center;
  min-height: 42px;
  white-space: nowrap;
}
@media (max-width: 1180px) {
  .wa-groups-panel .wa-groups-controls {
    grid-template-columns: 1fr 1fr;
    min-width: 0;
  }
  .wa-groups-panel .wa-groups-row {
    grid-template-columns: auto 44px minmax(0, 1fr) auto;
  }
  .wa-groups-panel .wa-groups-row .wa-mini,
  .wa-groups-panel .wa-groups-row .group-status {
    grid-column: 3 / -1;
  }
}
@media (max-width: 760px) {
  .wa-groups-panel .wa-groups-controls,
  .wa-groups-panel .wa-groups-toolbar {
    grid-template-columns: 1fr;
    min-width: 0;
  }
  .wa-groups-panel .wa-groups-list {
    max-height: 65dvh;
  }
  .wa-groups-panel .wa-groups-row {
    grid-template-columns: auto 1fr;
    align-items: start;
  }
  .wa-groups-panel .wa-groups-row .mini-avatar {
    grid-column: 1;
  }
  .wa-groups-panel .wa-groups-row > div,
  .wa-groups-panel .wa-groups-row .wa-mini,
  .wa-groups-panel .wa-groups-row .group-status,
  .wa-groups-panel .wa-groups-row .ghost {
    grid-column: 1 / -1;
    width: 100%;
  }
}

/* Auditoria final — camadas críticas e responsividade
   Mantém notificações sempre visíveis, sem ficar atrás de modais/painéis,
   e evita que a rolagem mobile trave fora de diálogos abertos. */
html,
body {
  min-height: 100%;
}
body {
  overflow-x: hidden;
  overflow-y: auto;
}
body.modal-open,
body.dialog-open {
  overflow: hidden;
}
#toast,
#toast.actionable {
  position: fixed !important;
  top: auto !important;
  left: auto !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 2147483647 !important;
  width: min(440px, calc(100vw - 44px)) !important;
  max-width: calc(100vw - 44px) !important;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(calc(100% + 48px), 0, 0) !important;
  transition: transform .28s ease, opacity .28s ease;
}
#toast.show,
#toast.actionable.show {
  opacity: 1 !important;
  pointer-events: auto;
  transform: translate3d(0, 0, 0) !important;
}
#toast .toast-close,
#toast.actionable .toast-close {
  cursor: pointer;
}
dialog,
.modal,
.profile-modal,
.public-modal {
  max-width: min(1180px, calc(100vw - 32px));
}
@media (max-width: 760px) {
  body:not(.modal-open):not(.dialog-open) {
    touch-action: pan-y;
  }
  #toast,
  #toast.actionable {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    width: auto !important;
    max-width: none !important;
    transform: translate3d(0, calc(100% + 28px), 0) !important;
  }
  #toast.show,
  #toast.actionable.show {
    transform: translate3d(0, 0, 0) !important;
  }
  .workspace,
  .public-page,
  .public-main,
  .content,
  #content {
    min-width: 0;
    overflow-x: hidden;
  }
  .card,
  .leader-card,
  .leader-group,
  .modal-body,
  .public-section {
    max-width: 100%;
  }
}

/* Override final da biografia: precisa permanecer no fim do arquivo. */
@media (min-width: 901px) {
  .public-page .public-biography {
    grid-template-columns: minmax(390px, 500px) minmax(440px, 570px) !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px clamp(38px, 4vw, 62px) !important;
    max-width: 1160px !important;
    padding: 34px 28px 48px !important;
  }
  .public-page .public-biography-photo.public-cutout-stage {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    width: 100% !important;
    height: clamp(470px, 43vw, 570px) !important;
    margin: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .public-page .public-biography-photo.public-cutout-stage::before,
  .public-page .public-biography-photo.public-cutout-stage::after,
  .public-page .public-biography-photo .public-portrait-orbit,
  .public-page .public-biography-photo figcaption {
    display: none !important;
  }
  .public-page .public-biography-photo.public-cutout-stage img {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
    filter: drop-shadow(0 22px 18px rgba(18, 61, 55, .16)) !important;
  }
  .public-page .public-biography-heading {
    margin: 0 0 22px !important;
    padding: 0 !important;
    text-align: left !important;
  }
  .public-page .public-biography-heading h2 {
    margin: 10px 0 0 !important;
    font-size: clamp(36px, 3vw, 48px) !important;
    line-height: 1.08 !important;
  }
  .public-page .public-biography-intro {
    align-self: center !important;
    max-width: 570px !important;
  }
  .public-page .public-biography-intro blockquote {
    margin-top: 0 !important;
  }
  .public-page .public-biography-story {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
  }
  .public-page .public-biography-story .public-story-feature {
    display: grid !important;
    grid-template-columns: minmax(290px, 390px) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: clamp(30px, 4vw, 58px) !important;
    min-height: 330px !important;
    padding: 24px clamp(28px, 3.5vw, 48px) !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 61, 55, .12) !important;
    border-radius: 28px !important;
    background:
      radial-gradient(circle at 14% 18%, rgba(43, 153, 113, .14), transparent 38%),
      linear-gradient(135deg, #f8fbfa, #edf7f3) !important;
  }
  .public-page .public-story-feature figure {
    height: 330px !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
  }
  .public-page .public-story-feature figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
    filter: drop-shadow(0 18px 16px rgba(18, 61, 55, .16)) !important;
  }
}

@media (max-width: 900px) {
  .public-page .public-biography-photo.public-cutout-stage {
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .public-page .public-biography-photo.public-cutout-stage::before,
  .public-page .public-biography-photo.public-cutout-stage::after,
  .public-page .public-biography-photo .public-portrait-orbit,
  .public-page .public-biography-photo figcaption {
    display: none !important;
  }
  .public-page .public-biography-photo.public-cutout-stage img {
    object-fit: contain !important;
    object-position: center bottom !important;
    background: transparent !important;
  }
}
/* Ajuste final do bloco Historia e raizes */
.public-page .public-biography-story .public-story-feature.public-history-feature {
  grid-template-columns: minmax(420px, .98fr) minmax(420px, 1.02fr) !important;
  gap: clamp(34px, 5vw, 76px) !important;
  align-items: center !important;
  max-width: 1180px !important;
  margin: 52px auto 22px !important;
  padding: clamp(26px, 3vw, 44px) !important;
  border: 1px solid rgba(18, 61, 55, .16) !important;
  border-radius: 34px !important;
  background:
    radial-gradient(circle at 16% 12%, rgba(184, 255, 99, .13), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(238,248,243,.92)) !important;
  box-shadow: 0 28px 70px rgba(18, 61, 55, .10) !important;
}
.public-page .public-history-carousel {
  height: clamp(470px, 43vw, 610px) !important;
  min-height: 0 !important;
  border-radius: 28px !important;
  background: #123d37 !important;
  box-shadow: 0 26px 55px rgba(18, 61, 55, .20) !important;
}
.public-page .public-biography-story .public-history-carousel figure[data-history-slide],
.public-page .public-biography-story .public-history-carousel figure.is-active,
.public-page .public-history-carousel figure {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  display: block !important;
}
.public-page .public-biography-story .public-history-carousel figure[data-history-slide] img,
.public-page .public-biography-story .public-history-carousel figure.is-active img,
html body .public-page .public-history-carousel img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.public-page .public-history-carousel figure[data-history-family] img {
  object-position: center 28% !important;
  filter: saturate(1.04) contrast(1.03) !important;
}
.public-page .public-history-carousel figure[data-history-raizes] {
  background:
    radial-gradient(circle at 50% 18%, rgba(183,255,99,.18), transparent 42%),
    linear-gradient(180deg, #1b564c 0%, #123d37 58%, #0d2f2a 100%) !important;
}
.public-page .public-history-carousel figure[data-history-raizes] img {
  object-fit: contain !important;
  object-position: center 62% !important;
  padding: 4% 6% 0 !important;
  filter: drop-shadow(0 18px 34px rgba(0,0,0,.28)) !important;
}
.public-page .public-history-carousel figure[data-history-politica] {
  background: #0b1f4d !important;
}
.public-page .public-history-carousel figure[data-history-politica] img {
  object-fit: contain !important;
  object-position: center center !important;
}
.public-page .public-history-carousel figure[data-history-social] {
  background:
    radial-gradient(circle at 50% 40%, rgba(183,255,99,.10), transparent 46%),
    linear-gradient(180deg, #1a564c 0%, #123d37 55%, #0e322d 100%) !important;
}
.public-page .public-history-carousel figure[data-history-social] img {
  object-fit: contain !important;
  object-position: center 44% !important;
  padding: 8% 10% 16% !important;
  background: transparent !important;
  filter: drop-shadow(0 18px 36px rgba(0,0,0,.28)) !important;
}
.public-page .public-history-carousel figcaption {
  font-size: 13px !important;
  letter-spacing: .02em !important;
}
.public-page .public-history-panels {
  position: relative !important;
  min-height: clamp(240px, 28vw, 340px) !important;
}
.public-page .public-history-panels [data-history-panel] {
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  width: 100% !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(12px) !important;
  transition: opacity .45s ease, transform .45s ease, visibility .45s ease !important;
  pointer-events: none !important;
}
.public-page .public-history-panels [data-history-panel].is-active {
  position: relative !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}
.public-page .public-history-feature-copy {
  display: grid !important;
  grid-template-columns: 54px 1fr !important;
  gap: 22px !important;
  align-items: start !important;
  padding: 0 !important;
}
.public-page .public-history-feature-copy > span {
  width: 48px !important;
  height: 48px !important;
  margin-top: 5px !important;
  font-size: 12px !important;
  background: #e2f4ed !important;
  color: #17745d !important;
}
.public-page .public-history-feature-copy h3 {
  margin: 0 0 18px !important;
  color: #123d37 !important;
  font-size: clamp(34px, 4vw, 58px) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
}
.public-page .public-history-feature-copy p {
  max-width: 620px !important;
  color: #526e66 !important;
  font-size: clamp(15px, 1.08vw, 18px) !important;
  line-height: 1.82 !important;
}
.public-page .public-history-feature-copy p + p {
  margin-top: 18px !important;
  padding: 18px 20px !important;
  border-left: 4px solid #17745d !important;
  border-radius: 0 16px 16px 0 !important;
  background: rgba(226, 244, 237, .78) !important;
  color: #214f43 !important;
  font-weight: 700 !important;
}
/* Carrossel: foto + texto, controles fora da imagem, autoplay */
.public-page .public-biography-story .public-story-feature.public-history-feature {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  max-width: 1220px !important;
  padding: clamp(22px, 2.4vw, 34px) !important;
}
.public-page .public-history-main {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.12fr) minmax(320px, .98fr) !important;
  gap: clamp(24px, 3.5vw, 48px) !important;
  align-items: center !important;
}
.public-page .public-history-carousel {
  position: relative !important;
  height: clamp(480px, 44vw, 620px) !important;
  overflow: hidden !important;
}
.public-page .public-history-progress {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 6 !important;
  height: 4px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.22) !important;
  pointer-events: none !important;
}
.public-page .public-history-progress i {
  display: block !important;
  width: 0% !important;
  height: 100% !important;
  max-width: 100% !important;
  transform: none !important;
  transition: none !important;
  background: linear-gradient(90deg, #b7ff63, #7fe3b0) !important;
}
.public-page .public-history-dots {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 !important;
  background: transparent !important;
  backdrop-filter: none !important;
}
.public-page .public-history-dots button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 42px !important;
  width: auto !important;
  height: auto !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(18, 61, 55, .14) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #33584f !important;
  box-shadow: 0 8px 20px rgba(18, 61, 55, .05) !important;
  font: 800 11px/1 Manrope, system-ui, sans-serif !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease !important;
}
.public-page .public-history-dots button span {
  display: inline-grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  background: #e2f4ed !important;
  color: #17745d !important;
  font-size: 10px !important;
}
.public-page .public-history-dots button b {
  font: inherit !important;
  font-weight: 800 !important;
}
.public-page .public-history-dots button.is-active {
  width: auto !important;
  background: #123d37 !important;
  border-color: #123d37 !important;
  color: #f4fff8 !important;
  transform: translateY(-1px) !important;
}
.public-page .public-history-dots button.is-active span {
  background: #b7ff63 !important;
  color: #123d37 !important;
}
.public-page .public-history-panels {
  min-height: clamp(260px, 30vw, 360px) !important;
}

/* Centraliza "Por que Sulielma Barros?" */
.public-page .public-biography-reasons,
html body .public-page .public-biography-reasons {
  grid-column: 1 / -1 !important;
  width: min(1220px, 100%) !important;
  max-width: 1220px !important;
  margin: 28px auto 0 !important;
  padding: 34px clamp(18px, 3vw, 40px) !important;
  text-align: center !important;
  border: 1px solid rgba(18, 61, 55, .14) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(184, 255, 99, .12), transparent 42%),
    #f2f9f5 !important;
  box-sizing: border-box !important;
}
.public-page .public-biography-reasons .public-section-kicker {
  display: inline-block !important;
  margin: 0 auto !important;
}
.public-page .public-biography-reasons > div {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 22px !important;
  text-align: left !important;
}
.public-page .public-biography-reasons p {
  min-height: 100% !important;
  padding: 22px 20px !important;
  border: 1px solid rgba(18, 61, 55, .08) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(18, 61, 55, .05) !important;
}
.public-page .public-biography-reasons b {
  color: #123d37 !important;
  font: 800 15px/1.3 Manrope, system-ui, sans-serif !important;
}
.public-page .public-biography-reasons span:not(.public-section-kicker) {
  margin-top: 8px !important;
  color: #5d766e !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

@media (max-width: 980px) {
  .public-page .public-biography-story .public-story-feature.public-history-feature {
    max-width: 720px !important;
    margin: 28px auto 18px !important;
    padding: 14px !important;
    gap: 14px !important;
    border-radius: 26px !important;
  }
  .public-page .public-history-main {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .public-page .public-history-carousel {
    height: clamp(260px, 68vw, 390px) !important;
    border-radius: 22px !important;
  }
  .public-page .public-history-feature.is-mobile-reveal {
    animation: publicHistoryMobileIn .7s cubic-bezier(.2,.7,.2,1) both;
  }
  .public-page .public-history-panels [data-history-panel].is-active {
    animation: publicHistoryPanelIn .55s cubic-bezier(.2,.7,.2,1) both;
  }
  .public-page .public-history-dots {
    gap: 8px !important;
  }
  .public-page .public-history-dots button {
    min-height: 36px !important;
    padding: 7px 10px !important;
  }
  .public-page .public-history-dots button b {
    display: none !important;
  }
  .public-page .public-history-panels {
    min-height: 0 !important;
  }
  .public-page .public-history-feature-copy {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 12px !important;
    padding: 6px 4px 2px !important;
    text-align: center !important;
  }
  .public-page .public-history-feature-copy > span {
    display: grid !important;
    place-items: center !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 auto !important;
  }
  .public-page .public-history-feature-copy > div {
    width: 100% !important;
    max-width: 36rem !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  .public-page .public-history-feature-copy h3 {
    font-size: clamp(28px, 8vw, 40px) !important;
    margin: 0 0 12px !important;
    text-align: center !important;
  }
  .public-page .public-history-feature-copy p {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 34rem !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    text-align: center !important;
  }
  .public-page .public-history-feature-copy p + p {
    border-left: 0 !important;
    border-top: 4px solid #17745d !important;
    border-radius: 16px !important;
    text-align: center !important;
  }
  .public-page .public-biography-reasons,
  html body .public-page .public-biography-reasons {
    width: 100% !important;
    max-width: 720px !important;
    margin: 18px auto 0 !important;
    padding: 22px 16px !important;
  }
  .public-page .public-biography-reasons > div {
    grid-template-columns: 1fr !important;
  }
}

@keyframes publicHistoryMobileIn {
  from { opacity: 0; transform: translateY(28px) scale(.985); }
  to { opacity: 1; transform: none; }
}
@keyframes publicHistoryPanelIn {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .public-page .public-history-feature.is-mobile-reveal,
  .public-page .public-history-panels [data-history-panel].is-active {
    animation: none !important;
  }
}

/* Rodapé público — layout limpo em 4 colunas */
html body .public-page.public-landing > .public-footer,
html body .public-landing > .public-footer,
html body .public-landing .public-footer {
  display: grid !important;
  grid-template-columns: minmax(240px, 1.35fr) repeat(2, minmax(140px, .7fr)) minmax(220px, 1fr) !important;
  align-items: start !important;
  column-gap: clamp(28px, 4vw, 56px) !important;
  row-gap: 36px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(56px, 7vw, 88px) max(24px, calc((100vw - 1180px) / 2)) 28px !important;
  text-align: left !important;
  color: #d7ebe3 !important;
  border-top: 1px solid rgba(183, 255, 99, .14) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(183, 255, 99, .12), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(47, 160, 120, .16), transparent 28%),
    linear-gradient(160deg, #0a352e 0%, #123d37 52%, #071f1b 100%) !important;
}

html body .public-landing .public-footer :is(
  .public-footer-brand,
  .public-footer-column,
  .public-footer-cta
) {
  display: flex !important;
  align-items: flex-start !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-width: 0 !important;
  grid-column: auto !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  text-align: left !important;
}

html body .public-landing .public-footer .public-logo {
  justify-content: flex-start !important;
  margin-bottom: 14px !important;
}

html body .public-landing .public-footer-brand p,
html body .public-landing .public-footer-cta p {
  max-width: 320px !important;
  margin: 0 0 18px !important;
  color: #b9d6cc !important;
  font: 500 13.5px/1.7 Manrope, system-ui, sans-serif !important;
}

html body .public-landing .public-footer-column strong,
html body .public-landing .public-footer-cta strong {
  display: block !important;
  margin: 0 0 16px !important;
  color: #fff !important;
  font: 800 12px/1.2 Manrope, system-ui, sans-serif !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

html body .public-landing .public-footer-column a {
  display: inline-flex !important;
  margin: 0 0 11px !important;
  color: #cfe4db !important;
  font: 600 14px/1.35 Manrope, system-ui, sans-serif !important;
  text-decoration: none !important;
  transition: color .2s ease, transform .2s ease !important;
}

html body .public-landing .public-footer-column a:hover {
  color: #b7ff63 !important;
  transform: translateX(4px) !important;
  text-decoration: none !important;
}

html body .public-landing .public-footer-socials {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  margin: 0 !important;
}

html body .public-landing .public-footer-socials a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(215, 238, 231, .28) !important;
  border-radius: 999px !important;
  color: #f2fffa !important;
  background: rgba(255, 255, 255, .06) !important;
  font: 700 11px/1 Manrope, system-ui, sans-serif !important;
  letter-spacing: .02em !important;
  text-decoration: none !important;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease !important;
}

html body .public-landing .public-footer-socials a:hover {
  transform: translateY(-2px) !important;
  border-color: #b7ff63 !important;
  background: rgba(183, 255, 99, .14) !important;
  color: #fff !important;
}

html body .public-landing .public-footer-cta {
  justify-content: flex-start !important;
  padding: 22px 22px 20px !important;
  border: 1px solid rgba(215, 238, 231, .14) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .05) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

html body .public-landing .public-footer-cta p {
  margin-bottom: 18px !important;
}

html body .public-landing .public-footer-cta-button,
html body .public-landing .public-footer-cta button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 48px !important;
  margin-top: 0 !important;
  padding: 8px 10px 8px 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #123d37 !important;
  background: #b7ff63 !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .18) !important;
  font-weight: 800 !important;
}

html body .public-landing .public-footer-cta-button:hover,
html body .public-landing .public-footer-cta button:hover {
  background: #d4ff8f !important;
  transform: translateY(-2px) !important;
}

html body .public-landing .public-footer-bottom {
  grid-column: 1 / -1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  width: 100% !important;
  margin-top: 8px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(215, 238, 231, .14) !important;
  color: #9fc4b7 !important;
  text-align: left !important;
  font: 500 12px/1.4 Manrope, system-ui, sans-serif !important;
}

html body .public-landing .public-footer-bottom button {
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #b7ff63 !important;
  font: 800 12px/1.4 Manrope, system-ui, sans-serif !important;
}

html body .public-landing .public-footer-bottom button:hover {
  color: #fff !important;
}

@media (max-width: 980px) {
  html body .public-landing .public-footer {
    grid-template-columns: 1fr 1fr !important;
  }
  html body .public-landing .public-footer-brand {
    grid-column: 1 / -1 !important;
  }
  html body .public-landing .public-footer-cta {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 640px) {
  html body .public-landing .public-footer {
    grid-template-columns: 1fr !important;
    padding: 52px 20px 26px !important;
    text-align: center !important;
  }
  html body .public-landing .public-footer :is(
    .public-footer-brand,
    .public-footer-column,
    .public-footer-cta
  ) {
    align-items: center !important;
    text-align: center !important;
  }
  html body .public-landing .public-footer .public-logo,
  html body .public-landing .public-footer-socials {
    justify-content: center !important;
  }
  html body .public-landing .public-footer-brand p,
  html body .public-landing .public-footer-cta p {
    margin-inline: auto !important;
  }
  html body .public-landing .public-footer-column a:hover {
    transform: none !important;
  }
  html body .public-landing .public-footer-bottom {
    justify-content: center !important;
    text-align: center !important;
  }
}

/* Logo: S da Sulielma por padrão; M do Meu Gabinete no hover */
html body .public-landing .public-logo-mark {
  position: relative !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
}
html body .public-landing .public-logo-mark-s,
html body .public-landing .public-logo-mark-m {
  grid-area: 1 / 1 !important;
  width: 40px !important;
  height: 40px !important;
  transition: opacity .28s ease, transform .28s cubic-bezier(.2,.75,.2,1), filter .28s ease !important;
}
html body .public-landing .public-logo-mark-s {
  display: block !important;
  object-fit: contain !important;
  opacity: 1 !important;
  transform: scale(1) !important;
}
html body .public-landing .public-logo-mark-m {
  opacity: 0 !important;
  transform: scale(.86) rotate(-6deg) !important;
  pointer-events: none !important;
}
html body .public-landing .public-logo:hover .public-logo-mark-s,
html body .public-landing .public-logo:focus-visible .public-logo-mark-s {
  opacity: 0 !important;
  transform: scale(.86) rotate(6deg) !important;
}
html body .public-landing .public-logo:hover .public-logo-mark-m,
html body .public-landing .public-logo:focus-visible .public-logo-mark-m {
  opacity: 1 !important;
  transform: scale(1) rotate(0deg) !important;
}
html body .public-landing .public-footer .public-logo-mark-s {
  filter: brightness(1.15) saturate(1.05);
}
html body .public-landing .public-footer .public-logo:hover .public-logo-mark-m,
html body .public-landing .public-footer .public-logo:focus-visible .public-logo-mark-m {
  filter: drop-shadow(0 0 10px rgba(183,255,99,.35));
}

/* Menu do header: hover com cor e animação
   (usa width, não scaleX — no Windows com “reduzir movimento”,
   transform:none deixava todas as linhas aparentes/congeladas) */
html body .public-landing .public-header nav a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 2px 8px !important;
  color: #3f5f57 !important;
  font: 700 12px/1 Manrope, system-ui, sans-serif !important;
  letter-spacing: .01em !important;
  text-decoration: none !important;
  transition: color .22s ease, transform .22s ease !important;
}

html body .public-landing .public-header nav a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 0 !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #17745d, #b7ff63) !important;
  transform: none !important;
  transition: width .28s cubic-bezier(.2,.75,.2,1) !important;
}

html body .public-landing .public-header nav a:hover,
html body .public-landing .public-header nav a:focus-visible {
  color: #0f6b56 !important;
  transform: translateY(-2px) !important;
}

html body .public-landing .public-header nav a:hover::after,
html body .public-landing .public-header nav a:focus-visible::after,
html body .public-landing .public-header nav a.is-active::after {
  width: 100% !important;
}

html body .public-landing .public-header nav a.is-active {
  color: #0f6b56 !important;
}

/* Portal público: mantém animações decorativas no PC mesmo com
   “Mostrar animações” desativado no Windows */
@media (prefers-reduced-motion: reduce) {
  html body .public-landing .public-header nav a {
    transition: color .22s ease, transform .22s ease !important;
  }
  html body .public-landing .public-header nav a::after {
    transition: width .28s cubic-bezier(.2,.75,.2,1) !important;
    transform: none !important;
    width: 0 !important;
  }
  html body .public-landing .public-header nav a:hover::after,
  html body .public-landing .public-header nav a:focus-visible::after,
  html body .public-landing .public-header nav a.is-active::after {
    width: 100% !important;
  }
  html body .public-landing .public-blog-redesign > .public-blog-side-band.public-green-band {
    animation: publicBlogBandGlow 3.6s ease-in-out infinite !important;
  }
  html body .public-landing .public-blog-redesign > .public-blog-side-band .public-green-band-grid {
    animation: publicBlogBandDrift 10s ease-in-out infinite alternate !important;
  }
  html body .public-landing .public-blog-redesign > .public-blog-side-band .public-green-band-grid span {
    animation:
      publicBandCellIn .7s ease-out both,
      publicBlogBandPulse 3.8s ease-in-out infinite !important;
  }
  html body .public-landing .public-blog-band-shine {
    animation: publicBlogBandShine 2.8s ease-in-out infinite !important;
  }
  html body .public-landing .public-blog-redesign > .public-blog-side-band .public-green-band-noise {
    animation: publicBlogBandNoise 8s linear infinite !important;
  }
  html body .public-landing [data-scroll-reveal] {
    opacity: 0 !important;
    transform: translateY(40px) !important;
    transition:
      opacity .85s cubic-bezier(.22,.7,.2,1) var(--reveal-delay, 0ms),
      transform .85s cubic-bezier(.22,.7,.2,1) var(--reveal-delay, 0ms) !important;
  }
  html body .public-landing [data-scroll-reveal].is-visible {
    opacity: 1 !important;
    transform: none !important;
  }
}

@media (min-width: 981px) {
  html body .public-landing .login-preferences {
    top: 88px !important;
    right: 16px !important;
  }
}

/* Ícones sociais neutros; a cor da rede aparece somente no hover. */
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(1) {
  color: #0f7a4d !important;
  background: rgba(255, 255, 255, .82) !important;
  border-color: rgba(255, 255, 255, .82) !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(2) {
  color: #0f7a4d !important;
  background: rgba(255, 255, 255, .82) !important;
  border-color: rgba(255, 255, 255, .82) !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(3) {
  color: #0f7a4d !important;
  background: rgba(255, 255, 255, .82) !important;
  border-color: rgba(255, 255, 255, .82) !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(1):hover {
  color: #fff !important;
  background: linear-gradient(135deg, #6f3cc3 5%, #d8397c 48%, #f5a52f 100%) !important;
  filter: none !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(2):hover {
  color: #fff !important;
  background: #111 !important;
  filter: none !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:nth-child(3):hover {
  color: #fff !important;
  background: #ff0033 !important;
  filter: none !important;
}
html body .public-landing .public-hero-campaign .public-photo-socials a:hover {
  filter: brightness(1.08) saturate(1.08) !important;
}

/* Barra de progresso do desenvolvedor: marcos interativos ao passar o mouse. */
html body .developer-runner-track {
  overflow: visible;
  cursor: crosshair;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
html body .developer-runner-track:hover {
  border-color: #63b996;
  box-shadow: inset 0 1px #fff, 0 12px 32px rgba(18, 89, 70, .18), 0 0 0 4px rgba(86, 185, 148, .12);
  transform: translateY(-2px);
}
html body .developer-runner-track:hover .developer-flight-fill { filter: brightness(1.12) saturate(1.12); }
.developer-progress-milestones { position: absolute; z-index: 7; inset: 0; pointer-events: none; }
.developer-progress-milestones > span {
  position: absolute; left: var(--milestone); top: 50%; display: block; width: 14px; height: 14px;
  border: 3px solid #f7fcfa; border-radius: 50%; background: #2f9e78;
  box-shadow: 0 0 0 1px #82c5ab, 0 3px 8px rgba(15, 73, 57, .2);
  cursor: help; pointer-events: auto; transform: translate(-50%, -50%);
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease;
}
.developer-progress-milestones > span b,
.developer-progress-milestones > span i { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.developer-progress-milestones > span::after {
  position: absolute; left: 50%; bottom: calc(100% + 10px); min-width: max-content; padding: 8px 10px;
  border: 1px solid rgba(255, 255, 255, .18); border-radius: 9px; background: #123e33; color: #fff;
  font: 700 10px/1.25 Manrope, sans-serif; box-shadow: 0 9px 22px rgba(11, 52, 42, .22);
  opacity: 0; pointer-events: none; transform: translate(-50%, 5px); transition: opacity .2s ease, transform .2s ease;
}
.developer-progress-milestones > span:nth-child(1)::after { content: "Web - Interfaces e sistemas"; }
.developer-progress-milestones > span:nth-child(2)::after { content: "Automacao - APIs e processos"; }
.developer-progress-milestones > span:nth-child(3)::after { content: "IA - Fluxos inteligentes"; }
.developer-progress-milestones > span:nth-child(4)::after { content: "Seguranca - Dados protegidos"; }
.developer-progress-milestones > span:hover,
.developer-progress-milestones > span:focus-visible {
  background: #b7ff63; box-shadow: 0 0 0 4px rgba(183, 255, 99, .24), 0 5px 14px rgba(15, 73, 57, .28);
  outline: none; transform: translate(-50%, -50%) scale(1.45);
}
.developer-progress-milestones > span:hover::after,
.developer-progress-milestones > span:focus-visible::after { opacity: 1; transform: translate(-50%, 0); }
.developer-progress-milestones > span:last-child::after { left: auto; right: 0; transform: translateY(5px); }
.developer-progress-milestones > span:last-child:hover::after,
.developer-progress-milestones > span:last-child:focus-visible::after { transform: translateY(0); }
@media (max-width: 760px) { .developer-progress-milestones > span::after { font-size: 9px; } }
@media (prefers-reduced-motion: reduce) {
  html body .developer-runner-track { transition: none; }
  html body .developer-runner-track:hover { transform: none; }
  .developer-progress-milestones > span, .developer-progress-milestones > span::after { transition: none; }
}

/* Versão final: barra de progresso simples, sem personagem ou corrida. */
html body .developer-runner-track {
  height: 16px;
  overflow: visible;
  border: 0;
  border-radius: 999px;
  background: #e5f0eb;
  box-shadow: inset 0 1px 3px rgba(18, 89, 70, .14), 0 5px 16px rgba(18, 89, 70, .08);
  transform: none;
}
html body .developer-runner-track:hover { transform: translateY(-1px); }
html body .developer-runner-track::before { display: none; }
html body .developer-runner-track .developer-flight-fill {
  top: 0;
  bottom: auto;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #176b55, #56b994);
  box-shadow: 0 2px 7px rgba(23, 107, 85, .24);
}
.developer-progress-milestones { inset: -2px 0; }
.developer-progress-milestones > span { width: 12px; height: 12px; }
@media (max-width: 760px) { html body .developer-runner-track { height: 14px; } }

html body .developer-runner-track:hover .developer-flight-fill {
  filter: brightness(1.12) saturate(1.08);
  box-shadow: 0 0 0 2px rgba(86, 185, 148, .14), 0 3px 12px rgba(23, 107, 85, .34);
}
html body .developer-runner-track:hover .developer-progress-milestones > span {
  box-shadow: 0 0 0 2px rgba(86, 185, 148, .2), 0 3px 8px rgba(15, 73, 57, .22);
}
html body .developer-runner-track:hover + span .developer-progress-value {
  color: #176b55;
  transform: scale(1.08);
}
.developer-progress-value { display: inline-block; transition: color .2s ease, transform .2s ease; }

/* Ilustração estática: dois stickers de bonecos de palito em confronto. */
html body .developer-progress .developer-flight { display: none !important; }
html body .developer-progress .developer-runner-track { display: none !important; }
html body .developer-fight-scene {
  position: relative;
  min-height: 190px;
  margin: 4px 0 24px;
  overflow: hidden;
  border: 1px solid #cbe4da;
  border-radius: 18px;
  background: linear-gradient(145deg, #f8fcfa, #e8f5ef);
}
.developer-fight-scene svg { display: block; width: 100%; height: 190px; }
.developer-fight-scene .fight-ground { fill: none; stroke: #b7d9cb; stroke-width: 4; stroke-linecap: round; }
.developer-fight-scene .stick-figure { fill: none; stroke-width: 7; stroke-linecap: round; stroke-linejoin: round; }
.developer-fight-scene .stick-figure circle { fill: #fff; }
.developer-fight-scene .stick-figure-a { stroke: #176b55; }
.developer-fight-scene .stick-figure-b { stroke: #8b5a3c; }
.developer-fight-scene .stick-figure .fist { fill: currentColor; stroke-width: 4; }
.developer-fight-scene .fight-spark { fill: #d6a72e; stroke: #d6a72e; stroke-width: 4; stroke-linecap: round; }
.developer-sticker {
  position: absolute;
  z-index: 2;
  top: 16px;
  padding: 6px 10px;
  border: 2px solid currentColor;
  border-radius: 8px;
  background: #fff;
  color: #176b55;
  font: 800 9px/1 Manrope, sans-serif;
  letter-spacing: .12em;
  box-shadow: 3px 3px 0 rgba(23, 107, 85, .14);
  transform: rotate(-6deg);
}
.developer-sticker-a { left: 18%; }
.developer-sticker-b { right: 18%; color: #8b5a3c; transform: rotate(6deg); }
.developer-fight-scene:hover { border-color: #72b99e; box-shadow: 0 8px 24px rgba(23, 107, 85, .14); }
.developer-fight-scene:hover .developer-sticker-a { transform: rotate(-6deg) scale(1.06); }
.developer-fight-scene:hover .developer-sticker-b { transform: rotate(6deg) scale(1.06); }
.developer-fight-scene { display: none !important; }
.developer-snake-game {
  position: relative;
  margin: 4px 0 24px;
  padding: 16px;
  border: 1px solid #cbe4da;
  border-radius: 18px;
  background: linear-gradient(145deg, #f8fcfa, #e8f5ef);
  box-shadow: 0 8px 22px rgba(23, 107, 85, .09);
}
.developer-snake-headline { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; color: #176b55; font: 700 11px/1.3 Manrope, sans-serif; }
.developer-snake-headline strong { font-size: 13px; }
.developer-snake-headline span { flex: 1; color: #67877b; font-weight: 600; }
.developer-snake-headline b { color: #8b5a3c; white-space: nowrap; }
#developerSnakeCanvas { display: block; width: 100%; height: auto; max-height: 220px; border: 1px solid #b9d9cd; border-radius: 12px; background: #123e33; image-rendering: auto; }
.developer-snake-controls { display: none; grid-template-columns: repeat(3, 42px); justify-content: center; gap: 7px; margin: 12px 0 0; }
.developer-snake-controls button:nth-child(1) { grid-column: 2; }
.developer-snake-controls button:nth-child(2) { grid-column: 1; }
.developer-snake-controls button:nth-child(3) { grid-column: 2; }
.developer-snake-controls button:nth-child(4) { grid-column: 3; grid-row: 2; }
.developer-snake-controls button, .developer-snake-start, .developer-snake-restart { border: 1px solid #a9d2c1; border-radius: 10px; background: #fff; color: #176b55; font: 800 10px/1 Manrope, sans-serif; cursor: pointer; }
.developer-snake-controls button { width: 42px; height: 38px; }
.developer-snake-controls button:hover, .developer-snake-controls button:focus-visible, .developer-snake-start:hover, .developer-snake-start:focus-visible, .developer-snake-restart:hover, .developer-snake-restart:focus-visible { border-color: #176b55; background: #dff2eb; outline: none; }
.developer-snake-actions { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 12px; }
.developer-snake-start, .developer-snake-restart { padding: 8px 12px; }
@media (max-width: 760px) {
  .developer-snake-game { padding: 12px; }
  .developer-snake-headline { flex-wrap: wrap; gap: 5px 10px; }
  .developer-snake-headline span { flex-basis: 100%; order: 3; }
  .developer-snake-controls { display: grid; }
}
@media (max-width: 560px) {
  .developer-fight-scene, .developer-fight-scene svg { min-height: 150px; height: 150px; }
  .developer-sticker { top: 12px; font-size: 8px; }
}
.developer-fight-scene .stick-figure-a {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: developerStickAttack 1.35s ease-in-out infinite alternate;
}
.developer-fight-scene .stick-figure-b {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: developerStickDefense 1.35s ease-in-out infinite alternate;
}
.developer-fight-scene .fight-spark {
  transform-box: fill-box;
  transform-origin: center;
  animation: developerFightSpark .68s ease-in-out infinite alternate;
}
@keyframes developerStickAttack {
  from { transform: translateX(0) rotate(-2deg); }
  to { transform: translateX(9px) rotate(3deg); }
}
@keyframes developerStickDefense {
  from { transform: translateX(0) rotate(2deg); }
  to { transform: translateX(-7px) rotate(-3deg); }
}
@keyframes developerFightSpark {
  from { opacity: .45; transform: scale(.82); }
  to { opacity: 1; transform: scale(1.16); }
}
