:root{
  --navy:#0b1b33;--navy2:#11294a;--blue:#2563eb;--blue-soft:#e8f0fe;--bg:#f5f7fb;--card:#fff;--text:#111827;--muted:#6b7280;--line:#e5e7eb;--green:#10b981;--orange:#f59e0b;--red:#dc2626;--purple:#8b5cf6;--yellow:#fbbf24;--shadow:0 14px 36px rgba(15,23,42,.08);--radius:18px
}
*{box-sizing:border-box}html{min-height:100%;scroll-padding-top:88px}body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--blue);font-weight:800;text-decoration:none}small{color:var(--muted)}
.app-shell{display:flex}.sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;background:linear-gradient(180deg,#08182e,#10284a);color:#fff;padding:22px 16px;display:flex;flex-direction:column;z-index:20;box-shadow:8px 0 28px rgba(15,23,42,.18)}.side-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:24px;font-weight:950;letter-spacing:-.7px;margin:0 6px 26px}.side-brand span span{color:#bfdbfe}.brand-mark{width:38px;height:38px;border-radius:14px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:950;box-shadow:0 8px 18px rgba(0,0,0,.18)}.side-nav{display:flex;flex-direction:column;gap:4px;overflow:auto;padding-right:2px}.side-nav a{display:flex;align-items:center;gap:10px;color:#dbeafe;border-radius:14px;padding:11px 12px;font-size:14px;font-weight:800;opacity:.9}.side-nav a span{width:23px;text-align:center}.side-nav a:hover{background:rgba(255,255,255,.09);opacity:1}.side-nav a.active{background:rgba(219,234,254,.17);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.09)}.side-footer{margin-top:auto;padding:16px 6px 4px}.chat-pill{display:flex;justify-content:center;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#fff;padding:11px 12px;margin-bottom:18px}.group-logo{text-align:center;color:#cbd5e1;font-size:11px;font-weight:950;letter-spacing:2px;line-height:1.4}
.main-area{margin-left:248px;width:calc(100% - 248px);min-height:100vh}.app-header{position:sticky;top:0;z-index:15;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;justify-content:space-between;padding:14px 28px}.search-box{flex:1;max-width:680px;background:#f3f4f6;border:1px solid #eef0f3;border-radius:999px;height:46px;padding:0 15px;display:flex;align-items:center;gap:10px}.search-box input{border:0;background:transparent;outline:0;width:100%;font:inherit}.header-actions{display:flex;align-items:center;gap:10px}.icon-btn{position:relative;width:42px;height:42px;border-radius:14px;background:#f8fafc;border:1px solid var(--line);display:grid;place-items:center;color:#334155}.icon-btn b{position:absolute;right:-3px;top:-4px;background:#ef4444;color:#fff;min-width:18px;height:18px;border-radius:999px;font-size:10px;display:grid;place-items:center;border:2px solid #fff}.user-chip{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 10px 5px 5px;color:var(--text);box-shadow:0 4px 14px rgba(15,23,42,.04)}.user-chip strong{display:block;font-size:13px;color:var(--text);line-height:1.1}.user-chip small{display:block;font-size:11px;line-height:1.1;margin-top:3px}.chip-avatar{width:38px;height:38px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-weight:950;font-size:12px;overflow:hidden}.chip-avatar img{width:100%;height:100%;object-fit:cover}.user-chip em{font-style:normal;color:var(--muted)}.logout-link{color:#64748b;font-size:12px}.content-wrap{padding:28px;max-width:1500px;margin:0 auto}.login-wrap{width:100%;min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at top left,#dbeafe,#f8fafc 42%,#eef2ff)}
.flash{padding:12px 14px;border-radius:14px;margin-bottom:16px;font-weight:800}.flash.success{background:#dcfce7;color:#166534}.flash.error{background:#fee2e2;color:#991b1b}.page-title,.hero,.profile-hero{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:20px;box-shadow:var(--shadow)}.hero h1,.page-title h1,.profile-hero h1{font-size:34px;letter-spacing:-1px;margin:0 0 6px}.hero p,.page-title p,.profile-hero p{margin:0;color:var(--muted)}.metrics{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.metrics span,.badge{background:#f8fafc;border:1px solid var(--line);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:850;color:#334155}.grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.card,.panel,.mini-card,.login-card,.chat-bubble{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 22px rgba(15,23,42,.05);padding:18px;margin-bottom:16px}.mini-card{padding:14px;border-radius:16px}.pinned{border-left:5px solid var(--blue)}.read{color:var(--green);font-weight:900}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.login-card{max-width:430px;width:100%;margin:0}h1,h2,h3,h4{color:var(--text)}
input,textarea,select{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:14px;font:inherit;background:white}input:focus,textarea:focus,select:focus{outline:3px solid rgba(37,99,235,.15);border-color:#93c5fd}textarea{min-height:110px}form{display:flex;flex-direction:column;gap:12px}button,.button-link{background:var(--blue);color:#fff;border:0;border-radius:13px;padding:11px 15px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}.secondary{background:#eef2ff;color:#1d4ed8}.danger{background:var(--red)}.inline,.inline-form,.table-actions{display:flex;gap:8px;align-items:center;flex-direction:row;flex-wrap:wrap}.inline input{width:auto}.inline-form input{flex:1}.wide-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;margin-bottom:20px}th,td{text-align:left;padding:13px;border-bottom:1px solid #eef2f7;vertical-align:top}th{background:#f8fafc;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.04em}tr:hover td{background:#fbfdff}code{background:#eef2f6;padding:2px 6px;border-radius:6px}
.tav-home{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.welcome-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.welcome-row h1{font-size:34px;line-height:1.1;margin:0 0 8px;letter-spacing:-1.1px}.welcome-row p{margin:0;color:var(--muted);font-weight:600}.today-grid{display:grid;grid-template-columns:repeat(5,minmax(135px,1fr));gap:14px;margin-bottom:24px}.day-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;gap:12px;align-items:center;box-shadow:0 8px 22px rgba(15,23,42,.05);min-height:92px}.day-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;font-size:20px;flex:0 0 auto}.day-card b{font-size:24px;display:block;line-height:1;color:var(--text)}.day-card span{font-size:12px;color:var(--muted);font-weight:700}.bg-purple{background:#ede9fe;color:#7c3aed}.bg-orange{background:#ffedd5;color:#ea580c}.bg-green{background:#dcfce7;color:#16a34a}.bg-blue{background:#dbeafe;color:#2563eb}.bg-yellow{background:#fef3c7;color:#b45309}.feed-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px}.feed-tabs{display:flex;gap:8px;flex-wrap:wrap}.feed-tabs span{background:#f8fafc;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:850;color:#64748b}.feed-tabs span.active{background:var(--blue-soft);color:#1d4ed8;border-color:#bfdbfe}.feed-item{display:grid;grid-template-columns:52px minmax(0,1fr) 128px;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;margin-bottom:14px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.feed-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;font-size:23px}.feed-item h3{margin:4px 0 6px;font-size:17px}.feed-item p{margin:0;color:#475569;font-size:14px;line-height:1.45}.feed-tag{font-size:11px;font-weight:950;letter-spacing:.04em;color:#2563eb;text-transform:uppercase}.feed-thumb{height:86px;border-radius:18px;background:linear-gradient(135deg,#dbeafe,#ede9fe);display:grid;place-items:center;font-size:34px;color:#1d4ed8}.feed-cta{margin-top:10px;display:inline-block;background:#ecfdf5;color:#047857;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.widget{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:16px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.widget-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.widget-head h3{margin:0;font-size:17px}.person-row,.event-row{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #f1f5f9}.person-row:last-child,.event-row:last-child{border-bottom:0}.mini-person{width:38px;height:38px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-weight:950;overflow:hidden}.mini-person img{width:100%;height:100%;object-fit:cover}.person-row b,.event-row b{display:block;font-size:13px}.person-row small,.event-row small{font-size:11px}.spotlight{background:linear-gradient(145deg,#07162b,#152f55);color:#fff;position:relative;overflow:hidden}.spotlight:before{content:'✦';position:absolute;right:18px;top:10px;color:#fbbf24;font-size:38px;opacity:.55}.spotlight h3,.spotlight b{color:#fff}.spotlight small{color:#cbd5e1}.spotlight .award{display:inline-block;background:#f59e0b;color:#111827;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950;margin-top:8px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick-grid a{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:12px 8px;text-align:center;color:#334155;font-size:11px}.quick-grid a span{display:block;font-size:20px;margin-bottom:5px}.avatar{width:86px;height:86px;border-radius:24px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);display:grid;place-items:center;font-size:38px;font-weight:950;color:#1d4ed8;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-form{display:block;margin:0}.avatar-click{position:relative;cursor:pointer;overflow:hidden}.avatar-edit{position:absolute;left:0;right:0;bottom:0;background:rgba(15,23,42,.78);color:#fff;font-size:11px;font-weight:900;text-align:center;padding:5px 3px;opacity:0;transition:.18s}.avatar-click:hover .avatar-edit{opacity:1}
.chat-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px}.wa-chat-shell{height:calc(100dvh - 130px);min-height:560px;display:grid;grid-template-columns:350px minmax(0,1fr);background:#eef2f6;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.wa-sidebar{background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.wa-sidebar-head{padding:16px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center}.wa-group-form{padding:12px;border-bottom:1px solid var(--line);gap:8px;background:#f8fafc}.wa-conversations{overflow:auto}.wa-conversation{display:flex;gap:10px;align-items:center;padding:12px 14px;text-decoration:none;color:inherit;border-bottom:1px solid #f2f4f7}.wa-conversation:hover,.wa-conversation.active{background:#eff6ff}.wa-avatar{width:42px;height:42px;border-radius:50%;background:#dbeafe;display:grid;place-items:center;font-weight:950;color:#1d4ed8;flex:0 0 auto;overflow:hidden}.wa-avatar img,.wa-msg-avatar img,.mini-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.wa-conv-main{min-width:0;flex:1}.wa-conv-title{font-weight:900;color:#101828;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-conv-last{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.wa-window{display:flex;flex-direction:column;min-width:0;background:#eef2f6}.wa-window-head{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:12px 16px}.wa-messages{flex:1;overflow:auto;padding:22px;display:flex;flex-direction:column;gap:8px}.wa-message-row{display:flex;gap:8px;align-items:flex-end;align-self:flex-start;max-width:min(760px,82%)}.wa-message-row.mine{align-self:flex-end;justify-content:flex-end}.wa-msg-avatar{width:30px;height:30px;border-radius:50%;background:#dbeafe;display:grid;place-items:center;font-size:13px;font-weight:950;color:#1d4ed8;flex:0 0 auto;overflow:hidden}.wa-message{max-width:100%;background:#fff;border-radius:16px 16px 16px 4px;padding:9px 12px;box-shadow:0 2px 8px rgba(16,24,40,.08);align-self:auto}.wa-message.mine{background:#dcfce7;border-radius:16px 16px 4px 16px}.wa-message strong{font-size:12px;color:#075e45}.wa-message p{margin:3px 0 2px;white-space:pre-wrap;line-height:1.35}.wa-message small{display:block;text-align:right;color:#667085;font-size:10px}.wa-empty{align-self:center;margin:auto;color:#667085;background:rgba(255,255,255,.72);padding:10px 14px;border-radius:999px}.wa-composer{display:flex;gap:10px;align-items:flex-end;padding:12px;background:#f8fafc;border-top:1px solid var(--line)}.wa-composer textarea{min-height:44px;max-height:120px;border-radius:22px;resize:vertical;background:#fff}.wa-composer button{border-radius:22px;min-height:44px}.chat-preview{display:flex;gap:10px;align-items:flex-start}.mini-avatar{width:32px;height:32px;border-radius:50%;background:#dbeafe;display:grid;place-items:center;object-fit:cover;font-size:13px;font-weight:950;color:#1d4ed8;flex:0 0 auto;overflow:hidden}
@media(max-width:1180px){.today-grid{grid-template-columns:repeat(2,1fr)}.tav-home,.grid{grid-template-columns:1fr}.right-rail{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.widget{margin-bottom:0}}@media(max-width:860px){.sidebar{position:static;width:100%;height:auto;max-height:none}.app-shell{display:block}.main-area{margin-left:0;width:100%}.app-header{position:sticky;height:auto;flex-direction:column;align-items:stretch;padding:12px}.header-actions{overflow:auto}.content-wrap{padding:16px}.today-grid,.right-rail{grid-template-columns:1fr}.feed-item{grid-template-columns:42px minmax(0,1fr)}.feed-thumb{display:none}.wa-chat-shell{grid-template-columns:1fr;height:auto}.wa-sidebar{max-height:380px}.wa-window{height:70dvh;min-height:520px}.quick-grid{grid-template-columns:repeat(2,1fr)}}

/* Refinamento pós-screenshot: barra de busca do header não deve herdar form vertical */
.search-box{flex-direction:row!important;gap:10px!important}.search-box input{padding:0!important;height:auto!important;line-height:1.2!important}.search-box span{line-height:1;display:grid;place-items:center}

/* Marca Grupo Tavares */
.side-logo-symbol{width:42px;height:42px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.08);padding:3px;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.login-card-branded{padding-top:28px}.login-logo-wrap{display:flex;justify-content:center;margin:-4px 0 18px}.login-logo-wrap img{width:min(250px,80%);height:auto;object-fit:contain;display:block}.login-card-branded h1{margin-top:8px}.side-brand .brand-mark{display:none}

/* Atalhos rápidos: impedir texto de estourar o card */
.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-grid a{min-width:0;overflow:hidden;word-break:normal;overflow-wrap:anywhere;line-height:1.15;font-size:10px;padding:11px 5px}.quick-grid a span{font-size:19px;margin-bottom:6px}
@media(max-width:420px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid a{font-size:11px;overflow-wrap:normal}}

/* Institucional */
.institutional-page{display:flex;flex-direction:column;gap:18px}.inst-hero{background:linear-gradient(135deg,#fff,#eff6ff);border:1px solid var(--line);border-radius:24px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:22px;box-shadow:var(--shadow)}.inst-hero img{width:min(300px,38%);height:auto;object-fit:contain}.inst-eyebrow{display:inline-flex;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:950;margin-bottom:10px}.inst-hero h1{font-size:38px;margin:0 0 8px;letter-spacing:-1.2px}.inst-hero p{margin:0;color:var(--muted);font-weight:650}.inst-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:18px}.inst-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.inst-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.inst-card h2,.inst-card h3{margin-top:0}.inst-card p,.inst-card li{color:#475569;line-height:1.65}.inst-card-main p{font-size:15px}.inst-unit-name{font-size:22px;font-weight:950;color:var(--text);margin:6px 0}.inst-facts{display:grid;gap:9px;margin:16px 0 0}.inst-facts div{border-top:1px solid #eef2f7;padding-top:9px}.inst-facts dt{font-size:11px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.inst-facts dd{margin:3px 0 0;font-weight:850;color:#1f2937}.inst-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.inst-stats div{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.inst-stats b{display:block;font-size:30px;color:#1d4ed8;line-height:1}.inst-stats span{display:block;color:var(--muted);font-weight:750;font-size:12px;margin-top:6px}.value-tags{display:flex;gap:8px;flex-wrap:wrap}.value-tags span{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900}.unit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.unit-row{display:flex;gap:10px;align-items:center;background:#f8fafc;border:1px solid #eef2f7;border-radius:16px;padding:12px}.unit-logo{width:42px;height:42px;border-radius:14px;background:#0b1b33;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:950;flex:0 0 auto}.unit-row b{display:block;color:var(--text)}.unit-row small{display:block;margin-top:3px}.inst-note{background:#fffbeb;border-color:#fde68a}.inst-note p{margin-bottom:0}@media(max-width:900px){.inst-hero{display:block}.inst-hero img{width:240px;margin-top:16px}.inst-grid,.inst-grid.three,.inst-stats{grid-template-columns:1fr}}

/* Institucional: 4 métricas + unidades ricas */
.inst-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.unit-row-rich{align-items:flex-start}.unit-info{min-width:0}.unit-info small{line-height:1.35;margin-top:4px;color:#64748b}.unit-info small:nth-of-type(2){color:#334155;font-weight:800}@media(max-width:1100px){.inst-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.inst-stats{grid-template-columns:1fr}}

/* Tempo de casa: estrelas por ano completo */
.tenure-badge{display:inline-flex;align-items:center;gap:9px;margin-top:10px;padding:9px 12px;border-radius:999px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(146,64,14,.08)}
.tenure-stars{display:inline-flex;flex-wrap:wrap;gap:1px;max-width:180px;color:#f59e0b;font-size:17px;line-height:1;text-shadow:0 1px 0 #92400e22}.tenure-stars:empty::before{content:'☆';color:#fbbf24}.tenure-stars.mini{margin-top:7px;max-width:220px}.field-help{display:block;margin-top:5px;color:#64748b;font-weight:800;font-size:12px}
@media(max-width:640px){.tenure-badge{align-items:flex-start;border-radius:16px}.tenure-stars{max-width:130px}}

/* Ajuste compacto do tempo de casa */
.profile-hero h1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tenure-stars.title-stars{font-size:18px;max-width:160px;vertical-align:middle}.profile-hero .tenure-badge{display:none}

/* Calendário */
.calendar-page{display:flex;flex-direction:column;gap:18px}.calendar-hero-icon{width:96px;height:96px;border-radius:28px;background:#eff6ff;display:grid;place-items:center;font-size:46px;border:1px solid #bfdbfe}.calendar-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px}.calendar-list{display:grid;gap:12px}.calendar-event{display:flex;gap:13px;align-items:flex-start;border:1px solid #eef2f7;background:#f8fafc;border-radius:18px;padding:14px}.calendar-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;font-size:22px}.calendar-icon.purple{background:#f3e8ff}.calendar-icon.blue{background:#dbeafe}.calendar-icon.green{background:#dcfce7}.calendar-icon.orange{background:#ffedd5}.calendar-event h3{margin:0 0 4px;font-size:15px}.calendar-event p{margin:0 0 4px;color:#64748b;font-size:13px;line-height:1.35}.calendar-event small{font-weight:850;color:#334155}.calendar-desc{margin-top:8px!important;font-size:12px!important;color:#64748b!important}.birthday-list{display:grid;gap:2px}.birthday-row{border-bottom:1px solid #eef2f7}.real-event small{font-weight:800;color:#64748b}@media(max-width:900px){.calendar-grid{grid-template-columns:1fr}.calendar-hero-icon{display:none}}

/* Aniversariantes: foto mais visível, iniciais menores */
.birthday-row{gap:12px}.birthday-row .mini-person{width:48px;height:48px;font-size:12px;font-weight:900;flex:0 0 auto}.birthday-row b{font-size:12.5px;line-height:1.2}.birthday-row small{font-size:11px}.birthday-list .birthday-row .mini-person{width:52px;height:52px;font-size:12px}

/* Mobile-first/PWA preparation */
html,body{max-width:100%;overflow-x:hidden}.content-wrap{min-width:0}.main-area{min-width:0}
@media(max-width:820px){
  body.app-shell{display:block;background:#f6f8fb;padding-bottom:78px;min-height:100dvh;overflow-x:hidden}
  .sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;height:72px;z-index:1000;border-right:0;border-top:1px solid #e2e8f0;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 -10px 28px rgba(15,23,42,.10);padding:0;display:flex;align-items:center;overflow:hidden}
  .side-brand,.side-footer{display:none!important}
  .side-nav{display:flex;gap:2px;align-items:stretch;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;padding:7px 8px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.side-nav::-webkit-scrollbar{display:none}
  .side-nav a{flex:0 0 72px;min-width:72px;height:56px;padding:6px 4px;border-radius:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:9.5px;line-height:1.05;text-align:center;white-space:normal;color:#64748b}.side-nav a span{font-size:18px;width:auto}.side-nav a.active{background:#eaf2ff;color:#1d4ed8;box-shadow:inset 0 0 0 1px #bfdbfe}.side-nav a:nth-child(n+8){display:none}
  .main-area{margin:0;width:100%;min-height:100dvh}.content-wrap{padding:14px 12px 18px;width:100%;box-sizing:border-box}
  .app-header{position:sticky;top:0;z-index:900;margin:0;padding:10px 12px;background:rgba(246,248,251,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0;display:flex;gap:8px;align-items:center;box-sizing:border-box}.search-box{height:42px;min-width:0;flex:1;padding:0 10px;border-radius:14px}.search-box input{font-size:13px;min-width:0}.search-box input::placeholder{font-size:0}.search-box input::placeholder{color:transparent}.header-actions{gap:6px;flex:0 0 auto}.icon-btn{width:40px;height:40px;border-radius:14px}.icon-btn:nth-child(3){display:none}.user-chip{width:42px;height:42px;padding:0;border-radius:15px;justify-content:center}.user-chip>span:not(.chip-avatar),.user-chip em,.logout-link{display:none!important}.chip-avatar{width:34px;height:34px;flex:0 0 auto}
  .tav-home{display:block}.welcome-row{margin-bottom:14px}.welcome-row h1{font-size:25px;letter-spacing:-.6px}.welcome-row p{font-size:13px}.today-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.day-card{min-height:76px;padding:12px;border-radius:16px;gap:9px}.day-icon{width:38px;height:38px;border-radius:14px;font-size:18px}.day-card b{font-size:21px}.day-card span{font-size:11px}.feed-head{display:block}.feed-head h2{margin-bottom:8px}.feed-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.feed-tabs span{white-space:nowrap}.feed-item{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:13px;border-radius:18px}.feed-icon{width:42px;height:42px;border-radius:15px;font-size:19px}.feed-thumb{display:none}.feed-item h3{font-size:15px}.feed-item p{font-size:13px}.right-rail{margin-top:16px}.widget{padding:14px;border-radius:18px;margin-bottom:12px}.widget-head h3{font-size:15px}.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quick-grid a{font-size:9.5px;padding:10px 4px;min-height:58px}.quick-grid a span{font-size:18px}
  .profile-hero{padding:16px;border-radius:20px;display:flex;gap:12px;align-items:center}.avatar{width:70px;height:70px;border-radius:20px;font-size:30px;flex:0 0 auto}.profile-hero h1{font-size:24px;line-height:1.1}.profile-hero p{font-size:13px;line-height:1.35}.metrics{display:flex;gap:6px;flex-wrap:wrap}.metrics span{font-size:10.5px;padding:6px 8px}.grid{display:block}.panel,.glass,section.panel,aside,.card,.mini-card{max-width:100%;box-sizing:border-box}.panel{padding:15px;border-radius:18px}textarea,input,select,button{max-width:100%;box-sizing:border-box}.tenure-stars.title-stars{font-size:15px;max-width:120px}
  .calendar-grid,.inst-grid,.inst-grid.three,.inst-stats{grid-template-columns:1fr!important}.inst-hero{padding:18px;border-radius:20px}.inst-hero h1{font-size:27px}.inst-hero p{font-size:13px}.inst-hero img{width:210px;max-width:100%}.calendar-event{padding:12px;border-radius:16px;gap:10px}.calendar-icon{width:40px;height:40px;border-radius:14px;font-size:19px}.calendar-event h3{font-size:14px}.calendar-event p,.calendar-desc{font-size:12px!important}.calendar-event small{font-size:11px}.birthday-row .mini-person{width:46px;height:46px}.birthday-list .birthday-row .mini-person{width:48px;height:48px}.person-row,.event-row{min-width:0}.person-row span:last-child,.event-row span:last-child{min-width:0}.person-row b,.event-row b{white-space:normal;overflow-wrap:anywhere}
  table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}form{max-width:100%}
}
@media(max-width:430px){
  .content-wrap{padding-left:10px;padding-right:10px}.today-grid{grid-template-columns:1fr 1fr}.day-card{padding:10px}.side-nav a{flex-basis:68px;min-width:68px;font-size:9px}.app-header{padding-left:10px;padding-right:10px}.header-actions .icon-btn:nth-child(1){display:none}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-row h1{font-size:23px}.profile-hero{align-items:flex-start}.avatar{width:64px;height:64px}.feed-tabs span{font-size:11px;padding:7px 10px}
}

/* Mobile hardening: evitar cortes horizontais */
@media(max-width:820px){
  *,*::before,*::after{box-sizing:border-box}.content-wrap>*{max-width:100%}h1,h2,h3,p,small,a,span,li,dd{overflow-wrap:anywhere}.muted{max-width:100%;line-height:1.45}.cards{display:grid;grid-template-columns:1fr!important;gap:12px}.card,.mini-card,.panel,.widget,.feed-item,.day-card{min-width:0;max-width:100%;overflow:hidden}.card a,.mini-card a,.button-link{word-break:break-word;overflow-wrap:anywhere}.card h3,.mini-card h3{font-size:16px;line-height:1.25}.card p,.mini-card p{font-size:13px;line-height:1.42}.panel form,.mini-card form{min-width:0}.panel input[type=file],.mini-card input[type=file]{font-size:12px;width:100%}
  .feed-tabs{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.feed-tabs span{flex:0 0 auto}.today-grid{width:100%;grid-template-columns:1fr!important}.day-card{width:100%;align-items:center}.day-card>span:last-child{min-width:0}.right-rail{width:100%;max-width:100%}.app-header{width:100%;max-width:100vw}.search-box{max-width:calc(100vw - 126px)}.header-actions{max-width:118px}.icon-btn{flex:0 0 38px}.user-chip{flex:0 0 40px}
  .side-nav{justify-content:space-around;overflow:visible}.side-nav a{display:none!important;flex:1 1 20%;min-width:0;height:58px}.side-nav a:nth-child(1),.side-nav a:nth-child(2),.side-nav a:nth-child(3),.side-nav a:nth-child(6),.side-nav a:nth-child(9){display:flex!important}.side-nav a span{font-size:19px}.side-nav a{font-size:9px;padding:6px 2px}
  .calendar-event>div,.unit-row span:last-child,.person-row span:last-child,.event-row span:last-child{min-width:0;max-width:100%}.unit-list{grid-template-columns:1fr!important}.unit-row{min-width:0}.inst-stats div{min-width:0}.inst-stats b{font-size:26px}.profile-hero>div:last-child{min-width:0}.profile-hero h1{word-break:break-word}.metrics span{max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:430px){.content-wrap{padding-bottom:22px}.today-grid{grid-template-columns:1fr!important}.day-card{min-height:70px}.header-actions .icon-btn:nth-child(2){display:none}.search-box{max-width:calc(100vw - 74px)}.header-actions{max-width:44px}.side-nav a{font-size:8.5px}.side-nav a span{font-size:18px}.calendar-event{display:grid;grid-template-columns:40px minmax(0,1fr)}}

/* Navegação mobile dedicada para PWA */
.mobile-bottom-nav{display:none}
@media(max-width:820px){
  .sidebar{display:none!important}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;height:74px;z-index:1200;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:7px 8px 8px;background:rgba(255,255,255,.97);border-top:1px solid #e2e8f0;box-shadow:0 -10px 28px rgba(15,23,42,.12);backdrop-filter:blur(14px)}.mobile-bottom-nav a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:16px;color:#64748b;text-decoration:none;font-size:10px;font-weight:900;line-height:1}.mobile-bottom-nav a span{font-size:20px;line-height:1}.mobile-bottom-nav a b{font-size:9.5px;white-space:nowrap}.mobile-bottom-nav a.active{background:#eaf2ff;color:#1d4ed8;box-shadow:inset 0 0 0 1px #bfdbfe}
  .profile-hero p,.calendar-event small,.calendar-event p,.mini-card small,.card small,.card a,.mini-card a{display:block;max-width:100%;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:break-word;overflow-wrap:anywhere}.profile-hero{overflow:visible}.profile-hero>div{min-width:0}.calendar-event{overflow:visible}.calendar-event>div{overflow:visible}.documents-page,.cards,.panel{overflow:visible}.card,.mini-card{overflow:visible}.content-wrap{overflow:hidden}.feed-tabs{width:100%;min-width:0}.feed-tabs span:last-child{margin-right:12px}
}
@media(max-width:430px){.mobile-bottom-nav{height:72px;padding-left:6px;padding-right:6px}.mobile-bottom-nav a span{font-size:19px}.mobile-bottom-nav a b{font-size:9px}}

/* Mobile final pass: 5 abas reais + sem clipping de texto */
@media(max-width:820px){
  .mobile-bottom-nav{box-sizing:border-box;width:100vw;display:flex!important;gap:0;padding:6px 4px 8px;overflow:hidden}.mobile-bottom-nav a{flex:0 0 20%;width:20%;max-width:20%;min-width:0;padding:4px 1px}.mobile-bottom-nav a span{font-size:18px}.mobile-bottom-nav a b{font-size:8.8px;letter-spacing:-.1px}
  .content-wrap{overflow:visible!important}.card,.mini-card,.panel,.widget,.calendar-event,.feed-item,.day-card{overflow:visible!important}.app-header{overflow:hidden}.tav-home,.grid,.calendar-page,.calendar-grid,.cards,section,aside{max-width:100%;min-width:0;overflow:visible}.profile-hero p,.muted,.calendar-event h3,.calendar-event p,.calendar-event small,.card h3,.card p,.card small,.card a,.mini-card h3,.mini-card p,.mini-card small,.mini-card a{max-width:100%;white-space:normal!important;word-break:break-word!important;overflow-wrap:anywhere!important;line-height:1.35}.calendar-event{grid-template-columns:40px minmax(0,1fr)}
}
@media(max-width:390px){.mobile-bottom-nav a b{font-size:8px}.mobile-bottom-nav a span{font-size:17px}.mobile-bottom-nav{padding-left:2px;padding-right:2px}}

/* Mobile stable 4-tab nav */
@media(max-width:820px){
  body.app-shell{width:100%;max-width:100vw}.main-area{width:100%;max-width:100vw;overflow-x:hidden}.mobile-bottom-nav{grid-template-columns:none!important}.mobile-bottom-nav a{flex:0 0 25%!important;width:25%!important;max-width:25%!important}.mobile-bottom-nav a span{font-size:20px}.mobile-bottom-nav a b{font-size:9.5px}.content-wrap{width:100%;max-width:100vw;padding-left:10px;padding-right:10px}.app-header{width:100%;max-width:100vw}.profile-hero,.inst-hero,.panel,.widget,.card,.mini-card,.calendar-event,.feed-item,.day-card{width:100%;max-width:100%;min-width:0}.profile-hero{display:grid;grid-template-columns:64px minmax(0,1fr)}.profile-hero .avatar,.profile-hero .avatar-form{grid-column:1}.profile-hero>div:last-child{grid-column:2}.calendar-event{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important}.cards{width:100%;max-width:100%;overflow:visible}.card a{display:block}.panel h1,.panel h2,h1,h2,h3{max-width:100%;overflow-wrap:anywhere}.feed-tabs{display:flex;max-width:100%;overflow-x:auto}.feed-head{max-width:100%;overflow:hidden}
}

/* Mobile safety nav: sem corte lateral em aparelhos estreitos */
@media(max-width:820px){
  body.app-shell{padding-bottom:104px!important}.mobile-bottom-nav{left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;height:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;padding:6px!important;border-radius:22px!important;border:1px solid #e2e8f0!important}.mobile-bottom-nav a{width:auto!important;max-width:none!important;min-width:0!important;flex:initial!important;height:48px!important;padding:4px 2px!important}.mobile-bottom-nav a span{font-size:18px!important}.mobile-bottom-nav a b{font-size:9px!important}.content-wrap{padding-bottom:18px!important}
}
@media(max-width:360px){.mobile-bottom-nav a b{font-size:8px!important}.mobile-bottom-nav a span{font-size:17px!important}}

/* Mobile containment final: conteúdo dentro de uma coluna segura */
@media(max-width:820px){
  .main-area{margin-left:0!important;width:100vw!important;max-width:100vw!important;overflow-x:hidden!important}.app-header{width:100vw!important;max-width:100vw!important;padding-left:12px!important;padding-right:12px!important}.content-wrap{width:min(100% - 24px, 366px)!important;max-width:366px!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important;overflow:visible!important}.tav-home,.right-rail,.grid,.calendar-page,.calendar-grid,.cards,.institutional-page{width:100%!important;max-width:100%!important;min-width:0!important;display:block!important}.today-grid,.quick-grid{width:100%!important;max-width:100%!important}.feed-item,.day-card,.widget,.profile-hero,.panel,.card,.mini-card,.inst-card,.calendar-event{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important}.calendar-event{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important}.calendar-icon{width:38px!important;height:38px!important}.mobile-bottom-nav{left:12px!important;right:12px!important;width:auto!important;max-width:none!important}.mobile-bottom-nav a{min-width:0!important}.search-box{max-width:calc(100vw - 78px)!important}.header-actions{max-width:44px!important}.header-actions .icon-btn{display:none!important}.header-actions .user-chip{display:flex!important}.profile-hero{grid-template-columns:60px minmax(0,1fr)!important}.avatar{width:60px!important;height:60px!important}.feed-tabs{max-width:100%!important;overflow-x:auto!important}.feed-tabs span{flex:0 0 auto!important}.card *,.mini-card *,.panel *,.widget *,.calendar-event *,.profile-hero *{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
}

/* Fix compatibilidade largura mobile */
@media(max-width:820px){
  .content-wrap{width:calc(100vw - 24px)!important;max-width:366px!important;margin-left:auto!important;margin-right:auto!important}.content-wrap > *{width:100%!important;max-width:100%!important}.app-header{box-sizing:border-box!important}.calendar-list,.birthday-list{width:100%!important;max-width:100%!important}.calendar-event>div{min-width:0!important;width:100%!important}.panel,.card,.mini-card,.widget{box-sizing:border-box!important}.profile-hero{box-sizing:border-box!important}.profile-hero>div:last-child{min-width:0!important;width:100%!important}.cards{grid-template-columns:1fr!important}.card a,.mini-card a{display:block!important;width:100%!important;max-width:100%!important;white-space:normal!important}.mobile-bottom-nav{box-sizing:border-box!important}
}

/* Mobile emergency containment: coluna estreita até refatoração PWA */
@media(max-width:820px){
  .content-wrap{width:320px!important;max-width:calc(100vw - 28px)!important;margin-left:auto!important;margin-right:auto!important}.app-header{padding-left:14px!important;padding-right:14px!important}.profile-hero,.panel,.card,.mini-card,.widget,.calendar-event,.inst-hero,.inst-card{padding-left:12px!important;padding-right:12px!important}.profile-hero h1,.inst-hero h1,h1{font-size:22px!important;line-height:1.12!important}.panel h2,h2{font-size:18px!important;line-height:1.18!important}.card h3,.mini-card h3,.calendar-event h3,h3{font-size:14px!important;line-height:1.2!important}.muted,p,small,a,label,input,textarea,select{font-size:12px!important}.calendar-event{grid-template-columns:34px minmax(0,1fr)!important}.calendar-icon{width:34px!important;height:34px!important;font-size:16px!important}.day-icon{width:34px!important;height:34px!important}.avatar{width:54px!important;height:54px!important}.profile-hero{grid-template-columns:54px minmax(0,1fr)!important}.mobile-bottom-nav{left:16px!important;right:16px!important}.feed-tabs span{font-size:10px!important;padding:6px 8px!important}.button-link,button{font-size:12px!important;padding:10px 12px!important}
}

/* Edição dos atalhos rápidos */
.quick-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.quick-edit-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-height:120px;background:#f8fafc;border:1px solid var(--line);border-radius:18px;padding:14px;cursor:pointer;font-weight:900}.quick-edit-card input{width:auto}.quick-edit-card.selected{background:#eff6ff;border-color:#93c5fd;box-shadow:inset 0 0 0 1px #bfdbfe}.quick-edit-icon{font-size:28px}.form-actions-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Atestados médicos */
.form-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.certificate-panel{border-left:5px solid #2563eb}.certificate-list{display:grid;gap:12px}.certificate-card{border-left:5px solid #f59e0b}.certificate-card.valido{border-left-color:#10b981}.certificate-card.invalido,.certificate-card.late{border-left-color:#dc2626}.certificate-review-form{margin-top:12px;padding-top:12px;border-top:1px solid #eef2f7}.certificate-card p{margin:7px 0}.small{font-size:12px;padding:8px 11px}
@media(max-width:820px){.form-grid-3{grid-template-columns:1fr!important}.certificate-review-form{gap:9px}.certificate-card p{font-size:12px!important}}

/* Atestados simplificados */
.certificate-card.aceito{border-left-color:#10b981}.certificate-card.rejeitado{border-left-color:#dc2626}.certificate-panel input[type=file]{background:#f8fafc}

/* Benefícios — espelho da base Tav.IA */
.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.benefit-card{border-left-color:#8b5cf6}.benefit-card h3{margin-top:4px}.empty-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:14px;color:#64748b}

/* Solicitação de benefícios */
.benefit-request-form,.benefit-review-form{display:grid;gap:10px}.benefit-request-form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end}.benefit-request-form textarea,.benefit-request-form button{grid-column:1/-1}.benefit-request-form label,.benefit-review-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#475569}.benefit-requests-list{display:grid;gap:12px}.benefit-request-card{border-left-color:#f59e0b}.benefit-request-card.termo_enviado{border-left-color:#2563eb}.benefit-request-card.termo_assinado,.benefit-request-card.concluido{border-left-color:#10b981}.benefit-request-card.rejeitado{border-left-color:#dc2626}

/* Sidebar desktop: evitar barra branca de rolagem em monitores mais baixos */
@media (min-width:821px){
  .sidebar{height:100dvh;box-sizing:border-box;overflow:hidden}
  .side-brand,.side-footer{flex:0 0 auto}
  .side-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;padding-right:0}
  .side-nav::-webkit-scrollbar{width:0;height:0;display:none}
}
@media (min-width:821px) and (max-height:820px){
  .sidebar{padding-top:16px;padding-bottom:14px}
  .side-brand{margin-bottom:16px;font-size:22px}.side-logo-symbol{width:34px;height:34px}.brand-mark{width:34px;height:34px}
  .side-nav{gap:2px}.side-nav a{padding:9px 11px;border-radius:13px;font-size:13.5px}.side-nav a span{width:21px}
  .side-footer{padding-top:10px}.chat-pill{padding:9px 12px;margin-bottom:12px}.group-logo{font-size:10px;line-height:1.25}
}
@media (min-width:821px) and (max-height:700px){
  .side-brand{margin-bottom:10px}.side-nav a{padding:7px 10px;font-size:13px}.chat-pill{margin-bottom:0}.group-logo{display:none}
}

/* Institucional — história e idealizadores */
.founder-story-card{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:22px;align-items:center;background:linear-gradient(135deg,#ffffff,#f8fbff)}
.founder-story-photo{border-radius:22px;overflow:hidden;border:1px solid #dbeafe;box-shadow:0 18px 40px rgba(15,23,42,.12);background:#eff6ff}
.founder-story-photo img{width:100%;height:100%;max-height:360px;object-fit:cover;display:block}
.founder-story-card h2{font-size:30px;margin:6px 0 10px;color:#0f172a}
.founder-story-card p{font-size:15.5px;line-height:1.72;color:#334155}
@media(max-width:900px){.founder-story-card{grid-template-columns:1fr}.founder-story-photo img{max-height:none}}
.founder-story-placeholder{min-height:280px;display:grid;place-items:center;background:linear-gradient(135deg,#0b1b33,#1d4ed8);color:#fff;text-align:center}.founder-story-placeholder strong{display:block;font-size:34px;letter-spacing:-.8px}.founder-story-placeholder span{display:block;font-size:14px;font-weight:900;margin-top:8px;color:#dbeafe}.founder-story-placeholder small{display:block;margin-top:14px;color:#bfdbfe;font-weight:800}

/* Benefícios — política compacta */
.benefit-policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:10px}.benefit-policy-box{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.benefit-policy-box h3{color:#2563eb;font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}.benefit-policy-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eef2f7;color:#475569;font-size:13px}.benefit-policy-row strong{color:#10b981;white-space:nowrap}.benefit-payment-row{padding:9px 0;border-bottom:1px solid #eef2f7;color:#475569;font-size:13px;line-height:1.45}.benefit-payment-row strong{display:block;color:#0f172a;margin-bottom:2px}.benefit-policy-note{margin:12px 0 0!important;background:#f8fafc;border-radius:10px;padding:10px;color:#64748b!important;font-size:12px!important;line-height:1.45!important}.empty-state.compact{margin-top:12px;padding:10px;font-size:12px}
@media(max-width:900px){.benefit-policy-grid{grid-template-columns:1fr}.benefit-policy-row{align-items:flex-start}.benefit-policy-row strong{white-space:normal;text-align:right}}

/* Header: menu do usuário + central de alertas */
.user-menu{position:relative}.user-menu-toggle{border:1px solid var(--line);cursor:pointer;font:inherit}.user-menu-panel{display:none;position:absolute;right:0;top:52px;width:230px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.16);padding:8px;z-index:100}.user-menu.open .user-menu-panel{display:block}.user-menu-panel a{display:flex;align-items:center;gap:9px;padding:11px 12px;border-radius:12px;color:#334155;font-size:13px;font-weight:850}.user-menu-panel a:hover{background:#f8fafc}.user-menu-panel .danger-link{color:#dc2626}.alert-list{display:grid;gap:10px}.alert-row{display:grid;grid-template-columns:44px minmax(0,1fr) 110px;align-items:center;gap:12px;background:#fff;border:1px solid #eef2f7;border-radius:16px;padding:12px;color:inherit}.alert-row:hover{border-color:#bfdbfe;background:#f8fbff}.alert-icon{width:44px;height:44px;border-radius:15px;background:#eff6ff;display:grid;place-items:center;font-size:20px}.alert-main strong{display:block;color:#0f172a}.alert-main small{display:block;margin-top:3px}.alert-date{text-align:right;color:#64748b;font-size:12px;font-weight:800}@media(max-width:820px){.user-menu-panel{right:-4px;top:48px}.alert-row{grid-template-columns:38px minmax(0,1fr);gap:10px}.alert-icon{width:38px;height:38px}.alert-date{grid-column:2;text-align:left}}

/* Chat v2 — experiência mais próxima de app de mensagem */
.chat-page{display:flex;flex-direction:column;gap:14px}.chat-topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid var(--line);border-radius:22px;padding:18px 20px;box-shadow:var(--shadow)}.chat-topbar h1{margin:0;font-size:28px;letter-spacing:-.8px}.chat-topbar p{margin:5px 0 0;color:var(--muted);max-width:760px}.chat-top-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chat-top-actions span{background:#eef2ff;color:#1d4ed8;border:1px solid #dbeafe;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.improved-chat{height:calc(100dvh - 176px);min-height:650px;border-radius:24px;background:#e8eef6}.chat-side-head strong{display:block}.chat-side-head small{display:block;margin-top:3px}.chat-search-wrap{padding:12px 14px;border-bottom:1px solid var(--line);background:#fff}.chat-search-wrap input{height:42px;border-radius:999px;background:#f8fafc}.chat-filters{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);background:#fff;overflow:auto}.chat-filters button{background:#f8fafc;color:#475569;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:11px;white-space:nowrap}.chat-filters button.active{background:#dbeafe;color:#1d4ed8;border-color:#bfdbfe}.wa-conversation{position:relative}.wa-conversation.has-unread .wa-conv-title{font-weight:950;color:#0f172a}.wa-conversation.has-unread .wa-conv-last{font-weight:850;color:#334155}.wa-conv-meta{display:flex;flex-direction:column;gap:5px;align-items:flex-end}.wa-conv-meta b{min-width:20px;height:20px;border-radius:999px;background:#2563eb;color:#fff;display:grid;place-items:center;font-size:11px;border:2px solid #fff}.improved-head{height:76px}.chat-head-main{min-width:0;flex:1}.chat-head-main strong{display:block;font-size:16px}.chat-head-main small{display:block;margin-top:3px}.chat-day-separator{align-self:center;background:rgba(255,255,255,.78);border:1px solid rgba(203,213,225,.7);border-radius:999px;color:#64748b;font-size:11px;font-weight:900;padding:5px 10px;margin:6px 0}.improved-composer{padding:12px 14px;background:#fff}.improved-composer textarea{resize:none;line-height:1.35;padding:13px 16px}.improved-composer button{width:48px;height:48px;border-radius:50%;padding:0;font-size:18px;display:grid;place-items:center;flex:0 0 auto}.wa-messages{background:radial-gradient(circle at top left,rgba(219,234,254,.7),transparent 35%),#e8eef6}.wa-message{font-size:14px}.wa-message p{word-break:break-word}.wa-message.mine{background:#d9fdd3}@media(max-width:860px){.chat-topbar{display:none}.improved-chat{height:calc(100dvh - 120px);min-height:0;border-radius:18px}.wa-sidebar{max-height:300px}.wa-window{height:62dvh;min-height:420px}.wa-conversation{padding:10px 12px}.improved-head{height:64px}.chat-head-main small{display:none}}

/* Chat v2.1 — anexos, reações e nova conversa */
.chat-side-head{align-items:flex-start}.chat-side-head>div+button{margin-left:auto}.chat-attach-btn{width:48px;height:48px;border-radius:50%;background:#eef2ff;color:#1d4ed8;display:grid;place-items:center;font-size:20px;cursor:pointer;flex:0 0 auto;border:1px solid #dbeafe}.chat-attach-btn:hover{background:#dbeafe}.chat-attachment-name{max-width:190px;font-size:11px;color:#64748b;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-attachment{display:inline-flex;align-items:center;gap:6px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;border-radius:12px;padding:8px 10px;margin-top:4px;font-size:12px;font-weight:900;max-width:100%;word-break:break-word}.chat-reactions-line{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.chat-reactions-line span{background:rgba(255,255,255,.75);border:1px solid rgba(203,213,225,.7);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:900}.chat-quick-reactions{display:none;gap:3px;margin-top:5px}.wa-message:hover .chat-quick-reactions{display:flex}.chat-quick-reactions button{background:#fff;border:1px solid #e5e7eb;color:#334155;border-radius:999px;width:27px;height:24px;padding:0;font-size:12px;display:grid;place-items:center}.chat-quick-reactions button:hover{background:#eef2ff;border-color:#bfdbfe}.improved-composer{position:relative}.improved-composer textarea:required{box-shadow:none}@media(max-width:860px){.chat-attachment-name{display:none}.chat-quick-reactions{display:flex}.chat-side-head{flex-wrap:wrap}.chat-side-head button{padding:8px 10px}}

/* Chat composer — estilo WhatsApp com botão azul */
.whatsapp-composer{gap:9px;align-items:center;background:#e8eef6;border-top:1px solid #dbe3ee;padding:10px 12px}.whatsapp-input-pill{flex:1;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:0 8px 0 10px;min-height:48px;box-shadow:0 2px 10px rgba(15,23,42,.06)}.whatsapp-input-pill .chat-attach-btn{width:34px;height:34px;background:transparent;border:0;color:#64748b;font-size:22px}.whatsapp-input-pill .chat-attach-btn:hover{background:#f1f5f9}.whatsapp-input-pill textarea{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;min-height:34px;max-height:116px;padding:9px 4px;resize:none}.whatsapp-input-pill textarea:focus{outline:0!important;border-color:transparent!important}.chat-emoji-btn{width:36px;height:36px;border-radius:50%;background:transparent!important;border:0!important;color:#64748b!important;padding:0!important;font-size:20px;display:grid;place-items:center;flex:0 0 auto}.chat-emoji-btn:hover{background:#f1f5f9!important}.chat-send-blue{width:48px!important;height:48px!important;border-radius:50%!important;background:#2563eb!important;color:#fff!important;box-shadow:0 8px 18px rgba(37,99,235,.28);font-size:18px!important}.chat-send-blue:hover{background:#1d4ed8!important}.whatsapp-composer .chat-attachment-name{position:absolute;left:68px;bottom:62px;background:#fff;border:1px solid #dbeafe;border-radius:999px;padding:5px 9px;box-shadow:0 8px 18px rgba(15,23,42,.08)}@media(max-width:860px){.whatsapp-composer{padding:8px}.whatsapp-input-pill{min-height:45px}.chat-send-blue{width:45px!important;height:45px!important}.whatsapp-input-pill .chat-attach-btn{font-size:21px}.chat-emoji-btn{font-size:19px}}

/* Chat composer v2.2 — mais delicado, inspirado no padrão VivaIntra/WhatsApp */
.whatsapp-composer{
  gap:8px!important;
  align-items:center!important;
  background:#f4f6f8!important;
  border-top:1px solid #e7ebf0!important;
  padding:8px 12px!important;
}
.whatsapp-input-pill{
  min-height:42px!important;
  border-radius:999px!important;
  border:1px solid #e6e9ee!important;
  background:#fff!important;
  box-shadow:0 1px 4px rgba(15,23,42,.045)!important;
  padding:0 7px!important;
  gap:4px!important;
}
.whatsapp-input-pill .chat-attach-btn{
  width:31px!important;
  height:31px!important;
  font-size:19px!important;
  color:#8a94a3!important;
  opacity:.92;
}
.whatsapp-input-pill .chat-attach-btn:hover,
.chat-emoji-btn:hover,
.chat-mic-btn:hover{
  background:#f2f5f8!important;
}
.whatsapp-input-pill textarea{
  min-height:30px!important;
  max-height:96px!important;
  padding:7px 5px!important;
  font-size:14px!important;
  color:#1f2937!important;
}
.whatsapp-input-pill textarea::placeholder{
  color:#a0a7b2!important;
  font-weight:500;
}
.chat-emoji-btn,
.chat-mic-btn{
  width:31px!important;
  height:31px!important;
  border-radius:50%!important;
  background:transparent!important;
  border:0!important;
  color:#8a94a3!important;
  padding:0!important;
  font-size:18px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  box-shadow:none!important;
}
.chat-mic-btn{font-size:17px!important}
.chat-send-blue{
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  border-radius:50%!important;
  background:#1d7afc!important;
  color:#fff!important;
  box-shadow:0 4px 10px rgba(29,122,252,.22)!important;
  font-size:17px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
}
.chat-send-blue span{transform:translateX(1px);display:block;line-height:1}
.chat-send-blue:hover{background:#176de2!important;box-shadow:0 5px 12px rgba(29,122,252,.28)!important}
.whatsapp-composer .chat-attachment-name{
  left:58px!important;
  bottom:54px!important;
  max-width:230px!important;
  font-size:11px!important;
  color:#64748b!important;
  background:#fff!important;
  border:1px solid #e2e8f0!important;
  padding:4px 9px!important;
  box-shadow:0 6px 14px rgba(15,23,42,.07)!important;
}
.improved-composer button:not(.chat-emoji-btn):not(.chat-mic-btn):not(.chat-send-blue){min-height:auto}
.wa-window-head.improved-head{height:68px!important;background:#fff!important}
.wa-messages{padding:18px!important;gap:7px!important}
.wa-message{padding:8px 11px!important;border-radius:15px 15px 15px 5px!important;box-shadow:0 1px 5px rgba(16,24,40,.07)!important;font-size:13.5px!important}
.wa-message.mine{border-radius:15px 15px 5px 15px!important;background:#dcf8c6!important}
.wa-message p{line-height:1.32!important;margin:2px 0!important}
.wa-message small{font-size:9.5px!important;color:#7b8492!important}
.chat-attachment{padding:7px 9px!important;border-radius:10px!important;font-size:11.5px!important;background:#f5f9ff!important}
@media(max-width:860px){
  .whatsapp-composer{padding:7px 8px!important;gap:7px!important}
  .whatsapp-input-pill{min-height:40px!important}
  .chat-send-blue{width:40px!important;height:40px!important;min-height:40px!important}
  .chat-mic-btn{display:none!important}
}


/* Chat widget corporativo — Teams/Messenger/VivaIntra */
.tav-chat-fab{position:fixed;right:24px;bottom:24px;width:60px;height:60px;border-radius:50%;background:#1E3A8A;color:#fff;border:0;box-shadow:0 14px 30px rgba(30,58,138,.28);z-index:80;display:grid;place-items:center;font-size:24px;cursor:pointer}.tav-chat-fab b{position:absolute;right:0;top:0;min-width:19px;height:19px;border-radius:999px;background:#ef4444;color:#fff;border:2px solid #fff;font-size:10px;display:grid;place-items:center}.tav-chat-widget{position:fixed;right:24px;bottom:94px;width:380px;height:650px;max-height:calc(100dvh - 120px);background:#fff;border:1px solid #dfe5ee;border-radius:18px;box-shadow:0 22px 55px rgba(15,23,42,.22);z-index:79;display:none;overflow:hidden}.tav-chat-widget.open{display:flex;flex-direction:column}.tav-chat-head{height:56px;background:#1E3A8A;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 12px}.tav-chat-head strong{display:block;font-size:15px;color:#fff}.tav-chat-head small{display:block;font-size:11px;color:#dbeafe;margin-top:1px}.tav-chat-head button{width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.12);color:#fff;border:0;font-size:20px;padding:0}.tav-chat-toolbar{height:52px;display:flex;gap:8px;align-items:center;padding:8px;border-bottom:1px solid #eef2f7;background:#f8fafc}.tav-chat-toolbar input{height:34px;border-radius:10px;padding:8px 10px;font-size:13px;background:#fff}.tav-chat-toolbar button{height:34px;border-radius:10px;padding:0 10px;background:#eff6ff;color:#1E3A8A;font-size:12px;white-space:nowrap}.tav-chat-body{flex:1;min-height:0;display:grid;grid-template-columns:138px 1fr}.tav-chat-conversations{border-right:1px solid #eef2f7;background:#fbfcfe;overflow:auto}.tav-chat-conv{width:100%;display:flex;align-items:center;gap:8px;padding:8px;border:0;border-bottom:1px solid #f1f5f9;background:transparent;text-align:left;cursor:pointer;position:relative}.tav-chat-conv:hover,.tav-chat-conv.active{background:#eef4ff}.tav-chat-conv.unread .tav-chat-conv-text strong{font-weight:900}.tav-chat-avatar{width:40px;height:40px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:13px;font-weight:900;overflow:hidden;flex:0 0 auto}.tav-chat-avatar img,#tav-chat-room-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.tav-chat-conv-text{min-width:0;display:block;flex:1}.tav-chat-conv-text strong{display:block;font-size:14px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15}.tav-chat-conv-text small{display:block;font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15;margin-top:2px}.tav-chat-conv-text em{display:block;font-style:normal;font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15;margin-top:3px}.tav-chat-conv>b{position:absolute;right:5px;top:5px;min-width:16px;height:16px;border-radius:999px;background:#1E3A8A;color:#fff;font-size:9px;display:grid;place-items:center}.tav-chat-room{min-width:0;display:flex;flex-direction:column;background:#fff}.tav-chat-room-head{height:54px;border-bottom:1px solid #eef2f7;display:flex;gap:8px;align-items:center;padding:8px 10px;background:#fff}.tav-chat-room-head>span{width:40px;height:40px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:14px;font-weight:900;overflow:hidden;flex:0 0 auto}.tav-chat-room-head strong{display:block;font-size:14px;color:#111827;line-height:1.15}.tav-chat-room-head small{display:block;font-size:11px;color:#6b7280;line-height:1.15;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.tav-chat-messages{flex:1;min-height:0;overflow:auto;background:#f4f6fa;padding:10px;display:flex;flex-direction:column;gap:6px}.tav-chat-msg{max-width:86%;align-self:flex-start;background:#fff;border:1px solid #e8edf4;border-radius:12px 12px 12px 4px;padding:7px 9px;box-shadow:0 1px 4px rgba(15,23,42,.05);font-size:14px}.tav-chat-msg.mine{align-self:flex-end;background:#e8f1ff;border-color:#dbeafe;border-radius:12px 12px 4px 12px}.tav-chat-msg strong{display:block;font-size:11px;color:#1E3A8A;margin-bottom:2px}.tav-chat-msg p{margin:0;color:#111827;font-size:14px;line-height:1.3;white-space:pre-wrap;word-break:break-word}.tav-chat-msg small{display:block;text-align:right;color:#7b8492;font-size:10px;margin-top:3px}.tav-chat-attach{display:inline-flex;margin-top:4px;background:#f8fafc;border:1px solid #dbeafe;border-radius:9px;padding:6px 7px;color:#1E3A8A;font-size:12px;font-weight:800}.tav-chat-reacts{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.tav-chat-reacts span{background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:1px 6px;font-size:10px}.tav-chat-composer{height:auto;min-height:54px;border-top:1px solid #e5eaf1;background:#fff;display:flex;align-items:flex-end;gap:5px;padding:8px}.tav-chat-composer label,.tav-chat-composer>button:not(.tav-chat-send){width:28px;height:34px;background:transparent;color:#64748b;border:0;display:grid;place-items:center;font-size:16px;padding:0;flex:0 0 auto;cursor:pointer}.tav-chat-composer textarea{min-height:34px;max-height:90px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc;padding:8px 10px;font-size:14px;resize:none;line-height:1.25;flex:1}.tav-chat-send{width:34px;height:34px;border-radius:50%;background:#1E3A8A;color:#fff;border:0;padding:0;font-size:14px;display:grid;place-items:center;flex:0 0 auto}.tav-chat-empty{margin:auto;color:#64748b;font-size:13px;text-align:center;padding:12px}.chat-open-inline{width:100%;font:inherit}.header-chat-trigger{font:inherit}.header-chat-trigger.icon-btn{border:1px solid var(--line)}@media(max-width:820px){.tav-chat-fab{right:16px;bottom:76px;width:56px;height:56px}.tav-chat-widget{right:10px;bottom:140px;width:min(380px,calc(100vw - 20px));height:min(650px,calc(100dvh - 160px))}.tav-chat-body{grid-template-columns:126px 1fr}.tav-chat-toolbar button{font-size:11px;padding:0 8px}}
.link-button{background:transparent;color:var(--blue);border:0;padding:0;font-weight:900;cursor:pointer;font:inherit}

/* Chat widget v2.1 — janela maior, contatos mais delicados e ações ativas */
.tav-chat-widget{width:460px!important;height:680px!important;max-height:calc(100dvh - 110px)!important}.tav-chat-body{grid-template-columns:178px 1fr!important}.tav-chat-conv{padding:7px 8px!important;gap:7px!important}.tav-chat-avatar{width:38px!important;height:38px!important;font-size:12px!important}.tav-chat-conv-text strong{font-size:13px!important;font-weight:800!important;letter-spacing:-.15px!important;line-height:1.12!important;text-transform:none!important}.tav-chat-conv-text small{font-size:10.5px!important;line-height:1.1!important;text-transform:none!important}.tav-chat-conv-text em{font-size:11.5px!important;line-height:1.1!important}.tav-chat-room-head{height:52px!important}.tav-chat-room-head>span{width:38px!important;height:38px!important}.tav-chat-room-head strong{font-size:13.5px!important;line-height:1.15!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}.tav-chat-room-head small{font-size:10.5px!important;max-width:210px}.tav-chat-toolbar{height:50px!important}.tav-chat-toolbar input{font-size:12.5px!important}.tav-chat-toolbar button{font-size:11.5px!important}.tav-chat-messages{padding:9px!important}.tav-chat-msg{font-size:13.5px!important;max-width:84%!important}.tav-chat-msg p{font-size:13.5px!important}.tav-chat-composer{min-height:50px!important;padding:7px!important;gap:4px!important;position:relative}.tav-chat-composer label,.tav-chat-composer>button:not(.tav-chat-send){width:26px!important;height:32px!important;font-size:15px!important}.tav-chat-composer textarea{min-height:32px!important;border-radius:11px!important;font-size:13.5px!important;padding:7px 9px!important}.tav-chat-send{width:32px!important;height:32px!important;font-size:13px!important}.tav-chat-emoji-panel{display:none;position:absolute;left:36px;bottom:48px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:6px;box-shadow:0 12px 30px rgba(15,23,42,.15);gap:4px;z-index:2}.tav-chat-emoji-panel.open{display:flex}.tav-chat-emoji-panel button{width:28px!important;height:28px!important;border-radius:8px!important;background:#f8fafc!important;border:0!important;font-size:15px!important;padding:0!important}.tav-chat-composer button.recording{background:#fee2e2!important;color:#dc2626!important;border-radius:50%;animation:tavPulse 1s infinite}@keyframes tavPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}@media(max-width:820px){.tav-chat-widget{width:min(460px,calc(100vw - 20px))!important;height:min(680px,calc(100dvh - 150px))!important}.tav-chat-body{grid-template-columns:160px 1fr!important}.tav-chat-conv-text strong{font-size:12.5px!important}.tav-chat-room-head strong{max-width:170px}}

/* Chat widget v2.2 — ajuste fino pedido pelo Elton */
.tav-chat-widget{width:490px!important;height:690px!important}.tav-chat-body{grid-template-columns:188px 1fr!important}.tav-chat-conv{padding:6px 7px!important;gap:6px!important}.tav-chat-avatar{width:36px!important;height:36px!important;font-size:11px!important}.tav-chat-conv-text strong{font-size:12px!important;font-weight:760!important;letter-spacing:-.2px!important;line-height:1.08!important}.tav-chat-conv-text small{font-size:9.8px!important;line-height:1.08!important}.tav-chat-conv-text em{font-size:10.5px!important;line-height:1.08!important;margin-top:2px!important}.tav-chat-conv>b{min-width:15px!important;height:15px!important;font-size:8.5px!important}.tav-chat-room-head strong{font-size:13px!important;max-width:245px!important}.tav-chat-room-head small{font-size:10px!important;max-width:245px!important}.tav-chat-composer{min-height:42px!important;height:auto!important;padding:6px 7px!important;gap:4px!important;align-items:center!important;background:#fff!important}.tav-chat-composer label,.tav-chat-composer>button:not(.tav-chat-send){width:25px!important;height:30px!important;font-size:15px!important;color:#7b8492!important}.tav-chat-composer textarea{min-height:30px!important;max-height:78px!important;border-radius:999px!important;font-size:13px!important;padding:6px 9px!important;background:#f8fafc!important;border:1px solid #e5e7eb!important;line-height:1.25!important}.tav-chat-attach-inline{order:1}.tav-chat-composer textarea{order:2}.tav-chat-emoji-inline{order:3}.tav-chat-mic-inline{order:4}.tav-chat-send{order:5;display:none!important}.tav-chat-emoji-panel{left:auto!important;right:32px!important;bottom:42px!important}.tav-chat-mic-inline.recording{background:#fee2e2!important;color:#dc2626!important;border-radius:50%!important}@media(max-width:820px){.tav-chat-widget{width:min(490px,calc(100vw - 20px))!important;height:min(690px,calc(100dvh - 150px))!important}.tav-chat-body{grid-template-columns:166px 1fr!important}.tav-chat-send{display:grid!important;width:31px!important;height:31px!important}.tav-chat-mic-inline{display:grid!important}.tav-chat-conv-text strong{font-size:11.5px!important}.tav-chat-conv-text small{font-size:9.5px!important}.tav-chat-conv-text em{font-size:10px!important}}

/* Chat widget v2.3 — coluna de conversas redimensionável */
.tav-chat-widget{width:560px!important;height:700px!important}.tav-chat-body{--tav-chat-list-width:230px;grid-template-columns:var(--tav-chat-list-width) 6px minmax(0,1fr)!important}.tav-chat-resizer{background:#e5eaf1;cursor:col-resize;position:relative}.tav-chat-resizer:before{content:'';position:absolute;top:50%;left:50%;width:2px;height:42px;border-radius:999px;background:#cbd5e1;transform:translate(-50%,-50%)}.tav-chat-resizer:hover,.tav-chat-resizing .tav-chat-resizer{background:#dbeafe}.tav-chat-resizer:hover:before,.tav-chat-resizing .tav-chat-resizer:before{background:#1E3A8A}.tav-chat-resizing{user-select:none;cursor:col-resize}.tav-chat-conv-text strong{font-size:11.8px!important;font-weight:740!important}.tav-chat-conv-text small{font-size:9.6px!important}.tav-chat-conv-text em{font-size:10.2px!important}.tav-chat-conv{padding:6px 8px!important}.tav-chat-room-head strong{max-width:270px!important}@media(max-width:820px){.tav-chat-widget{width:min(560px,calc(100vw - 20px))!important;height:min(700px,calc(100dvh - 150px))!important}.tav-chat-body{--tav-chat-list-width:170px;grid-template-columns:var(--tav-chat-list-width) 4px minmax(0,1fr)!important}.tav-chat-resizer{cursor:default}.tav-chat-resizer:before{height:30px}.tav-chat-room-head strong{max-width:160px!important}}

/* Chat widget v2.4 — mais largo e composer mais compacto */
.tav-chat-widget{width:620px!important;height:705px!important}.tav-chat-body{--tav-chat-list-width:250px;grid-template-columns:var(--tav-chat-list-width) 6px minmax(0,1fr)!important}.tav-chat-room-head strong{max-width:310px!important}.tav-chat-room-head small{max-width:310px!important}.tav-chat-composer{min-height:38px!important;padding:5px 7px!important;gap:3px!important;align-items:center!important}.tav-chat-composer label,.tav-chat-composer>button:not(.tav-chat-send){width:23px!important;height:28px!important;font-size:14px!important}.tav-chat-composer textarea{min-height:28px!important;max-height:66px!important;font-size:12.8px!important;padding:5px 9px!important;line-height:1.2!important;flex:1 1 auto!important}.tav-chat-attach-inline{margin-right:2px!important}.tav-chat-emoji-inline{margin-left:2px!important}.tav-chat-emoji-panel{bottom:38px!important;right:28px!important}.tav-chat-send{width:29px!important;height:29px!important;font-size:12px!important}@media(max-width:820px){.tav-chat-widget{width:min(620px,calc(100vw - 20px))!important;height:min(705px,calc(100dvh - 150px))!important}.tav-chat-body{--tav-chat-list-width:180px!important;grid-template-columns:var(--tav-chat-list-width) 4px minmax(0,1fr)!important}.tav-chat-composer textarea{font-size:12.5px!important}.tav-chat-send{display:grid!important}}

/* Chat widget v2.5 — composer ainda mais compacto */
.tav-chat-composer{
  min-height:34px!important;
  padding:4px 7px!important;
  gap:2px!important;
  background:#fff!important;
  align-items:center!important;
}
.tav-chat-composer label,
.tav-chat-composer>button:not(.tav-chat-send){
  width:21px!important;
  height:26px!important;
  font-size:13px!important;
  color:#7b8492!important;
  flex:0 0 21px!important;
}
.tav-chat-composer textarea{
  min-height:25px!important;
  height:25px!important;
  max-height:52px!important;
  font-size:12.5px!important;
  padding:4px 8px!important;
  line-height:1.15!important;
  border-radius:999px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.tav-chat-composer textarea::placeholder{
  font-size:12.5px!important;
  color:#9aa3af!important;
}
.tav-chat-attach-inline{margin-right:1px!important}
.tav-chat-emoji-inline{margin-left:1px!important}
.tav-chat-mic-inline{margin-left:0!important}
.tav-chat-emoji-panel{bottom:34px!important;right:24px!important}
.tav-chat-send{width:27px!important;height:27px!important;font-size:11px!important}
@media(max-width:820px){
  .tav-chat-composer{min-height:36px!important;padding:4px 6px!important}
  .tav-chat-composer textarea{height:27px!important;min-height:27px!important}
  .tav-chat-send{display:grid!important;width:28px!important;height:28px!important}
}

/* Chat widget v2.6 — composer refeito em cápsula única */
.tav-chat-composer-final{
  min-height:40px!important;
  height:40px!important;
  padding:5px 8px!important;
  background:#fff!important;
  border-top:1px solid #e5eaf1!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
.tav-chat-input-capsule{
  flex:1 1 auto!important;
  min-width:0!important;
  height:30px!important;
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  background:#f6f7f9!important;
  border:1px solid #e3e7ee!important;
  border-radius:999px!important;
  padding:0 6px!important;
}
.tav-chat-input-capsule .tav-chat-attach-inline,
.tav-chat-input-capsule .tav-chat-emoji-inline,
.tav-chat-input-capsule .tav-chat-mic-inline{
  width:22px!important;
  height:24px!important;
  flex:0 0 22px!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  color:#7b8492!important;
  font-size:13px!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
}
.tav-chat-input-capsule .tav-chat-attach-inline{font-size:14px!important}
.tav-chat-input-capsule #tav-chat-message{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:24px!important;
  min-height:24px!important;
  max-height:48px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  padding:3px 4px!important;
  margin:0!important;
  font-size:12.5px!important;
  line-height:18px!important;
  resize:none!important;
  border-radius:0!important;
}
.tav-chat-input-capsule #tav-chat-message:focus{outline:0!important;border:0!important;box-shadow:none!important}
.tav-chat-input-capsule #tav-chat-message::placeholder{font-size:12.5px!important;color:#9aa3af!important}
.tav-chat-composer-final .tav-chat-send{display:none!important}
.tav-chat-composer-final .tav-chat-emoji-panel{right:36px!important;bottom:38px!important}
.tav-chat-input-capsule .recording{background:#fee2e2!important;color:#dc2626!important;border-radius:50%!important}
@media(max-width:820px){
  .tav-chat-composer-final{height:42px!important;min-height:42px!important;gap:5px!important;padding:5px 7px!important}
  .tav-chat-input-capsule{height:31px!important}
  .tav-chat-composer-final .tav-chat-send{display:grid!important;width:30px!important;height:30px!important;flex:0 0 30px!important}
}

/* Chat widget v2.7 — clipe e microfone fora da caixa de texto */
.tav-chat-composer-v27{
  height:40px!important;
  min-height:40px!important;
  padding:5px 8px!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  background:#fff!important;
}
.tav-chat-composer-v27 .tav-chat-attach-outside,
.tav-chat-composer-v27 .tav-chat-mic-outside{
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  border-radius:50%!important;
  background:#f6f7f9!important;
  border:1px solid #e3e7ee!important;
  color:#7b8492!important;
  display:grid!important;
  place-items:center!important;
  font-size:14px!important;
  padding:0!important;
  margin:0!important;
  cursor:pointer!important;
}
.tav-chat-composer-v27 .tav-chat-mic-outside{font-size:13px!important}
.tav-chat-composer-v27 .tav-chat-attach-outside:hover,
.tav-chat-composer-v27 .tav-chat-mic-outside:hover{background:#eef2f7!important;color:#1E3A8A!important}
.tav-chat-composer-v27 .tav-chat-input-capsule{
  height:30px!important;
  flex:1 1 auto!important;
  min-width:0!important;
  padding:0 6px 0 10px!important;
  background:#f6f7f9!important;
  border:1px solid #e3e7ee!important;
  border-radius:999px!important;
}
.tav-chat-composer-v27 .tav-chat-input-capsule #tav-chat-message{
  height:24px!important;
  min-height:24px!important;
  max-height:46px!important;
  font-size:12.5px!important;
  padding:3px 3px!important;
}
.tav-chat-composer-v27 .tav-chat-emoji-inline{
  width:22px!important;
  height:24px!important;
  flex:0 0 22px!important;
  color:#7b8492!important;
  background:transparent!important;
  border:0!important;
  font-size:13px!important;
}
.tav-chat-composer-v27 .tav-chat-emoji-panel{right:40px!important;bottom:38px!important}
.tav-chat-composer-v27 .tav-chat-send{display:none!important}
.tav-chat-composer-v27 .tav-chat-mic-outside.recording{background:#fee2e2!important;color:#dc2626!important;border-color:#fecaca!important;animation:tavPulse 1s infinite}
@media(max-width:820px){.tav-chat-composer-v27 .tav-chat-send{display:grid!important;width:28px!important;height:28px!important;flex:0 0 28px!important}.tav-chat-composer-v27{gap:5px!important}.tav-chat-composer-v27 .tav-chat-attach-outside,.tav-chat-composer-v27 .tav-chat-mic-outside{width:27px!important;height:27px!important;flex-basis:27px!important}}

/* Chat widget v2.8 — correção rodapé: composer ocupa toda a base da conversa */
.tav-chat-room{position:relative!important;min-height:0!important;overflow:hidden!important}.tav-chat-messages{padding-bottom:10px!important}.tav-chat-composer-v27{
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  flex:0 0 46px!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:7px 10px!important;
  margin:0!important;
  background:#fff!important;
  border-top:1px solid #e5eaf1!important;
  box-sizing:border-box!important;
}
.tav-chat-composer-v27 .tav-chat-attach-outside,
.tav-chat-composer-v27 .tav-chat-mic-outside{
  position:static!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  flex:0 0 30px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#f8fafc!important;
  border:1px solid #dfe5ee!important;
  color:#7b8492!important;
  font-size:14px!important;
  line-height:1!important;
  padding:0!important;
  margin:0!important;
}
.tav-chat-composer-v27 .tav-chat-input-capsule{
  position:relative!important;
  height:32px!important;
  min-height:32px!important;
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:0 7px 0 11px!important;
  margin:0!important;
  background:#f8fafc!important;
  border:1px solid #dfe5ee!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
}
.tav-chat-composer-v27 .tav-chat-input-capsule #tav-chat-message{
  position:static!important;
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:100%!important;
  height:26px!important;
  min-height:26px!important;
  max-height:26px!important;
  line-height:18px!important;
  padding:4px 3px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  resize:none!important;
  font-size:12.5px!important;
  overflow:hidden!important;
}
.tav-chat-composer-v27 .tav-chat-emoji-inline{
  position:static!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  flex:0 0 24px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  background:transparent!important;
  color:#7b8492!important;
  font-size:13px!important;
  padding:0!important;
  margin:0!important;
}
.tav-chat-composer-v27 .tav-chat-emoji-panel{position:absolute!important;right:45px!important;bottom:42px!important}.tav-chat-composer-v27 .tav-chat-send{display:none!important;position:static!important}.tav-chat-composer-v27:after{content:none!important}@media(max-width:820px){.tav-chat-composer-v27{height:48px!important;min-height:48px!important;flex-basis:48px!important}.tav-chat-composer-v27 .tav-chat-send{display:grid!important;width:30px!important;height:30px!important;min-width:30px!important;flex-basis:30px!important}}

/* Chat widget v2.9 — composer isolado, sem conflito com CSS antigo */
.tav-chat-room .oc-chat-compose{
  flex:0 0 44px!important;
  height:44px!important;
  min-height:44px!important;
  width:100%!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px 10px!important;
  margin:0!important;
  background:#fff!important;
  border-top:1px solid #e5eaf1!important;
  box-sizing:border-box!important;
}
.tav-chat-room .oc-chat-icon{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#f7f8fa!important;
  border:1px solid #e0e5ec!important;
  color:#7b8492!important;
  font-size:14px!important;
  line-height:1!important;
  padding:0!important;
  margin:0!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.tav-chat-room .oc-chat-icon:hover{background:#eef2f7!important;color:#1E3A8A!important}
.tav-chat-room .oc-chat-field{
  flex:1 1 auto!important;
  min-width:0!important;
  height:30px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:4px!important;
  padding:0 6px 0 10px!important;
  margin:0!important;
  background:#f7f8fa!important;
  border:1px solid #e0e5ec!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
  position:relative!important;
}
.tav-chat-room .oc-chat-field textarea#tav-chat-message{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  display:block!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  resize:none!important;
  overflow:hidden!important;
  padding:3px 4px!important;
  margin:0!important;
  font-size:12.5px!important;
  line-height:18px!important;
  color:#111827!important;
  border-radius:0!important;
}
.tav-chat-room .oc-chat-field textarea#tav-chat-message::placeholder{color:#9aa3af!important;font-size:12.5px!important}
.tav-chat-room .oc-chat-emoji{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  flex:0 0 24px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  background:transparent!important;
  color:#7b8492!important;
  font-size:13px!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
}
.tav-chat-room .oc-chat-send{
  display:none!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  flex:0 0 30px!important;
  border-radius:50%!important;
  background:#1E3A8A!important;
  color:#fff!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  font-size:12px!important;
  place-items:center!important;
}
.tav-chat-room .oc-chat-compose .tav-chat-emoji-panel{position:absolute!important;right:0!important;bottom:36px!important}
.tav-chat-room .oc-chat-mic.recording{background:#fee2e2!important;color:#dc2626!important;border-color:#fecaca!important;animation:tavPulse 1s infinite}
@media(max-width:820px){.tav-chat-room .oc-chat-send{display:grid!important}.tav-chat-room .oc-chat-compose{gap:5px!important;padding:6px 8px!important}.tav-chat-room .oc-chat-icon{width:28px!important;height:28px!important;min-width:28px!important;flex-basis:28px!important}}

/* Chat widget v3.0 — player de áudio dentro da bolha */
.tav-chat-audio{display:flex;align-items:center;gap:6px;margin-top:4px;background:rgba(255,255,255,.62);border:1px solid #dbeafe;border-radius:999px;padding:5px 7px;max-width:240px}.tav-chat-msg.mine .tav-chat-audio{background:rgba(255,255,255,.72)}.tav-chat-audio span{font-size:13px;flex:0 0 auto}.tav-chat-audio audio{height:28px;max-width:170px;min-width:140px}.tav-chat-audio a{font-size:11px;color:#1E3A8A;font-weight:900;flex:0 0 auto}.tav-chat-msg p:has(+ .tav-chat-audio){margin-bottom:4px}@media(max-width:820px){.tav-chat-audio{max-width:210px}.tav-chat-audio audio{max-width:145px;min-width:120px}}

/* Chat widget v3.1 — grupos admin e badges vivos */
.tav-chat-group-modal[hidden]{display:none!important}.tav-chat-group-modal{position:absolute;inset:0;background:rgba(15,23,42,.22);z-index:3;display:grid;place-items:center;padding:12px}.tav-chat-group-card{width:94%;max-height:92%;overflow:auto;background:#fff;border:1px solid #dfe5ee;border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.22);padding:12px;display:grid;gap:8px}.tav-chat-group-head{display:flex;align-items:center;justify-content:space-between}.tav-chat-group-head strong{font-size:15px;color:#111827}.tav-chat-group-head button{width:28px;height:28px;border-radius:8px;background:#f1f5f9;color:#334155;border:0;padding:0}.tav-chat-group-card input{height:36px;border-radius:10px;font-size:13px}.tav-chat-group-members{max-height:245px;overflow:auto;border:1px solid #eef2f7;border-radius:12px;padding:4px}.tav-chat-group-members label{display:flex;align-items:center;gap:8px;padding:7px;border-radius:10px}.tav-chat-group-members label:hover{background:#f8fafc}.tav-chat-group-members input{width:15px;height:15px}.tav-chat-group-members strong{display:block;font-size:12.5px;color:#111827}.tav-chat-group-members small{display:block;font-size:10.5px;color:#64748b}.tav-chat-toolbar button{font-weight:900}.header-chat-trigger b,.tav-chat-fab b{pointer-events:none}

/* Chat widget v3.2 — filtro Grupos para todos */
.tav-chat-toolbar .tav-chat-toolbar-small{padding:0 9px!important;min-width:auto!important;background:#f8fafc!important;color:#475569!important;border:1px solid #e5e7eb!important}.tav-chat-toolbar .tav-chat-toolbar-small.active{background:#1E3A8A!important;color:#fff!important;border-color:#1E3A8A!important}

/* Chat widget v3.3 — figurinhas animadas internas */
.tav-chat-room .oc-chat-sticker{width:24px!important;height:24px!important;min-width:24px!important;flex:0 0 24px!important;display:grid!important;place-items:center!important;border:0!important;background:transparent!important;color:#7b8492!important;font-size:13px!important;padding:0!important;margin:0!important;box-shadow:none!important}.tav-chat-room .oc-chat-sticker:hover{color:#1E3A8A!important}.tav-chat-sticker-panel{display:none;position:absolute;right:4px;bottom:36px;width:250px;grid-template-columns:repeat(2,1fr);gap:6px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:8px;box-shadow:0 18px 42px rgba(15,23,42,.18);z-index:4}.tav-chat-sticker-panel.open{display:grid}.tav-chat-sticker-panel button{height:58px;border-radius:14px;border:1px solid #eef2f7;background:#f8fafc;color:#111827;display:flex;align-items:center;gap:8px;padding:7px;text-align:left;box-shadow:none}.tav-chat-sticker-panel button:hover{background:#eff6ff;border-color:#bfdbfe}.tav-chat-sticker-panel span{font-size:25px;animation:tavStickerFloat 1.5s ease-in-out infinite}.tav-chat-sticker-panel strong{font-size:11px;line-height:1.05}.tav-chat-msg.sticker-msg{background:transparent!important;border:0!important;box-shadow:none!important;padding:2px!important;max-width:190px!important}.tav-chat-sticker-bubble{display:grid;place-items:center;gap:2px;min-width:112px;min-height:92px;border-radius:20px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 8px 20px rgba(15,23,42,.08);padding:10px}.tav-chat-sticker-bubble span{font-size:42px;line-height:1;animation:tavStickerPop 1.15s ease-in-out infinite}.tav-chat-sticker-bubble strong{font-size:12px;color:#111827;text-align:center}.tav-chat-sticker-bubble.ok{background:#ecfdf5}.tav-chat-sticker-bubble.info{background:#eff6ff}.tav-chat-sticker-bubble.warm{background:#fff7ed}.tav-chat-sticker-bubble.party{background:#fef3c7}.tav-chat-sticker-bubble.alert{background:#fee2e2}.tav-chat-sticker-bubble.top{background:#f0fdf4}.tav-chat-sticker-bubble.fun{background:#fdf2f8}.tav-chat-sticker-bubble.heart{background:#fff1f2}@keyframes tavStickerPop{0%,100%{transform:scale(1) rotate(0deg)}45%{transform:scale(1.12) rotate(-3deg)}70%{transform:scale(1.04) rotate(2deg)}}@keyframes tavStickerFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}@media(max-width:820px){.tav-chat-sticker-panel{width:230px;right:0}.tav-chat-sticker-bubble span{font-size:38px}}

/* Chat widget v3.4 — upload/admin de figurinhas */
.tav-chat-sticker-admin-modal[hidden]{display:none!important}.tav-chat-sticker-admin-modal{position:absolute;inset:0;background:rgba(15,23,42,.24);z-index:5;display:grid;place-items:center;padding:12px}.tav-chat-sticker-admin-card{width:min(96%,720px);max-height:min(88vh,760px);overflow-y:auto;background:#fff;border:1px solid #dfe5ee;border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.22);padding:12px;display:grid;gap:8px}.tav-chat-sticker-admin-card input{height:36px;border-radius:10px;font-size:13px}.tav-chat-sticker-admin-card input[type=file]{height:auto;padding:9px;background:#f8fafc}.tav-chat-sticker-admin-card small{font-size:11px;color:#64748b}.tav-chat-sticker-panel button.admin-add{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1E3A8A!important}.tav-chat-sticker-panel button img{width:34px;height:34px;object-fit:contain;border-radius:8px}.tav-chat-sticker-bubble.custom{background:transparent;border:0;box-shadow:none;min-width:116px;min-height:96px;padding:4px}.tav-chat-sticker-bubble.custom img{max-width:150px;max-height:120px;object-fit:contain;border-radius:12px;animation:tavStickerPop 1.4s ease-in-out infinite}.tav-chat-sticker-bubble.custom strong{background:rgba(255,255,255,.88);border:1px solid #e5e7eb;border-radius:999px;padding:3px 8px;margin-top:3px}.tav-chat-msg.sticker-msg .tav-chat-sticker-bubble.custom+small{margin-top:0}

/* Chat widget v3.5 — trava anti-envio duplicado */
.oc-chat-compose textarea:disabled{opacity:.72}.oc-chat-send:disabled{opacity:.55;cursor:not-allowed}.oc-chat-compose.sending{opacity:.9}

/* Chat widget v3.6 — indicador online */
.tav-chat-avatar{position:relative}.tav-online-dot{position:absolute;right:0;bottom:0;width:10px;height:10px;border-radius:50%;background:#22c55e;border:2px solid #fff;box-shadow:0 0 0 1px rgba(34,197,94,.25)}.tav-chat-conv.online .tav-chat-conv-text strong:after{content:' online';font-size:9px;font-weight:800;color:#16a34a;margin-left:4px;text-transform:none}.tav-chat-room-head .tav-online-dot{right:1px;bottom:1px}

/* Chat widget v3.7 — abas upload/gerar com IA */
.tav-sticker-tabs{display:flex;gap:6px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:4px}.tav-sticker-tabs button{flex:1;height:30px;border-radius:9px;background:transparent;color:#475569;padding:0;font-size:12px}.tav-sticker-tabs button.active{background:#1E3A8A;color:#fff}.tav-sticker-tab{display:none;gap:8px}.tav-sticker-tab.active{display:grid}.tav-sticker-ai-row{display:grid;grid-template-columns:1fr 64px;gap:8px}.tav-sticker-ai-row input[type=color]{padding:3px;height:36px}.tav-chat-sticker-panel button.admin-add span{font-size:22px}.tav-chat-sticker-admin-card button{height:36px}

/* Chat widget v3.8 — launcher flutuante travado circular */
button.tav-chat-fab,
.tav-chat-fab{
  position:fixed!important;
  right:24px!important;
  bottom:24px!important;
  left:auto!important;
  top:auto!important;
  width:60px!important;
  min-width:60px!important;
  max-width:60px!important;
  height:60px!important;
  min-height:60px!important;
  max-height:60px!important;
  padding:0!important;
  margin:0!important;
  border-radius:50%!important;
  background:#1E3A8A!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 14px 30px rgba(30,58,138,.28)!important;
  z-index:80!important;
  display:grid!important;
  place-items:center!important;
  font-size:24px!important;
  line-height:1!important;
  text-align:center!important;
  flex:none!important;
}
button.tav-chat-fab b,
.tav-chat-fab b{
  position:absolute!important;
  right:-2px!important;
  top:-2px!important;
  min-width:20px!important;
  width:auto!important;
  height:20px!important;
  border-radius:999px!important;
  background:#ef4444!important;
  color:#fff!important;
  border:2px solid #fff!important;
  font-size:10px!important;
  line-height:16px!important;
  display:grid!important;
  place-items:center!important;
  padding:0 5px!important;
  box-sizing:border-box!important;
}
@media(max-width:820px){
  button.tav-chat-fab,
  .tav-chat-fab{
    right:16px!important;
    bottom:76px!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    border-radius:50%!important;
    font-size:22px!important;
  }
}

/* Chat widget v3.9 — busca e rolagem nas figurinhas */
.tav-chat-sticker-panel{
  width:280px!important;
  max-height:420px!important;
  grid-template-columns:1fr!important;
  overflow:hidden!important;
  padding:8px!important;
}
.tav-chat-sticker-panel.open{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
.tav-sticker-search{position:sticky;top:0;background:#fff;z-index:2;padding-bottom:6px}.tav-sticker-search input{height:34px;border-radius:10px;font-size:12.5px;padding:8px 10px;background:#f8fafc}.tav-sticker-grid{min-height:0;max-height:360px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding-right:3px;scrollbar-width:thin}.tav-sticker-grid::-webkit-scrollbar{width:6px}.tav-sticker-grid::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.tav-sticker-grid button{min-height:58px}.tav-sticker-grid button[style*="display: none"]{display:none!important}@media(max-width:820px){.tav-chat-sticker-panel{width:260px!important;max-height:360px!important}.tav-sticker-grid{max-height:300px!important}}

/* Chat widget v4.0 — indicador online mais visível */
.tav-online-dot{
  right:-2px!important;
  bottom:-2px!important;
  width:14px!important;
  height:14px!important;
  min-width:14px!important;
  min-height:14px!important;
  background:#16a34a!important;
  border:3px solid #fff!important;
  box-shadow:0 0 0 2px rgba(22,163,74,.38), 0 2px 5px rgba(15,23,42,.18)!important;
  z-index:3!important;
}
.tav-chat-conv.online .tav-chat-avatar:after{
  content:'';
  position:absolute;
  right:-4px;
  bottom:-4px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(22,163,74,.14);
  z-index:2;
}
.tav-chat-conv.online .tav-chat-conv-text strong:after{
  content:''!important;
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#16a34a;
  margin-left:5px;
  vertical-align:middle;
  box-shadow:0 0 0 2px rgba(22,163,74,.14);
}

/* Chat widget v4.1 — Gerar com IA mostra 3 opções antes de inserir */
.tav-sticker-ai-options{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff}.tav-sticker-ai-options>small,.tav-sticker-ai-options>p,.tav-sticker-ai-options>.tav-sticker-ai-loading,.tav-sticker-ai-options>.tav-sticker-ai-ready{grid-column:1/-1}.tav-sticker-ai-loading,.tav-sticker-ai-ready{display:grid;gap:3px;padding:10px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.tav-sticker-ai-loading span,.tav-sticker-ai-ready span{font-size:12px;color:#475569}.tav-sticker-ai-ready{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.tav-sticker-ai-options article{border:1px solid #cbd5e1;border-radius:14px;background:#fff;padding:8px;text-align:center;display:grid;gap:6px;box-shadow:0 8px 20px rgba(15,23,42,.08)}.tav-sticker-ai-options img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:12px;background:linear-gradient(135deg,#f8fafc,#eef2ff)}.tav-sticker-ai-options strong{font-size:11px;color:#334155}.tav-sticker-ai-options button{height:32px;border-radius:10px;font-size:11px;padding:0 8px;background:#1E3A8A;color:#fff}.tav-sticker-ai-options button:disabled,#tav-sticker-tab-ai button:disabled{opacity:.65;cursor:wait}@media(max-width:820px){.tav-sticker-ai-options{grid-template-columns:1fr}.tav-sticker-ai-options img{max-height:180px}}

/* Chat widget v4.2 — online como anel verde no avatar */
.tav-chat-conv.online .tav-chat-avatar{
  border:2px solid #16a34a!important;
  box-shadow:0 0 0 3px rgba(22,163,74,.18), 0 2px 8px rgba(15,23,42,.10)!important;
  overflow:hidden!important;
}
.tav-chat-conv.online .tav-chat-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
}
.tav-chat-conv.online .tav-chat-avatar:after{
  display:none!important;
  content:none!important;
}
.tav-online-dot{
  right:-1px!important;
  bottom:-1px!important;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  min-height:8px!important;
  background:#22c55e!important;
  border:2px solid #fff!important;
  box-shadow:none!important;
}
.tav-chat-conv.online .tav-chat-conv-text strong:after{
  display:none!important;
  content:none!important;
}

/* Chat widget v4.3 — modo expandido sem sobrepor a estrutura da Intra */
.tav-chat-head-actions{display:flex;align-items:center;gap:6px}.tav-chat-head-actions button{width:30px!important;height:30px!important;border-radius:9px!important;background:rgba(255,255,255,.13)!important;color:#fff!important;border:0!important;font-size:17px!important;display:grid!important;place-items:center!important;padding:0!important}.tav-chat-head-actions button:hover{background:rgba(255,255,255,.22)!important}.tav-chat-widget.expanded{left:calc(var(--sidebar-width, 260px) + 18px)!important;right:360px!important;top:72px!important;bottom:24px!important;width:auto!important;height:auto!important;max-height:none!important;border-radius:20px!important;z-index:78!important}.tav-chat-widget.expanded .tav-chat-body{--tav-chat-list-width:300px;grid-template-columns:var(--tav-chat-list-width) 6px minmax(0,1fr)!important}.tav-chat-widget.expanded .tav-chat-room-head strong{max-width:520px!important}.tav-chat-widget.expanded .tav-chat-room-head small{max-width:520px!important}.tav-chat-widget.expanded .tav-chat-messages{padding:16px!important}.tav-chat-widget.expanded .tav-chat-msg{max-width:72%!important}.tav-chat-widget.expanded .oc-chat-compose{padding:10px 12px!important}.tav-chat-widget.expanded~.tav-chat-fab,.tav-chat-widget.expanded + .tav-chat-fab{display:none!important}@media(max-width:1180px){.tav-chat-widget.expanded{left:calc(var(--sidebar-width, 240px) + 12px)!important;right:18px!important;top:68px!important;bottom:18px!important}.tav-chat-widget.expanded .tav-chat-body{--tav-chat-list-width:250px!important}}@media(max-width:820px){.tav-chat-widget.expanded{left:10px!important;right:10px!important;top:14px!important;bottom:88px!important;width:auto!important;height:auto!important;border-radius:18px!important}.tav-chat-widget.expanded .tav-chat-body{--tav-chat-list-width:150px!important;grid-template-columns:var(--tav-chat-list-width) 4px minmax(0,1fr)!important}.tav-chat-widget.expanded .tav-chat-msg{max-width:86%!important}}

/* RH pendências — fila operacional de decisão */
.rh-pending-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.rh-pending-section{margin-bottom:16px}.rh-inline-review{margin-top:10px;display:grid;grid-template-columns:minmax(140px,180px) minmax(220px,1fr) auto;gap:8px;align-items:end}.rh-inline-review select,.rh-inline-review textarea{width:100%;border:1px solid #dbe3ef;border-radius:10px;padding:9px 10px;background:#fff}.rh-inline-review textarea{min-height:42px;resize:vertical}@media(max-width:820px){.rh-pending-kpis{grid-template-columns:1fr}.rh-inline-review{grid-template-columns:1fr}.rh-inline-review button{width:100%}}

/* Chat widget v4.4 — geração de figurinha por IA visual */
#tav-chat-ai-label{min-height:74px;resize:vertical;border:1px solid #dbe3ef;border-radius:12px;padding:9px 10px;font-size:13px;background:#fff}.tav-sticker-ai-check{display:flex!important;align-items:center;gap:7px;font-size:12px;color:#334155;font-weight:800;margin:2px 0}.tav-sticker-ai-check input{width:auto!important}.tav-sticker-ai-options .warn{grid-column:1/-1;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:10px;padding:7px 9px;font-weight:800}.tav-sticker-ai-options article img{background:linear-gradient(135deg,#f8fafc,#eef2ff)}

.tav-sticker-manage-head{display:grid;grid-template-columns:1fr auto;gap:8px}.tav-sticker-manage-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:4px}.tav-sticker-manage-list article{display:grid;grid-template-columns:52px 1fr auto;gap:9px;align-items:center;border:1px solid #e2e8f0;background:#f8fafc;border-radius:12px;padding:8px}.tav-sticker-manage-media{width:46px;height:46px;border-radius:10px;background:#fff;display:grid;place-items:center;overflow:hidden}.tav-sticker-manage-media img{max-width:100%;max-height:100%;object-fit:contain}.tav-sticker-manage-list b{display:block;font-size:13px;color:#0f172a}.tav-sticker-manage-list small{display:block;font-size:11px;color:#64748b}.tav-sticker-manage-list article button{background:#dc2626;color:#fff;border:0;border-radius:9px;height:32px;padding:0 10px;font-size:12px}

/* Chat sticker messages: label hidden in sent bubble; name remains in picker/manage. */
.tav-chat-msg.sticker-msg .tav-chat-sticker-bubble strong{display:none!important}
.tav-chat-msg.sticker-msg .tav-chat-sticker-bubble.custom{gap:0!important}
.tav-chat-msg.sticker-msg .tav-chat-sticker-bubble.custom img{margin:0!important}

/* Sticker picker v2 — WhatsApp-like visual grid + favorites */
.tav-chat-sticker-panel{
  width:390px!important;max-height:560px!important;padding:10px!important;border-radius:18px!important;
  display:none!important;grid-template-rows:auto auto auto minmax(0,1fr)!important;gap:8px!important;background:#fff!important;
}
.tav-chat-sticker-panel.open{display:grid!important}
.tav-sticker-search{position:sticky!important;top:0!important;background:#fff!important;z-index:3!important;padding:0!important}
.tav-sticker-search input{height:38px!important;border-radius:12px!important;background:#fff!important;border:1px solid #d8dee9!important;font-size:13px!important;padding:9px 12px!important}
.tav-sticker-tabs-strip{display:flex;gap:6px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:thin;border-bottom:1px solid #eef2f7}
.tav-sticker-tabs-strip button{height:30px!important;min-height:30px!important;white-space:nowrap;border:0!important;border-radius:999px!important;background:#f1f5f9!important;color:#334155!important;padding:0 10px!important;display:flex!important;align-items:center!important;gap:5px!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important;flex:0 0 auto!important}
.tav-sticker-tabs-strip button.active{background:#1E3A8A!important;color:#fff!important}
.tav-sticker-tabs-strip button span{font-size:13px!important;animation:none!important}.tav-sticker-tabs-strip button em{font-style:normal;font-size:10px;opacity:.72}
.tav-sticker-actions{display:flex;gap:6px}.tav-sticker-actions button{height:30px!important;min-height:30px!important;border-radius:10px!important;background:#eff6ff!important;border:1px solid #bfdbfe!important;color:#1e3a8a!important;font-size:12px!important;font-weight:900!important;padding:0 10px!important;box-shadow:none!important}
.tav-sticker-grid{max-height:420px!important;overflow-y:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;padding:2px 4px 4px 0!important}
.tav-sticker-card{position:relative!important;height:86px!important;min-height:86px!important;border:1px solid transparent!important;background:#fff!important;border-radius:14px!important;padding:6px!important;display:grid!important;place-items:center!important;box-shadow:none!important;text-align:center!important;overflow:hidden!important}
.tav-sticker-card:hover{background:#f8fafc!important;border-color:#dbeafe!important;transform:translateY(-1px)}
.tav-sticker-card img{width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important;object-fit:contain!important;border-radius:0!important;background:transparent!important}
.tav-sticker-card .emoji{font-size:42px!important;line-height:1!important;animation:none!important}.tav-sticker-card strong{display:none!important}
.tav-sticker-star{position:absolute;right:4px;top:4px;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.9);border:1px solid #e2e8f0;color:#94a3b8;display:grid;place-items:center;font-style:normal;font-size:14px;line-height:1;z-index:2;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.tav-sticker-card.fav .tav-sticker-star{color:#f59e0b;border-color:#fde68a;background:#fffbeb}.tav-sticker-empty{grid-column:1/-1;color:#64748b;font-size:13px;text-align:center;padding:30px 8px}
.tav-chat-sticker-bubble.custom img{max-width:170px!important;max-height:135px!important;border-radius:0!important}.tav-chat-sticker-bubble.custom img,.tav-chat-sticker-bubble span{animation:none!important}
@media(max-width:820px){.tav-chat-sticker-panel{width:min(94vw,360px)!important;right:0!important;max-height:500px!important}.tav-sticker-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-height:360px!important}.tav-sticker-card{height:78px!important;min-height:78px!important}.tav-sticker-card img{width:58px!important;height:58px!important;max-width:58px!important;max-height:58px!important}}

/* Sticker picker v2.1 — fit inside compact chat column */
.tav-chat-room .tav-chat-sticker-panel{
  left:8px!important;
  right:8px!important;
  width:auto!important;
  max-width:none!important;
  max-height:min(460px, calc(100dvh - 260px))!important;
  overflow:hidden!important;
}
.tav-chat-widget.expanded .tav-chat-room .tav-chat-sticker-panel{
  left:auto!important;
  right:12px!important;
  width:min(430px, calc(100% - 24px))!important;
  max-height:560px!important;
}
.tav-chat-room .tav-sticker-grid{
  grid-template-columns:repeat(auto-fill,minmax(62px,1fr))!important;
  max-height:min(330px, calc(100dvh - 390px))!important;
}
.tav-chat-widget.expanded .tav-chat-room .tav-sticker-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  max-height:420px!important;
}
.tav-chat-room .tav-sticker-card{height:74px!important;min-height:74px!important;padding:5px!important}
.tav-chat-room .tav-sticker-card img{width:54px!important;height:54px!important;max-width:54px!important;max-height:54px!important}
.tav-chat-widget.expanded .tav-chat-room .tav-sticker-card{height:86px!important;min-height:86px!important}
.tav-chat-widget.expanded .tav-chat-room .tav-sticker-card img{width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important}
.tav-chat-room .tav-sticker-tabs-strip button{height:28px!important;min-height:28px!important;font-size:11.5px!important;padding:0 8px!important}
.tav-chat-room .tav-sticker-actions button{height:28px!important;min-height:28px!important;font-size:11.5px!important}
@media(max-width:820px){
  .tav-chat-room .tav-chat-sticker-panel{left:6px!important;right:6px!important;width:auto!important;max-height:min(430px, calc(100dvh - 250px))!important}
  .tav-chat-room .tav-sticker-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))!important;max-height:min(300px, calc(100dvh - 370px))!important}
}

/* Sticker picker v2.2 — same layout for admin and collaborators */
.tav-chat-room .tav-sticker-search{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px!important;align-items:center!important}
.tav-sticker-manage-mini{width:36px!important;height:36px!important;min-height:36px!important;border-radius:12px!important;background:#eff6ff!important;border:1px solid #bfdbfe!important;color:#1e3a8a!important;font-size:20px!important;font-weight:900!important;padding:0!important;display:grid!important;place-items:center!important;box-shadow:none!important;flex:0 0 auto!important}
.tav-sticker-actions{display:none!important}

/* Sticker picker v2.3 — stricter compact mode for collaborator screens */
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-chat-sticker-panel{
  left:6px!important;
  right:auto!important;
  bottom:48px!important;
  width:min(276px, calc(100% - 12px))!important;
  max-width:min(276px, calc(100% - 12px))!important;
  max-height:min(390px, calc(100% - 78px))!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  padding:8px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-grid{
  grid-template-columns:repeat(3, minmax(0,1fr))!important;
  gap:7px!important;
  max-height:min(280px, calc(100dvh - 420px))!important;
  padding-right:2px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-card{
  height:70px!important;
  min-height:70px!important;
  border-radius:12px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-card img{
  width:50px!important;
  height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-search input{height:34px!important;font-size:12.5px!important}
.tav-chat-widget:not(.expanded) .tav-sticker-manage-mini{width:34px!important;height:34px!important;min-height:34px!important}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-tabs-strip{padding-bottom:5px!important}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-tabs-strip button{height:26px!important;min-height:26px!important;font-size:11px!important;padding:0 7px!important}

/* Sticker picker v2.4 — rollback bad proportional height, stable compact drawer */
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-chat-sticker-panel{
  left:6px!important;
  right:6px!important;
  width:auto!important;
  max-width:none!important;
  bottom:48px!important;
  height:360px!important;
  max-height:360px!important;
  min-height:300px!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  overflow:hidden!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-grid{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-card{
  height:72px!important;
  min-height:72px!important;
}
.tav-chat-widget:not(.expanded) .tav-chat-room .tav-sticker-card img{
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
}
@media(max-height:720px){
  .tav-chat-widget:not(.expanded) .tav-chat-room .tav-chat-sticker-panel{height:310px!important;max-height:310px!important;min-height:280px!important}
}
@media(max-height:620px){
  .tav-chat-widget:not(.expanded) .tav-chat-room .tav-chat-sticker-panel{height:270px!important;max-height:270px!important;min-height:240px!important}
}

/* RH pending docs — review must allow visual inspection before decision */
.rh-doc-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 10px}.rh-doc-actions .button-link{margin:0}.rh-doc-actions .button-link:first-child{background:#1E3A8A;color:#fff;border-color:#1E3A8A}.rh-doc-actions .button-link.secondary{background:#f8fafc;color:#1E3A8A;border-color:#cbd5e1}

/* chat-fullscreen-v1 — botão tela cheia real no PC */
.tav-chat-widget.fullscreen{
  position:fixed!important;
  left:16px!important;right:16px!important;top:16px!important;bottom:16px!important;
  width:auto!important;height:auto!important;max-height:none!important;
  border-radius:22px!important;z-index:2600!important;
  box-shadow:0 30px 90px rgba(15,23,42,.38)!important;
}
.tav-chat-widget.fullscreen .tav-chat-body{
  --tav-chat-list-width:330px!important;
  grid-template-columns:var(--tav-chat-list-width) 6px minmax(0,1fr)!important;
}
.tav-chat-widget.fullscreen .tav-chat-head{height:62px!important;padding:12px 16px!important}
.tav-chat-widget.fullscreen .tav-chat-toolbar{height:58px!important;padding:10px 12px!important}
.tav-chat-widget.fullscreen .tav-chat-room-head{height:60px!important;padding:10px 14px!important}
.tav-chat-widget.fullscreen .tav-chat-room-head strong{max-width:720px!important;font-size:15px!important}
.tav-chat-widget.fullscreen .tav-chat-room-head small{max-width:720px!important}
.tav-chat-widget.fullscreen .tav-chat-conv{min-height:58px!important;padding:9px 10px!important}
.tav-chat-widget.fullscreen .tav-chat-avatar{width:42px!important;height:42px!important;flex-basis:42px!important}
.tav-chat-widget.fullscreen .tav-chat-messages{padding:18px!important}
.tav-chat-widget.fullscreen .tav-chat-msg{max-width:68%!important;font-size:14px!important}
.tav-chat-widget.fullscreen .tav-chat-msg p{font-size:14px!important;line-height:1.38!important}
.tav-chat-widget.fullscreen .oc-chat-compose{min-height:62px!important;padding:10px 14px!important}
.tav-chat-widget.fullscreen~.tav-chat-fab{display:none!important}
@media(max-width:820px){#tav-chat-fullscreen-btn{display:none!important}.tav-chat-widget.fullscreen{inset:0!important;border-radius:0!important}}

/* theme-v1 — claro/escuro/auto */
:root{color-scheme:light}
html[data-theme="dark"]{
  color-scheme:dark;
  --navy:#020617;--navy2:#0f172a;--blue:#60a5fa;--blue-soft:#172554;
  --bg:#07111f;--card:#101827;--text:#e5edf7;--muted:#94a3b8;--line:#243247;
  --green:#34d399;--orange:#fbbf24;--red:#f87171;--purple:#a78bfa;--yellow:#fde047;
  --shadow:0 16px 42px rgba(0,0,0,.34)
}
html[data-theme="dark"] body{background:radial-gradient(circle at top left,#10213b 0,#07111f 34%,#050b14 100%)!important;color:var(--text)!important}
html[data-theme="dark"] .app-header{background:rgba(8,17,31,.92)!important;border-bottom-color:var(--line)!important}
html[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#020617,#0f172a)!important;box-shadow:8px 0 30px rgba(0,0,0,.32)!important}
html[data-theme="dark"] .content-wrap{background:transparent!important}
html[data-theme="dark"] .page-title,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .profile-hero,
html[data-theme="dark"] .card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .mini-card,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .chat-bubble,
html[data-theme="dark"] .day-card,
html[data-theme="dark"] .feed-item,
html[data-theme="dark"] .widget,
html[data-theme="dark"] .inst-card,
html[data-theme="dark"] .inst-stats div,
html[data-theme="dark"] .calendar-event,
html[data-theme="dark"] .quick-edit-card,
html[data-theme="dark"] .benefit-card,
html[data-theme="dark"] .certificate-card,
html[data-theme="dark"] .alert-row,
html[data-theme="dark"] .user-menu-panel{
  background:rgba(15,23,42,.96)!important;border-color:var(--line)!important;color:var(--text)!important;box-shadow:0 12px 28px rgba(0,0,0,.22)!important
}
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] .day-card b,
html[data-theme="dark"] .widget-head h3,
html[data-theme="dark"] .person-row b,
html[data-theme="dark"] .event-row b,
html[data-theme="dark"] .unit-row b,
html[data-theme="dark"] .alert-main strong,
html[data-theme="dark"] .user-chip strong,
html[data-theme="dark"] .inst-unit-name{color:var(--text)!important}
html[data-theme="dark"] p,
html[data-theme="dark"] small,
html[data-theme="dark"] .muted,
html[data-theme="dark"] .feed-item p,
html[data-theme="dark"] .inst-card p,
html[data-theme="dark"] .inst-card li,
html[data-theme="dark"] .unit-info small,
html[data-theme="dark"] .calendar-event p,
html[data-theme="dark"] .calendar-desc{color:var(--muted)!important}
html[data-theme="dark"] a{color:#93c5fd!important}
html[data-theme="dark"] .search-box,
html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select,
html[data-theme="dark"] .icon-btn,
html[data-theme="dark"] .user-chip,
html[data-theme="dark"] .metrics span,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .feed-tabs span,
html[data-theme="dark"] .quick-grid a,
html[data-theme="dark"] .unit-row,
html[data-theme="dark"] th,
html[data-theme="dark"] table,
html[data-theme="dark"] .empty-state{
  background:#0b1220!important;border-color:var(--line)!important;color:var(--text)!important
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#64748b!important}
html[data-theme="dark"] tr:hover td{background:#111c2e!important}
html[data-theme="dark"] td{border-bottom-color:var(--line)!important;color:var(--text)!important}
html[data-theme="dark"] th{color:#cbd5e1!important}
html[data-theme="dark"] .secondary{background:#1e293b!important;color:#bfdbfe!important}
html[data-theme="dark"] .flash.success{background:#052e1b!important;color:#86efac!important;border:1px solid #14532d!important}
html[data-theme="dark"] .flash.error{background:#450a0a!important;color:#fecaca!important;border:1px solid #7f1d1d!important}
html[data-theme="dark"] .bg-purple{background:#2e1065!important;color:#d8b4fe!important}
html[data-theme="dark"] .bg-orange{background:#431407!important;color:#fdba74!important}
html[data-theme="dark"] .bg-green{background:#052e1b!important;color:#86efac!important}
html[data-theme="dark"] .bg-blue{background:#172554!important;color:#93c5fd!important}
html[data-theme="dark"] .bg-yellow{background:#422006!important;color:#fde68a!important}
html[data-theme="dark"] .feed-tabs span.active,
html[data-theme="dark"] .quick-edit-card.selected{background:#172554!important;color:#bfdbfe!important;border-color:#1d4ed8!important}
html[data-theme="dark"] .spotlight{background:linear-gradient(145deg,#020617,#13223b)!important}
html[data-theme="dark"] .login-wrap{background:radial-gradient(circle at top left,#172554,#07111f 46%,#020617)!important}
html[data-theme="dark"] .avatar,
html[data-theme="dark"] .chip-avatar,
html[data-theme="dark"] .mini-person,
html[data-theme="dark"] .wa-avatar,
html[data-theme="dark"] .wa-msg-avatar,
html[data-theme="dark"] .tav-chat-avatar,
html[data-theme="dark"] .tav-chat-room-head>span{background:#172554!important;color:#bfdbfe!important}
html[data-theme="dark"] .user-menu-panel a,
html[data-theme="dark"] .user-menu-action{color:#dbeafe!important}
html[data-theme="dark"] .user-menu-panel a:hover,
html[data-theme="dark"] .user-menu-action:hover{background:#111c2e!important}
.user-menu-action{width:100%;display:flex;align-items:center;gap:9px;padding:11px 12px;border-radius:12px;background:transparent;color:#334155;font-size:13px;font-weight:850;text-align:left;border:0;cursor:pointer}
.tav-theme-toggle{font-size:16px!important}.tav-theme-menu-action{font:inherit}

/* Dark chat */
html[data-theme="dark"] .tav-chat-widget,
html[data-theme="dark"] .tav-chat-room,
html[data-theme="dark"] .tav-chat-conversations,
html[data-theme="dark"] .tav-chat-toolbar,
html[data-theme="dark"] .tav-chat-room-head,
html[data-theme="dark"] .oc-chat-compose,
html[data-theme="dark"] .tav-chat-group-card,
html[data-theme="dark"] .tav-chat-sticker-admin-card,
html[data-theme="dark"] .tav-chat-sticker-panel,
html[data-theme="dark"] .tav-sticker-search,
html[data-theme="dark"] .tav-sticker-tabs{
  background:#0b1220!important;border-color:var(--line)!important;color:var(--text)!important
}
html[data-theme="dark"] .tav-chat-head{background:#0f2a4f!important}
html[data-theme="dark"] .tav-chat-messages{background:#07111f!important}
html[data-theme="dark"] .tav-chat-conv{background:transparent!important;border-bottom-color:var(--line)!important;color:var(--text)!important}
html[data-theme="dark"] .tav-chat-conv:hover,
html[data-theme="dark"] .tav-chat-conv.active{background:#13233a!important}
html[data-theme="dark"] .tav-chat-conv-text strong,
html[data-theme="dark"] .tav-chat-room-head strong,
html[data-theme="dark"] .tav-chat-msg p,
html[data-theme="dark"] .tav-chat-group-head strong{color:var(--text)!important}
html[data-theme="dark"] .tav-chat-conv-text small,
html[data-theme="dark"] .tav-chat-conv-text em,
html[data-theme="dark"] .tav-chat-room-head small,
html[data-theme="dark"] .tav-chat-empty{color:var(--muted)!important}
html[data-theme="dark"] .tav-chat-msg{background:#111c2e!important;border-color:#223047!important;color:var(--text)!important;box-shadow:none!important}
html[data-theme="dark"] .tav-chat-msg.mine{background:#17345f!important;border-color:#1d4ed8!important}
html[data-theme="dark"] .oc-chat-field,
html[data-theme="dark"] .oc-chat-field textarea,
html[data-theme="dark"] .tav-chat-toolbar input,
html[data-theme="dark"] .tav-sticker-search input{background:#07111f!important;color:var(--text)!important;border-color:var(--line)!important}
html[data-theme="dark"] .oc-chat-icon,
html[data-theme="dark"] .tav-chat-toolbar button,
html[data-theme="dark"] .tav-sticker-card,
html[data-theme="dark"] .tav-sticker-tabs button{background:#111c2e!important;color:#cbd5e1!important;border-color:var(--line)!important}
html[data-theme="dark"] .tav-sticker-card:hover{background:#172554!important;border-color:#1d4ed8!important}
html[data-theme="dark"] .tav-chat-attach{background:#111c2e!important;border-color:#1d4ed8!important;color:#bfdbfe!important}
html[data-theme="dark"] .mobile-bottom-nav{background:rgba(11,18,32,.96)!important;border-color:var(--line)!important;box-shadow:0 -12px 30px rgba(0,0,0,.34)!important}
html[data-theme="dark"] .mobile-bottom-nav a{color:#94a3b8!important}
html[data-theme="dark"] .mobile-bottom-nav a.active{background:#172554!important;color:#bfdbfe!important;box-shadow:inset 0 0 0 1px #1d4ed8!important}
@media(max-width:820px){.tav-theme-toggle{display:none!important}.user-menu-action{min-height:42px!important}}

/* dark-contrast-v2 — corrige textos fixos escuros que apagavam no tema dark */
html[data-theme="dark"]{
  --dark-surface:#0b1220;
  --dark-surface-2:#111c2e;
  --dark-surface-3:#17243a;
  --dark-text:#e5edf7;
  --dark-muted:#a8b3c5;
  --dark-strong:#f8fafc;
}
html[data-theme="dark"] body,
html[data-theme="dark"] .main-area,
html[data-theme="dark"] .content-wrap{color:var(--dark-text)!important}

/* Texto comum dentro de superfícies escuras */
html[data-theme="dark"] .content-wrap :is(span,div,p,li,dt,dd,label,strong,b,em,td,th,small),
html[data-theme="dark"] .app-header :is(span,div,p,label,strong,b,em,small),
html[data-theme="dark"] .user-menu-panel :is(a,button,span,strong,small),
html[data-theme="dark"] .tav-chat-widget :is(span,div,p,label,strong,b,em,small,button),
html[data-theme="dark"] .mobile-bottom-nav :is(span,b){color:inherit}

html[data-theme="dark"] .content-wrap :is(h1,h2,h3,h4,strong,b,.wa-conv-title,.alert-main strong,.inst-facts dd,.benefit-payment-row strong,.tav-sticker-manage-list b,.tav-sticker-ai-options strong,.founder-story-card h2){color:var(--dark-strong)!important}
html[data-theme="dark"] .content-wrap :is(p,li,small,.muted,.field-help,.wa-conv-last,.alert-date,.calendar-event p,.calendar-event small,.inst-card p,.inst-card li,.unit-info small,.benefit-request-form label,.benefit-review-form label,.benefit-policy-row,.benefit-payment-row,.benefit-policy-note,.founder-story-card p,.empty-state,.chat-attachment-name){color:var(--dark-muted)!important}

/* Pílulas, tags, atalhos e labels que tinham #334155/#475569 */
html[data-theme="dark"] :is(.metrics span,.badge,.feed-tabs span,.quick-grid a,.value-tags span,.chat-top-actions span,.tav-sticker-tabs-strip button,.tav-chat-toolbar .tav-chat-toolbar-small,.chat-filters button,.chat-quick-reactions button,.tav-sticker-ai-check){color:#dbeafe!important}
html[data-theme="dark"] :is(.feed-tag,.feed-cta,.inst-eyebrow,.calendar-desc,.real-event small,.unit-info small:nth-of-type(2)){color:#93c5fd!important}
html[data-theme="dark"] .spotlight :is(h1,h2,h3,h4,b,strong,p,small,span){color:#fff!important}
html[data-theme="dark"] .spotlight .award{color:#111827!important}

/* Cartões/caixas adicionais que ficavam claras com texto escuro */
html[data-theme="dark"] :is(.benefit-policy-box,.inst-note,.wa-sidebar,.wa-sidebar-head,.wa-group-form,.wa-window,.wa-window-head,.chat-topbar,.chat-search-wrap,.chat-filters,.improved-composer,.whatsapp-composer,.whatsapp-input-pill,.tav-sticker-ai-options,.tav-sticker-ai-options article,.tav-sticker-manage-list article,.tav-sticker-manage-media){background:var(--dark-surface)!important;border-color:var(--line)!important;color:var(--dark-text)!important}
html[data-theme="dark"] :is(.wa-conversation,.wa-message,.chat-day-separator,.chat-attachment,.chat-reactions-line span,.tav-chat-sticker-bubble,.tav-sticker-ai-loading,.tav-sticker-ai-ready){background:var(--dark-surface-2)!important;border-color:var(--line)!important;color:var(--dark-text)!important}
html[data-theme="dark"] :is(.wa-conversation:hover,.wa-conversation.active,.wa-conversation.has-unread,.chat-filters button.active,.tav-sticker-tabs-strip button.active){background:#172554!important;color:#bfdbfe!important;border-color:#1d4ed8!important}
html[data-theme="dark"] .wa-message.mine{background:#17345f!important;color:var(--dark-text)!important}
html[data-theme="dark"] .wa-message :is(p,strong,small),
html[data-theme="dark"] .wa-conversation :is(span,div,strong,small,b),
html[data-theme="dark"] .chat-topbar :is(h1,p,span),
html[data-theme="dark"] .tav-sticker-ai-options :is(strong,span,small,p),
html[data-theme="dark"] .tav-sticker-manage-list :is(b,small){color:inherit!important}

/* Formulários, inputs transparentes e textos herdados */
html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select,
html[data-theme="dark"] .whatsapp-input-pill textarea,
html[data-theme="dark"] #tav-chat-ai-label{background:#07111f!important;color:var(--dark-text)!important;border-color:var(--line)!important}
html[data-theme="dark"] input:focus,
html[data-theme="dark"] textarea:focus,
html[data-theme="dark"] select:focus{border-color:#60a5fa!important;outline-color:rgba(96,165,250,.24)!important}

/* Chat/stickers: itens específicos com cor fixa */
html[data-theme="dark"] .tav-chat-sticker-panel button,
html[data-theme="dark"] .tav-sticker-card,
html[data-theme="dark"] .tav-sticker-tabs button,
html[data-theme="dark"] .tav-sticker-manage-list article button:not(.danger){color:#dbeafe!important}
html[data-theme="dark"] .tav-chat-sticker-bubble strong,
html[data-theme="dark"] .tav-chat-sticker-bubble span{color:var(--dark-strong)!important}
html[data-theme="dark"] .tav-chat-sticker-bubble:is(.ok,.info,.warm,.party,.alert,.top,.fun,.heart){background:var(--dark-surface-2)!important;border-color:var(--line)!important}
html[data-theme="dark"] .tav-chat-sticker-bubble.custom strong{background:rgba(15,23,42,.92)!important;color:var(--dark-strong)!important;border-color:var(--line)!important}
html[data-theme="dark"] .tav-chat-room .oc-chat-sticker,
html[data-theme="dark"] .chat-emoji-btn,
html[data-theme="dark"] .whatsapp-input-pill .chat-attach-btn{color:#cbd5e1!important}
html[data-theme="dark"] .danger,
html[data-theme="dark"] .danger-link,
html[data-theme="dark"] .tav-sticker-manage-list article button{color:#fff!important}

/* Ícones/avatares com texto azul sobre fundo escuro */
html[data-theme="dark"] :is(.calendar-hero-icon,.calendar-icon,.feed-icon,.day-icon,.alert-icon,.unit-logo){color:#dbeafe!important;border-color:var(--line)!important}
html[data-theme="dark"] :is(.calendar-icon.purple,.calendar-icon.blue,.calendar-icon.green,.calendar-icon.orange){background:#172554!important}

/* Tabelas e código */
html[data-theme="dark"] code{background:#111c2e!important;color:#dbeafe!important}
html[data-theme="dark"] tr:hover td{background:#13233a!important;color:var(--dark-text)!important}

/* Fallback final dentro de cards: se algum componente esqueceu cor fixa, herda texto claro */
html[data-theme="dark"] :is(.card,.panel,.mini-card,.widget,.feed-item,.day-card,.profile-hero,.hero,.page-title,.inst-card,.calendar-event,.benefit-card,.certificate-card,.alert-row) *{border-color:var(--line)}

/* chat-input-contrast-v3 — campo "Escrever mensagem" legível no dark mode */
html[data-theme="dark"] #tav-chat-message,
html[data-theme="dark"] textarea#tav-chat-message,
html[data-theme="dark"] .oc-chat-field textarea#tav-chat-message{
  color:#f8fafc!important;
  caret-color:#93c5fd!important;
  -webkit-text-fill-color:#f8fafc!important;
}
html[data-theme="dark"] #tav-chat-message::placeholder,
html[data-theme="dark"] textarea#tav-chat-message::placeholder,
html[data-theme="dark"] .oc-chat-field textarea#tav-chat-message::placeholder{
  color:#cbd5e1!important;
  opacity:1!important;
}
html[data-theme="dark"] .oc-chat-field{
  background:#111c2e!important;
  border:1px solid #334155!important;
}
html[data-theme="dark"] .oc-chat-field:focus-within{
  border-color:#60a5fa!important;
  box-shadow:0 0 0 3px rgba(96,165,250,.18)!important;
}

/* institutional-dark-v4 — contraste específico do módulo Institucional */
html[data-theme="dark"] .institutional-page,
html[data-theme="dark"] .institutional-page *{
  color:#e5edf7!important;
}
html[data-theme="dark"] .institutional-page .inst-hero,
html[data-theme="dark"] .institutional-page .inst-card,
html[data-theme="dark"] .institutional-page .founder-story-card,
html[data-theme="dark"] .institutional-page .inst-stats div,
html[data-theme="dark"] .institutional-page .unit-row{
  background:rgba(15,23,42,.96)!important;
  border-color:#334155!important;
  color:#e5edf7!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
}
html[data-theme="dark"] .institutional-page .inst-hero{
  background:linear-gradient(135deg,#0b1220,#111c2e)!important;
}
html[data-theme="dark"] .institutional-page :is(h1,h2,h3,h4,.inst-unit-name,.inst-facts dd,.unit-row b,.founder-story-card h2,.inst-stats b){
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}
html[data-theme="dark"] .institutional-page :is(p,li,small,.inst-card p,.inst-card li,.founder-story-card p,.unit-info small,.inst-facts dt,.inst-stats span,.widget-head small){
  color:#cbd5e1!important;
  -webkit-text-fill-color:#cbd5e1!important;
}
html[data-theme="dark"] .institutional-page .inst-eyebrow,
html[data-theme="dark"] .institutional-page .value-tags span{
  background:#172554!important;
  color:#bfdbfe!important;
  -webkit-text-fill-color:#bfdbfe!important;
  border:1px solid #1d4ed8!important;
}
html[data-theme="dark"] .institutional-page .inst-facts div{
  border-top-color:#334155!important;
}
html[data-theme="dark"] .institutional-page .unit-logo{
  background:#172554!important;
  color:#dbeafe!important;
  -webkit-text-fill-color:#dbeafe!important;
  border:1px solid #1d4ed8!important;
}
html[data-theme="dark"] .institutional-page .founder-story-photo,
html[data-theme="dark"] .institutional-page .founder-story-placeholder{
  background:linear-gradient(135deg,#020617,#172554)!important;
  border-color:#334155!important;
}
html[data-theme="dark"] .institutional-page .founder-story-placeholder :is(strong,span,small){
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}
html[data-theme="dark"] .institutional-page .inst-stats b{
  color:#93c5fd!important;
  -webkit-text-fill-color:#93c5fd!important;
}

/* calendar-dark-v5 — contraste específico do Calendário */
html[data-theme="dark"] .calendar-page,
html[data-theme="dark"] .calendar-page *{
  color:#e5edf7!important;
}
html[data-theme="dark"] .calendar-page .calendar-hero,
html[data-theme="dark"] .calendar-page .inst-card,
html[data-theme="dark"] .calendar-page .calendar-event,
html[data-theme="dark"] .calendar-page .birthday-row{
  background:rgba(15,23,42,.96)!important;
  border-color:#334155!important;
  color:#e5edf7!important;
  box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
}
html[data-theme="dark"] .calendar-page .calendar-hero{
  background:linear-gradient(135deg,#0b1220,#111c2e)!important;
}
html[data-theme="dark"] .calendar-page :is(h1,h2,h3,h4,.calendar-event h3,.birthday-row b){
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}
html[data-theme="dark"] .calendar-page :is(p,small,.widget-head small,.calendar-event p,.calendar-event small,.calendar-desc,.birthday-row small){
  color:#cbd5e1!important;
  -webkit-text-fill-color:#cbd5e1!important;
}
html[data-theme="dark"] .calendar-page .calendar-desc{
  color:#a8b3c5!important;
  -webkit-text-fill-color:#a8b3c5!important;
}
html[data-theme="dark"] .calendar-page .inst-eyebrow{
  background:#172554!important;
  color:#bfdbfe!important;
  -webkit-text-fill-color:#bfdbfe!important;
  border:1px solid #1d4ed8!important;
}
html[data-theme="dark"] .calendar-page .calendar-hero-icon,
html[data-theme="dark"] .calendar-page .calendar-icon,
html[data-theme="dark"] .calendar-page .mini-person{
  background:#172554!important;
  color:#dbeafe!important;
  -webkit-text-fill-color:#dbeafe!important;
  border:1px solid #1d4ed8!important;
}
html[data-theme="dark"] .calendar-page .calendar-icon.green{background:#052e1b!important;border-color:#166534!important;color:#bbf7d0!important;-webkit-text-fill-color:#bbf7d0!important}
html[data-theme="dark"] .calendar-page .calendar-icon.blue{background:#172554!important;border-color:#1d4ed8!important;color:#bfdbfe!important;-webkit-text-fill-color:#bfdbfe!important}
html[data-theme="dark"] .calendar-page .calendar-icon.orange{background:#431407!important;border-color:#c2410c!important;color:#fed7aa!important;-webkit-text-fill-color:#fed7aa!important}
html[data-theme="dark"] .calendar-page .calendar-icon.purple{background:#2e1065!important;border-color:#7e22ce!important;color:#e9d5ff!important;-webkit-text-fill-color:#e9d5ff!important}
html[data-theme="dark"] .calendar-page .birthday-row{
  box-shadow:none!important;
  border-bottom:1px solid #334155!important;
}
html[data-theme="dark"] .calendar-page .birthday-list .birthday-row:last-child{border-bottom-color:transparent!important}

/* chat-font-bump-v1 — aumentar levemente fontes da lista de contatos e conversas */
.tav-chat-conv-text strong{font-size:13.6px!important;line-height:1.16!important;font-weight:780!important}
.tav-chat-conv-text small{font-size:10.8px!important;line-height:1.15!important}
.tav-chat-conv-text em{font-size:11.4px!important;line-height:1.16!important}
.tav-chat-room-head strong{font-size:14.2px!important;line-height:1.16!important}
.tav-chat-room-head small{font-size:11px!important;line-height:1.15!important}
.tav-chat-msg{font-size:14.2px!important}
.tav-chat-msg p{font-size:14.2px!important;line-height:1.34!important}
@media(max-width:820px){
  .tav-chat-conv-text strong{font-size:13px!important}
  .tav-chat-conv-text small{font-size:10.4px!important}
  .tav-chat-conv-text em{font-size:11px!important}
  .tav-chat-room-head strong{font-size:13.8px!important}
  .tav-chat-room-head small{font-size:10.8px!important}
  .tav-chat-msg,.tav-chat-msg p{font-size:13.8px!important}
}

/* Feed publisher layouts + image upload */
.feed-publish-panel form{display:grid;gap:12px}.publish-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feed-upload-box{border:1px dashed #bfdbfe;background:#f8fbff;border-radius:16px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#2563eb;font-weight:850;cursor:pointer}.feed-upload-box input{max-width:260px}.feed-body{min-width:0}.feed-thumb{overflow:hidden}.feed-thumb img{width:100%;height:100%;object-fit:cover;border-radius:18px}.feed-hero-image{width:100%;max-height:340px;object-fit:cover;border-radius:18px;margin:8px 0 12px;border:1px solid var(--line);display:block}.feed-layout-image_card,.feed-layout-event_card,.feed-layout-announcement_card,.feed-layout-recognition_card{grid-template-columns:52px minmax(0,1fr);align-items:start}.feed-layout-image_card .feed-thumb,.feed-layout-event_card .feed-thumb,.feed-layout-announcement_card .feed-thumb,.feed-layout-recognition_card .feed-thumb{display:none}.feed-layout-event_card{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.feed-layout-announcement_card{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.feed-layout-recognition_card{border-color:#ddd6fe;background:linear-gradient(180deg,#f5f3ff,#fff)}
html[data-theme="dark"] .feed-upload-box{background:#0f172a;border-color:#334155;color:#bfdbfe}html[data-theme="dark"] .feed-layout-event_card{background:linear-gradient(180deg,rgba(124,45,18,.32),var(--card));border-color:#7c2d12}html[data-theme="dark"] .feed-layout-announcement_card{background:linear-gradient(180deg,rgba(30,64,175,.25),var(--card));border-color:#1e3a8a}html[data-theme="dark"] .feed-layout-recognition_card{background:linear-gradient(180deg,rgba(88,28,135,.25),var(--card));border-color:#581c87}
@media(max-width:860px){.publish-grid{grid-template-columns:1fr}.feed-upload-box{display:grid}.feed-upload-box input{max-width:100%}.feed-layout-image_card,.feed-layout-event_card,.feed-layout-announcement_card,.feed-layout-recognition_card{grid-template-columns:42px minmax(0,1fr)}}

/* Feed post editing + safer people photo rendering */
.feed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px}.feed-edit-box{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:14px;padding:10px;background:#f8fafc}.feed-edit-box summary{cursor:pointer;font-weight:850;color:#2563eb}.feed-edit-box form{display:grid;gap:10px;margin-top:10px}.feed-remove-image{font-size:12px;color:#64748b;display:flex;align-items:center;gap:8px}.danger-btn{color:#b91c1c!important;border-color:#fecaca!important;background:#fff5f5!important}.feed-hero-image{object-fit:contain!important;object-position:center center;background:#f8fafc;max-height:560px}.feed-layout-event_card .feed-hero-image,.feed-layout-recognition_card .feed-hero-image{object-fit:contain!important}html[data-theme="dark"] .feed-edit-box,html[data-theme="dark"] .feed-hero-image{background:#0f172a}html[data-theme="dark"] .danger-btn{background:#2a1111!important;border-color:#7f1d1d!important;color:#fecaca!important}

/* Feed layout visual differentiation v2 */
.feed-layout-standard.has-feed-image{grid-template-columns:52px minmax(0,1fr) 120px}.feed-layout-standard .feed-thumb{width:112px;height:84px;border-radius:18px;background:#f1f5f9}.feed-layout-image_card .feed-body,.feed-layout-event_card .feed-body,.feed-layout-announcement_card .feed-body,.feed-layout-recognition_card .feed-body{padding-right:0}.feed-layout-image_card .feed-hero-image{max-height:none;aspect-ratio:auto;object-fit:contain;background:#f8fafc}.feed-layout-event_card{position:relative;border-left:6px solid #f97316!important}.feed-layout-event_card .feed-tag::after{content:' · EVENTO';}.feed-layout-announcement_card{position:relative;border-left:6px solid #2563eb!important}.feed-layout-announcement_card .feed-tag::after{content:' · COMUNICADO VISUAL';}.feed-layout-recognition_card{position:relative;border-left:6px solid #7c3aed!important}.feed-layout-recognition_card .feed-tag::after{content:' · RECONHECIMENTO';}.feed-layout-recognition_card h3::before{content:'🏆 ';}.feed-layout-event_card h3::before{content:'📅 ';}.feed-layout-announcement_card h3::before{content:'📢 ';}.feed-layout-standard .feed-hero-image{display:none!important}
@media(max-width:860px){.feed-layout-standard.has-feed-image{grid-template-columns:42px minmax(0,1fr)}.feed-layout-standard .feed-thumb{display:none}}

/* Feed layout differentiation v3 — estruturas realmente diferentes */
.feed-layout-photo_side.has-feed-image{grid-template-columns:52px minmax(0,1fr) minmax(220px,34%);align-items:start}.feed-layout-photo_side .feed-thumb{display:block!important;width:100%;height:220px;border-radius:22px;background:#f8fafc}.feed-layout-photo_side .feed-thumb img{object-fit:contain!important;background:#f8fafc;border:1px solid var(--line)}
.feed-layout-announcement_card{box-shadow:0 18px 44px rgba(37,99,235,.12)!important}.feed-layout-announcement_card .feed-body{background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #bfdbfe;border-radius:22px;padding:18px}.feed-layout-announcement_card .feed-hero-image{border-radius:16px;border:2px solid #bfdbfe}.feed-layout-announcement_card h3{font-size:22px;color:#1d4ed8}.feed-layout-announcement_card p{font-size:15px;line-height:1.55}
.feed-layout-recognition_card{box-shadow:0 18px 44px rgba(124,58,237,.14)!important}.feed-layout-recognition_card .feed-body{background:linear-gradient(135deg,#f5f3ff,#fff7ed);border:1px solid #ddd6fe;border-radius:22px;padding:18px;text-align:center}.feed-layout-recognition_card .feed-hero-image{width:min(420px,100%);max-height:420px;margin:10px auto 14px;border-radius:999px;aspect-ratio:1/1;object-fit:cover!important;border:5px solid #ede9fe;box-shadow:0 16px 34px rgba(124,58,237,.18)}.feed-layout-recognition_card h3{font-size:22px;color:#6d28d9}.feed-layout-recognition_card p{font-size:15px;line-height:1.55}.feed-layout-recognition_card .feed-tag{display:inline-flex;background:#ede9fe;color:#6d28d9;border-radius:999px;padding:6px 12px}
.feed-layout-event_card .feed-body{background:linear-gradient(135deg,#fff7ed,#fff);border:1px solid #fed7aa;border-radius:22px;padding:18px}.feed-layout-event_card h3{font-size:22px;color:#c2410c}
html[data-theme="dark"] .feed-layout-photo_side .feed-thumb,html[data-theme="dark"] .feed-layout-photo_side .feed-thumb img{background:#0f172a}html[data-theme="dark"] .feed-layout-announcement_card .feed-body{background:linear-gradient(135deg,rgba(30,64,175,.30),var(--card));border-color:#1e3a8a}html[data-theme="dark"] .feed-layout-announcement_card h3{color:#bfdbfe}html[data-theme="dark"] .feed-layout-recognition_card .feed-body{background:linear-gradient(135deg,rgba(88,28,135,.35),rgba(124,45,18,.18));border-color:#581c87}html[data-theme="dark"] .feed-layout-recognition_card h3{color:#ddd6fe}html[data-theme="dark"] .feed-layout-recognition_card .feed-tag{background:#2e1065;color:#ddd6fe}html[data-theme="dark"] .feed-layout-event_card .feed-body{background:linear-gradient(135deg,rgba(124,45,18,.28),var(--card));border-color:#7c2d12}html[data-theme="dark"] .feed-layout-event_card h3{color:#fed7aa}
@media(max-width:860px){.feed-layout-photo_side.has-feed-image{grid-template-columns:42px minmax(0,1fr)}.feed-layout-photo_side .feed-thumb{grid-column:2;height:auto;max-height:360px}.feed-layout-photo_side .feed-thumb img{height:auto;max-height:360px}.feed-layout-announcement_card h3,.feed-layout-recognition_card h3,.feed-layout-event_card h3{font-size:18px!important}.feed-layout-announcement_card .feed-body,.feed-layout-recognition_card .feed-body,.feed-layout-event_card .feed-body{padding:14px}.feed-layout-recognition_card .feed-hero-image{width:min(300px,100%)}}

/* Feed publication presets v4 */
.feed-preset-box{display:grid;gap:6px;border:1px solid #dbeafe;background:linear-gradient(135deg,#eff6ff,#fff);border-radius:16px;padding:12px 14px}.feed-preset-box span{font-size:12px;font-weight:900;color:#2563eb;text-transform:uppercase;letter-spacing:.04em}.feed-preset-box select{width:100%}html[data-theme="dark"] .feed-preset-box{background:linear-gradient(135deg,rgba(30,64,175,.25),var(--card));border-color:#1e3a8a}html[data-theme="dark"] .feed-preset-box span{color:#bfdbfe}

/* Chat — gestão de membros de grupo */
.tav-chat-room-titlebox{min-width:0;flex:1}.tav-chat-members-btn{margin-left:auto;height:30px;border:1px solid #dbeafe!important;background:#eff6ff!important;color:#1E3A8A!important;border-radius:10px!important;padding:0 10px!important;font-size:11px!important;font-weight:900!important;align-items:center;justify-content:center;white-space:nowrap}.tav-chat-members-card{max-width:520px}.tav-chat-members-list{display:grid;gap:6px;max-height:260px;overflow:auto}.tav-chat-member-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid #eef2f7;border-radius:12px;padding:8px;background:#fff}.tav-chat-avatar.small{width:34px!important;height:34px!important;font-size:12px!important}.tav-chat-member-row strong{display:block;font-size:13px;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tav-chat-member-row small{display:block;font-size:11px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tav-chat-member-row em{font-style:normal;font-size:10px;font-weight:900;color:#1E3A8A;background:#eff6ff;border-radius:999px;padding:4px 7px;text-transform:uppercase}.tav-chat-member-row button{height:28px;border:0;border-radius:8px;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:900;padding:0 8px}.tav-chat-members-divider{font-size:11px;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.6px;margin-top:8px}.tav-chat-members-manage{display:grid;gap:8px}.tav-chat-members-manage[hidden]{display:none!important}.tav-chat-members-manage input[type="search"]{height:36px;border-radius:10px;font-size:13px}@media(max-width:820px){.tav-chat-members-btn{font-size:10px!important;padding:0 8px!important}.tav-chat-member-row{grid-template-columns:32px minmax(0,1fr) auto}.tav-chat-member-row button{grid-column:2 / -1;width:max-content}.tav-chat-members-card{width:96%}}
html[data-theme="dark"] .tav-chat-member-row{background:var(--panel)!important;border-color:var(--line)!important}html[data-theme="dark"] .tav-chat-member-row strong{color:var(--text)!important}html[data-theme="dark"] .tav-chat-member-row small{color:var(--muted)!important}html[data-theme="dark"] .tav-chat-members-btn{background:#172554!important;color:#bfdbfe!important;border-color:#1e3a8a!important}

/* Feed — enquetes */
.feed-poll-options-box{border:1px solid #bfdbfe;background:#f8fbff;border-radius:16px;padding:13px 14px;display:grid;gap:8px;color:#2563eb;font-weight:850}.feed-poll-options-box small{color:#64748b;font-weight:650}.feed-poll-options-box textarea{min-height:92px}.feed-poll-box{margin:12px 0;padding:12px;border:1px solid #dbeafe;background:#f8fbff;border-radius:16px}.feed-poll-box form{display:grid;gap:8px}.feed-poll-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer}.feed-poll-option.selected{border-color:#2563eb;background:#eff6ff}.feed-poll-option input{margin-top:3px}.feed-poll-option span{position:relative;display:grid;gap:3px;overflow:hidden}.feed-poll-option b,.feed-poll-option small{position:relative;z-index:1}.feed-poll-option small{color:#64748b;font-size:11px}.feed-poll-option i{position:absolute;left:0;top:0;bottom:0;background:rgba(37,99,235,.12);border-radius:8px;z-index:0;min-width:0}.feed-poll-total{color:#64748b;font-weight:800}.feed-layout-standard .feed-poll-box button{width:max-content}@media(max-width:860px){.feed-poll-box{padding:10px}.feed-poll-option{padding:8px}}
html[data-theme="dark"] .feed-poll-box,html[data-theme="dark"] .feed-poll-options-box{background:#0f172a!important;border-color:var(--line)!important;color:#bfdbfe!important}html[data-theme="dark"] .feed-poll-option{background:var(--panel)!important;border-color:var(--line)!important}html[data-theme="dark"] .feed-poll-option.selected{background:#172554!important;border-color:#2563eb!important}
.feed-poll-settings{display:grid;gap:10px}.feed-poll-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.feed-poll-config-grid label{display:grid;gap:5px;font-size:12px;color:#64748b;font-weight:850}.feed-poll-config-grid select{height:38px;border-radius:10px}.feed-poll-meta{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}.feed-poll-meta span{font-size:10px;font-weight:950;color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:4px 8px}.feed-poll-voters{margin-top:10px;border-top:1px dashed #bfdbfe;padding-top:8px}.feed-poll-voters summary{cursor:pointer;color:#1d4ed8;font-weight:900;font-size:12px}.feed-poll-voters ul{margin:6px 0 10px 18px;padding:0}.feed-poll-voters li{font-size:12px;color:#111827;margin:3px 0}.feed-poll-voters small{color:#64748b}@media(max-width:700px){.feed-poll-config-grid{grid-template-columns:1fr}}
html[data-theme="dark"] .feed-poll-meta span{background:#172554!important;color:#bfdbfe!important}html[data-theme="dark"] .feed-poll-voters li{color:var(--text)!important}
