:root{--bg:#f3f6fa;--surface:#fff;--surface-2:#f7f9fc;--text:#101828;--muted:#657086;--line:#e3e8f0;--nav:#071426;--nav-soft:#10243e;--accent:#16b887;--accent-2:#2ee6a6;--blue:#3478f6;--purple:#7c5ce5;--orange:#f49343;--danger:#dc4052;--shadow:0 12px 35px rgba(16,24,40,.07);--radius:18px;color-scheme:light}
[data-theme="dark"]{--bg:#08111f;--surface:#101d2f;--surface-2:#14243a;--text:#f6f8fc;--muted:#aeb8c8;--line:#233650;--nav:#050c16;--nav-soft:#122138;--shadow:0 18px 45px rgba(0,0,0,.24);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,select{cursor:pointer}a{color:inherit}.skip-link{position:fixed;left:12px;top:-80px;background:var(--accent);color:#03150e;padding:10px 14px;border-radius:9px;z-index:1000}.skip-link:focus{top:12px}.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:#d8e2ef;padding:27px 19px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;padding:0 8px 26px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,var(--accent-2),var(--accent));color:#062119;font-weight:900;font-size:1.35rem;box-shadow:0 8px 20px rgba(46,230,166,.2)}.brand strong,.brand small{display:block}.brand strong{font-size:1.08rem;color:#fff;letter-spacing:.01em}.brand small{font-size:.75rem;color:#8da0b7}.sidebar nav{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:11px;text-decoration:none;color:#9eb0c5;font-weight:650;font-size:.9rem}.nav-link span{width:20px;text-align:center}.nav-link:hover,.nav-link:focus-visible{background:var(--nav-soft);color:#fff}.nav-link.active{background:linear-gradient(90deg,rgba(46,230,166,.19),rgba(46,230,166,.04));color:var(--accent-2);box-shadow:inset 3px 0 var(--accent-2)}.sidebar-note{margin-top:auto;border:1px solid #223954;background:#0d1c2f;padding:13px;border-radius:13px;display:flex;gap:10px}.sidebar-note strong,.sidebar-note small{display:block}.sidebar-note strong{color:#f5f9ff;font-size:.83rem}.sidebar-note small{color:#90a4bb;font-size:.72rem;line-height:1.4;margin-top:3px}.status-dot{width:9px;height:9px;margin-top:5px;flex:none;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 4px rgba(46,230,166,.12)}main{min-width:0}.topbar{height:79px;background:var(--surface);border-bottom:1px solid var(--line);padding:0 32px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:15}.page-title span{font-size:.73rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.page-title h1{font-size:1.12rem;margin:0}.top-actions{display:flex;align-items:center;gap:12px}.icon-button{width:42px;height:42px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:12px;display:grid;place-items:center}.icon-button:hover{background:var(--surface-2)}.profile{border:0;background:transparent;display:flex;align-items:center;gap:10px;color:var(--text);text-align:left}.profile>span:first-child{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#dff9f0;color:#087256;font-weight:800}.profile-copy strong,.profile-copy small{display:block}.profile-copy strong{font-size:.82rem}.profile-copy small{font-size:.72rem;color:var(--muted)}.menu-button{display:none}.content{padding:26px 32px 38px;max-width:1680px;margin:auto}.filterbar{display:flex;align-items:end;gap:12px;margin-bottom:20px}.filterbar label{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;font-weight:750;color:var(--muted);display:grid;gap:6px}.filterbar select{min-width:190px;height:43px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);padding:0 35px 0 12px}.secondary-button{height:42px;padding:0 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font-weight:700;font-size:.84rem}.secondary-button:hover{border-color:#9aabbe}.result-count{margin:0 0 10px auto;color:var(--muted);font-size:.8rem}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;display:flex;gap:14px;align-items:center;box-shadow:var(--shadow);min-height:112px}.kpi-featured{background:linear-gradient(135deg,#0b2333,#0a3d36);color:white;border-color:transparent}.kpi-icon{width:42px;height:42px;border-radius:13px;background:rgba(46,230,166,.15);color:var(--accent-2);display:grid;place-items:center;font-size:.85rem;font-weight:900;flex:none}.kpi-icon.purple{background:rgba(124,92,229,.12);color:var(--purple)}.kpi-icon.blue{background:rgba(52,120,246,.12);color:var(--blue)}.kpi-icon.orange{background:rgba(244,147,67,.12);color:var(--orange)}.kpi span,.kpi strong,.kpi small{display:block}.kpi span{font-size:.76rem;color:var(--muted);font-weight:650}.kpi-featured span{color:#a9c8c3}.kpi strong{font-size:1.42rem;letter-spacing:-.04em;margin:2px 0}.kpi small{font-size:.71rem;color:var(--muted)}.kpi-featured small{color:#9ee7d4}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.benefits-panel{margin-top:15px;padding:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}.panel-heading h2{font-size:1rem;margin:2px 0 0}.eyebrow{margin:0;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:.68rem}.carousel-actions{display:flex;gap:7px}.carousel-actions .icon-button{width:35px;height:35px}.benefit-strip{display:flex;gap:13px;overflow:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;scrollbar-width:thin}.benefit-card{min-width:245px;width:245px;height:142px;border:0;border-radius:17px;padding:16px;color:white;text-align:left;position:relative;overflow:hidden;scroll-snap-align:start;box-shadow:0 10px 22px rgba(16,24,40,.14);transition:transform .18s ease}.benefit-card:hover{transform:translateY(-3px)}.benefit-card:before,.benefit-card:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.11)}.benefit-card:before{width:150px;height:150px;right:-62px;top:-70px}.benefit-card:after{width:90px;height:90px;right:25px;bottom:-60px}.benefit-card .chip{width:27px;height:20px;border-radius:5px;background:linear-gradient(135deg,#eed98a,#b89437);margin-bottom:17px;position:relative;z-index:1}.benefit-card strong{display:block;font-size:1.06rem;max-width:185px;line-height:1.15;position:relative;z-index:1}.benefit-card small{display:block;opacity:.8;font-size:.7rem;margin-top:5px;position:relative;z-index:1}.benefit-card .mini-count{position:absolute;right:14px;bottom:13px;font-size:.65rem;font-weight:800;background:rgba(0,0,0,.18);padding:4px 7px;border-radius:20px;z-index:1}.brand-rio{background:linear-gradient(135deg,#0f4b9d,#0ca8d4)}.brand-jae{background:linear-gradient(135deg,#7e1aa5,#ed227d)}.brand-klini{background:linear-gradient(135deg,#006f66,#20aa7c)}.brand-amil{background:linear-gradient(135deg,#083c77,#0f77b8)}.brand-sulamerica{background:linear-gradient(135deg,#e83d30,#f39332)}.brand-ifood{background:linear-gradient(135deg,#bb161f,#e8202a)}.brand-pluxee{background:linear-gradient(135deg,#311b66,#7653e6)}.brand-caju{background:linear-gradient(135deg,#f05d3e,#ff9950)}.brand-flash{background:linear-gradient(135deg,#e8007f,#8b1ce2)}.brand-swile{background:linear-gradient(135deg,#222,#7357ff)}.brand-default{background:linear-gradient(135deg,#19304f,#3478f6)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:15px;margin-top:15px}.chart-panel,.donut-panel,.bars-panel{padding:20px}.bars-panel{grid-column:1/-1}.legend-item{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:7px}.legend-item i{width:9px;height:9px;border-radius:50%;background:var(--accent)}.chart{height:245px}.chart svg{display:block;width:100%;height:100%;overflow:visible}.chart-grid{stroke:var(--line);stroke-width:1}.chart-label{fill:var(--muted);font-size:11px}.chart-area{fill:url(#areaGradient)}.chart-line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--surface);stroke:var(--accent);stroke-width:3}.donut-wrap{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center;min-height:245px}.donut{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:24px;border-radius:50%;background:var(--surface)}.donut>div{position:relative;z-index:1;text-align:center}.donut strong,.donut span{display:block}.donut strong{font-size:1rem}.donut span{font-size:.68rem;color:var(--muted)}.donut-legend{padding:0;margin:0;list-style:none;display:grid;gap:10px}.donut-legend li{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:.75rem}.donut-legend i{width:9px;height:9px;border-radius:3px}.donut-legend span{color:var(--muted)}.area-bars{display:grid;gap:13px}.bar-row{display:grid;grid-template-columns:minmax(120px,190px) 1fr 85px;align-items:center;gap:12px;font-size:.78rem}.bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:9px;background:var(--surface-2);border-radius:20px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--blue),#55d4cf);border-radius:20px}.bar-value{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.table-panel{margin-top:15px;padding:20px}.table-heading{align-items:end}.search-box{height:41px;width:min(310px,100%);display:flex;align-items:center;gap:7px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:0 12px}.search-box input{width:100%;border:0;background:transparent;outline:0;color:var(--text);font-size:.85rem}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px}table{border-collapse:collapse;width:100%;min-width:890px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line)}th{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--surface-2)}td{font-size:.78rem;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-2)}.employee-cell{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:10px;background:#e7eefb;color:#285cae;display:grid;place-items:center;font-weight:800;font-size:.7rem;flex:none}.employee-cell strong,.employee-cell small,.role-cell strong,.role-cell small{display:block}.employee-cell small,.role-cell small{color:var(--muted);font-size:.69rem}.benefit-tags{display:flex;gap:4px;flex-wrap:wrap}.benefit-tag{font-size:.62rem;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:3px 7px}.status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:4px 8px;background:rgba(22,184,135,.11);color:#087f5f;font-weight:800;font-size:.67rem}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.status-pill.inactive{background:rgba(220,64,82,.1);color:var(--danger)}.status-pill.inactive:before{background:var(--danger)}.table-footer{display:flex;justify-content:space-between;align-items:center;margin-top:13px}.table-footer p{font-size:.75rem;color:var(--muted)}.pagination{display:flex;align-items:center;gap:8px}.pagination span{font-size:.75rem;color:var(--muted)}.pagination button:disabled{opacity:.45;cursor:not-allowed}.method-panel{margin-top:15px;background:linear-gradient(135deg,#0a1c31,#0a3c36);color:#fff;border-radius:var(--radius);padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:28px}.method-panel h2{margin:4px 0 7px;font-size:1.05rem}.method-panel p:not(.eyebrow){margin:0;color:#b7c9d5;max-width:760px;font-size:.8rem}.method-panel .eyebrow{color:#75d9bd}.credit-link{white-space:nowrap;text-decoration:none;border:1px solid rgba(255,255,255,.2);padding:11px 14px;border-radius:11px;font-size:.78rem;font-weight:750}.credit-link:hover{background:rgba(255,255,255,.08)}footer{display:flex;justify-content:space-between;padding:21px 32px;color:var(--muted);font-size:.72rem;border-top:1px solid var(--line);background:var(--surface)}dialog{width:min(570px,calc(100% - 28px));border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);padding:23px;box-shadow:0 30px 90px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(4,12,23,.68);backdrop-filter:blur(4px)}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start}.dialog-header h2{margin:3px 0 0;font-size:1.3rem}.dialog-brand{height:110px;border-radius:17px;margin:18px 0;color:#fff;display:grid;place-items:center;font-size:1.45rem;font-weight:900;letter-spacing:-.03em}.dialog-description{color:var(--muted);font-size:.85rem}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.detail-grid div{background:var(--surface-2);border:1px solid var(--line);padding:12px;border-radius:12px}.detail-grid dt{color:var(--muted);font-size:.67rem}.detail-grid dd{margin:2px 0 0;font-weight:800;font-size:.95rem}.dialog-section{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.dialog-section h3{font-size:.78rem;margin:0 0 5px}.dialog-section p{font-size:.78rem;color:var(--muted);margin:0}.toast{position:fixed;right:22px;bottom:22px;background:var(--nav);color:white;padding:12px 16px;border-radius:11px;box-shadow:var(--shadow);font-size:.8rem;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid rgba(52,120,246,.45);outline-offset:3px}
@media(max-width:1100px){.app-shell{grid-template-columns:78px minmax(0,1fr)}.sidebar{padding-inline:10px}.brand{padding-inline:8px}.brand>span:last-child,.nav-link:not(.active){font-size:0}.nav-link{justify-content:center}.nav-link.active{font-size:0}.nav-link span{font-size:1rem}.sidebar-note{display:none}.kpi-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.bars-panel{grid-column:auto}.profile-copy{display:none}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;height:100%;transform:translateX(-105%);transition:transform .22s ease}.sidebar.open{transform:none}.sidebar .brand>span:last-child{display:block}.sidebar .nav-link{justify-content:flex-start;font-size:.9rem}.menu-button{display:grid}.topbar{height:67px;padding:0 16px}.page-title span{display:none}.content{padding:16px}.filterbar{display:grid;grid-template-columns:1fr 1fr}.filterbar label:first-child{grid-column:1/-1}.filterbar select{min-width:0;width:100%}.result-count{grid-column:1/-1;margin:0}.kpi-grid{grid-template-columns:1fr}.dashboard-grid{display:block}.dashboard-grid>.panel{margin-top:15px}.donut-wrap{grid-template-columns:1fr}.donut{margin:auto}.table-heading{align-items:stretch;flex-direction:column}.search-box{width:100%}.method-panel{align-items:flex-start;flex-direction:column}.credit-link{white-space:normal}.filterbar .secondary-button{align-self:end}footer{padding:18px 16px;flex-direction:column;gap:5px}.bar-row{grid-template-columns:110px 1fr 70px}.profile{display:none}}
@media(max-width:430px){.filterbar{grid-template-columns:1fr}.filterbar label:first-child,.result-count{grid-column:auto}.content{padding-inline:11px}.benefit-card{min-width:222px;width:222px}.detail-grid{grid-template-columns:1fr}.chart-panel,.donut-panel,.bars-panel,.table-panel,.benefits-panel{padding:15px}.kpi{padding:16px}.method-panel{padding:20px}.topbar{padding-inline:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v2 — grade de cartões e detalhamento por colaborador */
.card-hint{margin:0;color:var(--muted);font-size:.76rem}.category-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.category-tab{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:8px 13px;font-size:.75rem;font-weight:750}.category-tab:hover,.category-tab[aria-pressed="true"]{background:var(--nav);border-color:var(--nav);color:#fff}.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.flip-card{height:185px;perspective:1100px}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.flip-card.is-flipped .flip-card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:17px;overflow:hidden}.card-front{border:0;padding:17px;color:#fff;text-align:left;box-shadow:0 10px 22px rgba(16,24,40,.14);cursor:pointer}.card-front:before,.card-front:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.card-front:before{width:160px;height:160px;right:-65px;top:-80px}.card-front:after{width:90px;height:90px;right:20px;bottom:-60px}.provider-logo{width:116px;height:40px;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 3px rgba(0,0,0,.12));position:relative;z-index:1}.card-front .product-name{display:block;font-size:1rem;line-height:1.2;margin-top:27px;max-width:88%;position:relative;z-index:1}.card-front .card-meta{display:block;opacity:.82;font-size:.68rem;margin-top:5px;position:relative;z-index:1}.card-front .mini-count{position:absolute;right:13px;bottom:13px;font-size:.63rem;font-weight:800;background:rgba(0,0,0,.2);padding:4px 7px;border-radius:20px;z-index:1}.card-back{transform:rotateY(180deg);background:var(--surface-2);border:1px solid var(--line);padding:14px;display:flex;flex-direction:column;box-shadow:var(--shadow)}.card-back-top{display:flex;justify-content:space-between;align-items:start;gap:8px}.card-back h3{font-size:.84rem;margin:0}.flip-back{border:0;background:transparent;color:var(--muted);font-weight:900;font-size:1.1rem;padding:0 4px}.back-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:11px 0}.back-stats div{border:1px solid var(--line);background:var(--surface);padding:7px 9px;border-radius:9px}.back-stats span,.back-stats strong{display:block}.back-stats span{font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.back-stats strong{font-size:.76rem;margin-top:1px}.view-employees{margin-top:auto;width:100%;height:34px;border:0;border-radius:9px;background:var(--nav);color:#fff;font-size:.72rem;font-weight:800}.view-employees:hover{background:var(--nav-soft)}.dialog-brand{position:relative}.dialog-brand img{width:155px;height:60px;object-fit:contain}.employee-browser-head{display:flex;justify-content:space-between;align-items:center}.employee-browser-head h3{margin:0}.employee-browser-head span{font-size:.68rem;color:var(--muted)}.dialog-search{width:100%;margin:10px 0}.dialog-employee-list{display:grid;gap:7px;max-height:260px;overflow:auto;padding-right:4px}.dialog-employee{width:100%;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:11px;padding:8px;text-align:left}.dialog-employee:hover{border-color:var(--accent)}.dialog-employee small{display:block;color:var(--muted);font-size:.66rem}.dialog-employee>span:last-child{color:var(--muted)}.employee-detail{margin-top:14px;border:1px solid var(--accent);background:rgba(22,184,135,.07);border-radius:13px;padding:13px}.employee-detail h3{margin:0 0 8px;font-size:.88rem}.employee-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.employee-detail-grid div{font-size:.72rem}.employee-detail-grid span{display:block;color:var(--muted);font-size:.62rem}.brand-ticket{background:linear-gradient(135deg,#c8102e,#ef3340)}.brand-up{background:linear-gradient(135deg,#082c67,#00a9ce)}.brand-verocard{background:linear-gradient(135deg,#008542,#7ab800)}.brand-green{background:linear-gradient(135deg,#006847,#75b843)}
@media(max-width:1300px){.benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.benefit-grid{grid-template-columns:1fr}.flip-card{height:180px}.card-hint{display:none}.employee-detail-grid{grid-template-columns:1fr}}

/* v3 — portfólio filtrado e cartões horizontais redesenhados */
.benefit-item{min-width:0}.benefit-type{margin:0 0 7px 3px;color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.benefit-more-wrap{grid-column:1/-1;display:flex;justify-content:center;padding-top:2px}.portfolio-empty{grid-column:1/-1;min-height:210px;border:1px dashed #bdc8d6;border-radius:16px;background:linear-gradient(135deg,var(--surface-2),var(--surface));display:grid;place-content:center;text-align:center;padding:28px;color:var(--muted)}.portfolio-empty span{font-size:2rem;color:var(--accent)}.portfolio-empty h3{margin:4px 0;color:var(--text);font-size:1rem}.portfolio-empty p{max-width:580px;margin:0;font-size:.8rem}.flip-card{height:auto;aspect-ratio:1.59/1}.card-front{isolation:isolate;padding:18px}.card-front:before,.card-front:after{z-index:-1}.card-wordmark{position:absolute;top:18px;right:18px;z-index:2;max-width:64%;font-size:1.24rem;font-weight:900;line-height:1;letter-spacing:-.055em;text-align:right}.card-symbol{position:absolute;left:18px;top:55px;width:55px;height:42px;border-radius:9px;border:1px solid rgba(255,255,255,.32);background:linear-gradient(135deg,#f8e8a8,#bd9042);box-shadow:inset 0 0 0 1px rgba(65,42,4,.18)}.card-symbol:after{content:"";position:absolute;inset:0 47%;border-left:1px solid rgba(74,52,13,.45);border-right:1px solid rgba(74,52,13,.45)}.card-network{position:absolute;right:18px;bottom:16px;font-size:.86rem;font-weight:950;font-style:italic;letter-spacing:-.06em}.card-front .product-name{position:absolute;left:18px;bottom:16px;max-width:64%;margin:0;font-size:.78rem;font-weight:750;opacity:.9}.dialog-brand{overflow:hidden;isolation:isolate;display:block;padding:18px}.dialog-brand .card-wordmark{font-size:1.55rem}.dialog-brand .card-symbol{top:52px}.dialog-brand .card-network{bottom:14px}.dialog-brand:before,.dialog-brand:after{content:"";position:absolute;z-index:-1;border-radius:50%;background:rgba(255,255,255,.12)}.dialog-brand:before{width:210px;height:210px;right:-85px;top:-120px}.dialog-brand:after{width:130px;height:130px;left:25%;bottom:-105px}

.provider-caju{background:#ff2146;color:#fff}.provider-caju:before{background:#11cbb9;width:115px;height:115px;left:28%;top:10%;border-radius:55% 45% 58% 42%}.provider-caju:after{background:linear-gradient(90deg,#ff5841,#ffae31);width:62%;height:55%;left:8%;right:auto;bottom:-24%;border-radius:50%}.provider-caju .card-symbol{display:none}.provider-caju .card-wordmark{text-transform:lowercase;font-size:1.55rem}
.provider-jae{background:#0a0a0a;color:#fff}.provider-jae:before{width:170px;height:90px;left:26%;right:auto;top:36%;border:8px solid #ffc73c;border-top:0;background:transparent;border-radius:0 0 90px 90px}.provider-jae:after{width:20px;height:20px;left:38%;right:auto;bottom:31%;background:#ffc73c;box-shadow:93px 0 #ffc73c}.provider-jae .card-symbol{left:20px;top:58px}.provider-jae .card-wordmark{text-transform:lowercase;font-size:1.65rem}
.provider-riocard-mais{background:linear-gradient(145deg,#fe6e43,#e6a044 68%,#59321f);color:#fff}.provider-riocard-mais:before{inset:42% -8% -20% 25%;width:auto;height:auto;border-radius:50% 0 0;background:rgba(89,50,31,.28)}.provider-riocard-mais .card-wordmark{font-size:1.2rem}.provider-sulamerica{background:linear-gradient(to bottom,#fff 0 69%,#f47b20 70% 74%,#132d69 75%);color:#132d69}.provider-sulamerica:before,.provider-sulamerica:after{display:none}.provider-sulamerica .card-symbol{display:none}.provider-sulamerica .card-wordmark{left:18px;right:auto;text-align:left}.provider-totalpass{background:#05c98b;color:#050505}.provider-totalpass:before{inset:35% 20%;width:auto;height:auto;border-radius:4px;background:#050505;transform:skew(-10deg)}.provider-totalpass .card-wordmark{color:#050505}.provider-totalpass .product-name,.provider-totalpass .card-network{color:#050505}.provider-totalpass .card-symbol{display:none}.provider-wellhub{background:#ff456a;color:#fff8e8}.provider-wellhub .card-symbol{display:none}.provider-wellhub .card-wordmark{left:18px;right:auto;top:42%;max-width:none;font-size:1.8rem}.provider-swile{background:#050505;color:#fff}.provider-swile .card-wordmark{text-transform:lowercase}.provider-flash{background:linear-gradient(145deg,#fa087a,#ff5140);color:#fff}.provider-flash .card-wordmark{left:18px;right:auto;top:auto;bottom:48px;text-align:left;text-transform:lowercase;font-size:1.6rem}.provider-ifood-beneficios{background:#ed002f;color:#fff}.provider-ifood-beneficios .card-wordmark{left:18px;right:auto;top:auto;bottom:42px;text-align:left}.provider-vr,.provider-vr-beneficios{background:#00f33d;color:#050505}.provider-vr:before,.provider-vr-beneficios:before{width:75%;height:130%;left:-15%;right:auto;top:-20%;background:#050505;border-radius:20%}.provider-vr .card-wordmark,.provider-vr-beneficios .card-wordmark{font-size:2rem}.provider-up-brasil{background:linear-gradient(165deg,#ff8c21 0 70%,#fff 71%);color:#fff}.provider-verocard{background:#f6f2df;color:#3a1420;border:1px solid #d9d1bd}.provider-verocard:before{width:120%;height:130%;left:-45%;top:-62%;background:transparent;border:1px solid #d92345}.provider-green-card{background:#8dceb1;color:#176f50}.provider-green-card:before{width:85%;height:160%;left:-35%;top:-30%;background:rgba(19,119,79,.18)}
.provider-pluxee{background:#00eb70;color:#17245f}.provider-pluxee:before{width:56%;height:86%;left:4%;right:auto;top:7%;border-radius:0;background:linear-gradient(45deg,transparent 37%,#fff 38% 62%,transparent 63%),linear-gradient(-45deg,transparent 37%,#fff 38% 62%,transparent 63%)}.provider-pluxee .card-wordmark{text-transform:lowercase;font-size:1.55rem}.provider-alelo{background:#176849;color:#fff}.provider-alelo .card-wordmark{background:#24794d;padding:7px 13px;border-radius:50%;font-size:1.25rem}.provider-alelo.product-alelo-refeicao{background:#c7da68;color:#175a43}.provider-alelo.product-alelo-tudo{background:#078bb6}.provider-ticket{background:linear-gradient(160deg,#64248d,#f26682);color:#fff}.provider-ticket.product-ticket-alimentacao{background:linear-gradient(160deg,#6c2a91,#bd91d8)}.provider-ticket.product-ticket-restaurante{background:linear-gradient(160deg,#ffad55,#f36e7e)}.provider-ticket .card-wordmark{left:18px;right:auto;top:auto;bottom:16px;text-align:left}.provider-amil,.provider-amil-dental{background:linear-gradient(155deg,#fff 0 28%,#075ac9 29% 70%,#5213f4 71%);color:#fff}.provider-amil .card-wordmark,.provider-amil-dental .card-wordmark{color:#4715dc}.provider-assim-saude{background:linear-gradient(40deg,#14a8d5 0 64%,#fff 65%);color:#07558a}.provider-bradesco-saude,.provider-bradesco-dental{background:linear-gradient(40deg,#df3452 0 65%,#fff 66%);color:#cf173e}.provider-klini-saude{background:linear-gradient(40deg,#179d9c 0 64%,#fff 65%);color:#078f8e}.provider-hapvida-notredame{background:linear-gradient(150deg,#15589a 0 49%,#f49a29 50%);color:#fff}.provider-porto{background:#082b73;color:#fff}.provider-unimed{background:#00a879;color:#fff}.provider-golden-cross{background:linear-gradient(145deg,#dce7ef,#4d87b8);color:#074c88}.provider-leve-saude{background:#71306f;color:#fff}.provider-empresa{background:#f3ae36;color:#111}.provider-diversas-seguradoras{background:#214f78;color:#fff}.provider-dental-uni,.provider-odontoprev{background:#137faf;color:#fff}
@media(max-width:520px){.benefit-grid{grid-template-columns:1fr}.flip-card{height:auto;aspect-ratio:1.59/1}}

/* v4 — período, ranking e fluxo de pedidos */
.primary-button{height:42px;padding:0 16px;border:0;border-radius:11px;background:#126bd6;color:#fff;font-weight:800}.filterbar{flex-wrap:wrap}.period-panel{margin-bottom:15px;padding:16px 20px}.period-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.period-heading strong{display:block;margin-top:2px}.period-presets{display:flex;gap:8px}.period-presets button{border:0;border-radius:999px;background:var(--surface-2);color:var(--muted);padding:7px 12px;font-size:.72rem;font-weight:750}.period-presets button:hover{background:#126bd6;color:#fff}.range-shell{position:relative;height:34px;margin:13px 6px 3px}.range-track{position:absolute;left:0;right:0;top:15px;height:6px;border-radius:10px;background:linear-gradient(90deg,var(--line) 0 var(--range-start),#126bd6 var(--range-start) var(--range-end),var(--line) var(--range-end))}.range-shell input{position:absolute;inset:0;width:100%;height:34px;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none}.range-shell input::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:19px;height:19px;border-radius:50%;border:3px solid #126bd6;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.25)}.range-shell input::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;border:3px solid #126bd6;background:#fff}.range-shell input::-webkit-slider-runnable-track{background:transparent}.period-inputs{display:flex;justify-content:flex-end;gap:10px}.period-inputs label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.68rem;font-weight:750}.period-inputs input,.request-form-grid input,.request-form-grid select,.request-form-grid textarea{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:9px 11px}.area-total{font-weight:900;color:#126bd6}.bar-value{min-width:145px}.spending-panel,.requests-panel{margin-top:15px;padding:20px}.ranking-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:20px}.ranking-head{display:flex;justify-content:space-between;padding:9px 12px;color:var(--muted);font-size:.72rem;text-transform:uppercase}.ranking-list{max-height:470px;overflow:auto;border-top:1px solid var(--line)}.ranking-row{width:100%;display:grid;grid-template-columns:34px 38px 1fr auto;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);padding:11px;text-align:left}.ranking-row:hover{background:var(--surface-2)}.ranking-row small{display:block;color:var(--muted);font-size:.68rem}.ranking-row b{font-size:.82rem}.rank{color:var(--muted);font-size:.72rem;font-weight:900}.ranking-summary{border-radius:16px;background:linear-gradient(145deg,#071426,#063d32);color:#fff;padding:22px;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end}.ranking-summary span,.ranking-summary small{color:#9db6b1}.ranking-summary strong{font-size:1.65rem;margin:4px 0}.dialog-employee.ranked{grid-template-columns:28px 34px 1fr auto}.dialog-employee.ranked b{font-size:.72rem}.detail-person{display:flex;gap:11px;align-items:center;margin-bottom:12px}.detail-person h3,.detail-person p{margin:0}.detail-person p{font-size:.7rem;color:var(--muted)}.detail-person strong{font-size:.68rem;color:var(--accent)}.feature-details{margin-bottom:12px}.feature-details div{border-bottom:1px dotted var(--line);padding:7px 0}.feature-details b{display:block;text-align:right}.section-copy{margin:3px 0 0;color:var(--muted);font-size:.75rem}.request-actions{display:flex;gap:9px}.request-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.request-kpis article{border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:15px}.request-kpis span,.request-kpis strong{display:block}.request-kpis span{font-size:.68rem;color:var(--muted)}.request-kpis strong{font-size:1.4rem;margin-top:4px}.request-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center}.request-status{border-radius:999px;padding:4px 8px;font-size:.65rem;font-weight:800}.status-aprovado{background:#dff8ef;color:#08785b}.status-pendente,.status-em-analise{background:#fff1d8;color:#98600a}.status-recusado{background:#ffe2e5;color:#aa2435}.request-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:18px}.request-form-grid label{display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:750}.request-form-grid .wide{grid-column:1/-1}.request-form-grid textarea{resize:vertical}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.load-error{margin:30px;padding:24px}
.provider-pluxee.product-pluxee-farmacia,.provider-alelo.product-alelo-farmacia,.provider-ticket.product-ticket-farmacia,.provider-vr-beneficios.product-vr-farmacia,.provider-ifood-beneficios.product-ifood-farmacia{box-shadow:inset 0 -8px #23b56f}.product-pluxee-farmacia .product-name:before,.product-alelo-farmacia .product-name:before,.product-ticket-farmacia .product-name:before,.product-vr-farmacia .product-name:before,.product-ifood-farmacia .product-name:before{content:"✚ ";font-weight:900}
@media(max-width:900px){.ranking-layout{grid-template-columns:1fr}.request-kpis{grid-template-columns:1fr 1fr}.request-toolbar{align-items:stretch;flex-direction:column}.ranking-summary{min-height:120px}}
@media(max-width:600px){.period-heading,.period-inputs{align-items:stretch;flex-direction:column}.period-presets{flex-wrap:wrap}.request-kpis{grid-template-columns:1fr}.request-form-grid{grid-template-columns:1fr}.request-form-grid .wide{grid-column:auto}.request-actions{width:100%;flex-direction:column}.ranking-row{grid-template-columns:28px 34px 1fr}.ranking-row b{grid-column:3}.bar-value{min-width:80px}}

/* v5 — portfólio em faixa e perfil analítico */
.benefit-grid{display:flex;gap:15px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:3px 3px 15px;scrollbar-width:thin;scrollbar-color:#9aabbe var(--surface-2)}.benefit-grid::-webkit-scrollbar{height:9px}.benefit-grid::-webkit-scrollbar-track{background:var(--surface-2);border-radius:10px}.benefit-grid::-webkit-scrollbar-thumb{background:#9aabbe;border-radius:10px}.benefit-item{flex:0 0 clamp(260px,22vw,315px);scroll-snap-align:start}.benefit-more-wrap{flex:0 0 170px;align-items:center}.portfolio-empty{flex:1 0 100%}.employee-tools{display:flex;align-items:end;gap:12px}.employee-period{display:flex;gap:8px}.employee-period label{display:grid;gap:4px;color:var(--muted);font-size:.62rem;font-weight:800;text-transform:uppercase}.employee-period input{height:41px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);padding:0 9px}.profile-row{cursor:pointer}.profile-row:hover{background:rgba(18,107,214,.07)}.profile-row:focus{outline:3px solid rgba(52,120,246,.35);outline-offset:-3px}.profile-overview{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:15px 0}.profile-overview div{border:1px solid var(--line);border-radius:11px;background:var(--surface-2);padding:10px}.profile-overview span,.profile-overview b{display:block}.profile-overview span{color:var(--muted);font-size:.63rem}.profile-benefits{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.profile-benefit{border:1px solid var(--line);border-radius:999px;padding:5px 9px;background:var(--surface-2);font-size:.68rem}.profile-spend{margin-top:16px;padding:13px;border-radius:12px;background:linear-gradient(135deg,#0c2340,#075444);color:#fff}.profile-spend span,.profile-spend strong{display:block}.profile-spend span{font-size:.68rem;color:#b9d5d0}.profile-spend strong{font-size:1.4rem}@media(max-width:760px){.employee-tools{width:100%;align-items:stretch;flex-direction:column}.employee-period input{width:100%}.employee-period label{flex:1}.benefit-item{flex-basis:270px}}

.profile-benefit{cursor:pointer;color:var(--text)}.profile-benefit:hover,.profile-benefit.active{border-color:#126bd6;background:#eaf3ff;color:#0b58b4}.profile-spend small{display:block;margin-top:3px;color:#b9d5d0}.profile-benefit-detail{margin-top:16px;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface-2)}.profile-detail-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:5px}.profile-detail-head span{color:var(--muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.07em}.profile-detail-head h3{margin:2px 0 0;font-size:.92rem}.profile-detail-head>strong{font-size:1.05rem;color:#08785b;white-space:nowrap}

/* correção do painel de concentração */
.bars-panel{overflow:hidden}.bars-panel .area-bars{min-width:0}.bars-panel .bar-row{grid-template-columns:minmax(105px,180px) minmax(120px,1fr) minmax(130px,175px);width:100%;min-width:0}.bars-panel .bar-track{min-width:0}.bars-panel .bar-value{min-width:0;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.7rem;padding-right:2px}@media(max-width:650px){.bars-panel .bar-row{grid-template-columns:90px minmax(80px,1fr) 105px;gap:7px}.bars-panel .bar-value{font-size:.61rem}}

.period-apply{height:38px;align-self:end;border:0;border-radius:10px;background:#126bd6;color:#fff;padding:0 14px;font-size:.72rem;font-weight:800;white-space:nowrap}.period-apply:hover{background:#0b58b4}.period-apply.compact{height:41px}@media(max-width:600px){.period-apply{width:100%}.employee-period{flex-wrap:wrap}.employee-period .period-apply{flex-basis:100%}}

/* v4.1 — modais em camadas e rolagem contida */
body:has(dialog[open]){overflow:hidden}#benefitDialog{width:min(650px,calc(100% - 28px));max-height:90vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8290a3 transparent}#benefitDialog .dialog-employee-list{max-height:300px;overflow-y:auto;overscroll-behavior:contain}#benefitDialog #employeeDetail{display:none!important}.employee-modal{width:min(520px,calc(100% - 28px));max-height:86vh;overflow-y:auto;padding:26px}.employee-modal::backdrop{background:rgba(5,12,23,.76);backdrop-filter:blur(6px)}.employee-modal .dialog-header{margin-bottom:22px}.modal-person{padding-bottom:16px;border-bottom:1px dashed var(--line)}.modal-person .avatar{width:48px;height:48px;font-size:.82rem}.modal-person h3{font-size:1rem}.detail-subtitle{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:20px 0 8px}.modal-data div,.feature-details div{display:flex;align-items:center;justify-content:space-between;gap:18px}.modal-data b,.feature-details b{text-align:right}.wide-detail{grid-column:1/-1}@media(max-width:520px){#benefitDialog{max-height:94vh;padding:18px}.employee-modal{max-height:92vh;padding:20px}.modal-data div,.feature-details div{align-items:flex-start;flex-direction:column;gap:2px}.modal-data b,.feature-details b{text-align:left}.wide-detail{grid-column:auto}}
