/* v2.99.130 Executive Food Cost KPI cards: presentation only. */
body .sales-banner .sales-banner-stats>.banner-stat.executive-cost{display:flex!important;flex-direction:column!important;box-sizing:border-box!important;height:clamp(205px,21vw,270px)!important;min-height:205px!important;gap:8px!important;padding:15px 18px!important;position:relative!important;overflow:hidden!important;background:linear-gradient(145deg,#fffdf8 0%,#fff4e7 74%,#f9e5d4 100%)!important;border:2px solid #d8ae64!important;border-radius:24px!important;box-shadow:inset 0 0 0 3px #fff8e9,inset 0 0 0 5px #e9cda4,0 7px 0 #b78542,0 13px 19px #27000955!important;color:#66001c!important;text-align:left!important;cursor:pointer}
body .sales-banner .executive-cost:before,body .sales-banner .executive-cost:after{display:none!important}
body .sales-banner .executive-cost .executive-heading{display:flex!important;align-items:center;gap:12px;width:100%;min-height:44px;flex:none;z-index:2}
body .sales-banner .executive-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#fff9e7,#f0c477);border:2px solid #eacb8f;box-shadow:0 5px 9px #75451d3b;color:#760021}
body .sales-banner .executive-icon svg{width:22px;height:22px}
body .sales-banner .executive-title{font-weight:800;font-size:clamp(13px,1.45vw,21px);line-height:1.18;flex:1}
body .sales-banner .executive-trend{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid #e5c89e;border-radius:12px;background:#fff6e8;color:#b50d3a;box-shadow:0 3px 6px #75451d26}
body .sales-banner .executive-trend svg{width:24px;height:24px}
body .sales-banner .executive-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px;min-height:0;flex:1;width:100%;align-items:center}
body .sales-banner .executive-left{display:flex;flex-direction:column;align-items:center;min-width:0;gap:5px}
body .sales-banner .executive-dial{position:relative;display:block;width:min(100%,240px);height:clamp(105px,12vw,155px)}
body .sales-banner .executive-arc{position:absolute;top:0;left:0;width:100%;height:100%;overflow:visible}
body .sales-banner .executive-arc path{fill:none;stroke-width:19;stroke-linecap:round}
body .sales-banner .executive-track{stroke:#e6cfb9;filter:drop-shadow(0 2px 2px #6e3d2830)}
body .sales-banner .executive-fill{filter:drop-shadow(0 2px 2px #6e3d2850);stroke-dasharray:0 100}
@keyframes executive-gauge-reveal{from{stroke-dasharray:0 100}}
body .sales-banner .executive-number{position:absolute;top:49%;left:50%;transform:translate(-50%,-50%);font-size:clamp(24px,3vw,45px);font-weight:850;letter-spacing:-1px;white-space:nowrap;color:#69001c}
body .sales-banner .executive-target-pill{position:absolute;bottom:1%;left:50%;transform:translateX(-50%);border-radius:30px;background:#f5d6cc;border:1px solid #ebc3b3;padding:3px 13px;font-size:clamp(10px,1vw,14px);white-space:nowrap;color:#78432f}
body .sales-banner .executive-scale{width:95%;max-width:250px;display:block}
body .sales-banner .executive-scale-track{height:11px;display:block;border-radius:20px;background:linear-gradient(90deg,#088a55 0%,#95b66c 42%,#efd0b1 70%,#e53661 100%);position:relative;box-shadow:inset 0 2px 3px #0002}
body .sales-banner .executive-scale-pin{position:absolute;left:var(--marker);top:-5px;height:21px;width:5px;border-radius:4px;background:linear-gradient(90deg,#e9ad30,#ffdf7c,#b77a19);box-shadow:0 0 0 1px #c08a29,0 2px 4px #0004;transform:translateX(-50%)}
body .sales-banner .executive-scale-labels{display:flex;justify-content:space-between;color:#8a5d39;font-size:11px;padding-top:5px}
body .sales-banner .executive-right{display:flex;flex-direction:column;gap:6px;min-width:0}
body .sales-banner .executive-variance{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f9dcd4;border:1px solid #f0c4b8;border-radius:16px;padding:11px 5px;gap:3px;color:#8c3c32;font-size:clamp(10px,1.1vw,15px);text-align:center}
body .sales-banner .executive-variance-number{font-weight:850;font-size:clamp(21px,2.3vw,34px);color:#c71346;white-space:nowrap}
body .sales-banner .executive-cost.is-safe .executive-variance{background:#e4f3e6;border-color:#b4d9bd;color:#245c38}
body .sales-banner .executive-cost.is-safe .executive-variance-number{color:#147d49}
body .sales-banner .executive-facts{display:flex;flex-direction:column;border:1px solid #edd4bc;border-radius:12px;overflow:hidden;background:#fff9f1;color:#80523c;font-size:clamp(10px,1.05vw,14px)}
body .sales-banner .executive-facts>span{display:flex;justify-content:space-between;gap:5px;padding:8px 9px}
body .sales-banner .executive-facts>span+span{border-top:1px solid #ecd7c4}
body .sales-banner .executive-facts b{color:#69001c;white-space:nowrap}
@media(max-width:700px){body .sales-banner .sales-banner-stats>.banner-stat.executive-cost{height:210px!important;min-height:210px!important;padding:10px 8px!important;border-radius:17px!important;gap:3px!important;box-shadow:inset 0 0 0 2px #fff8e9,0 4px 0 #b78542,0 8px 10px #27000933!important}body .sales-banner .executive-cost .executive-heading{gap:5px;min-height:30px}body .sales-banner .executive-icon{width:27px;height:27px;flex-basis:27px}body .sales-banner .executive-icon svg{width:16px;height:16px}body .sales-banner .executive-title{font-size:clamp(10px,2.4vw,14px)}body .sales-banner .executive-trend{width:24px;height:24px;flex-basis:24px;border-radius:8px}body .sales-banner .executive-trend svg{width:15px;height:15px}body .sales-banner .executive-content{grid-template-columns:minmax(0,1fr);gap:3px;align-content:start}body .sales-banner .executive-dial{width:130px;max-width:100%;height:84px}body .sales-banner .executive-number{font-size:clamp(20px,5vw,28px);top:48%}body .sales-banner .executive-target-pill{font-size:10px;padding:2px 8px;bottom:-1%}body .sales-banner .executive-scale{display:none}body .sales-banner .executive-right{gap:2px}body .sales-banner .executive-variance{flex-direction:row;padding:4px;gap:5px;font-size:9px;border-radius:9px}body .sales-banner .executive-variance-number{font-size:15px}body .sales-banner .executive-facts{flex-direction:row;font-size:9px;border-radius:8px}body .sales-banner .executive-facts>span{flex:1;padding:4px;flex-direction:column;gap:1px;align-items:center}body .sales-banner .executive-facts>span+span{border-top:0;border-left:1px solid #ecd7c4}}
@media(prefers-reduced-motion:reduce){body .sales-banner .executive-fill{animation:none!important}}

/* v2.99.131: align value inside open semicircle, target underneath. */
body .sales-banner .executive-dial .executive-number{top:66%!important;line-height:1!important;text-align:center;z-index:1}
body .sales-banner .executive-dial .executive-target-pill{bottom:-8%!important;z-index:2}
@media(max-width:700px){body .sales-banner .executive-dial{height:91px!important}body .sales-banner .executive-dial .executive-number{top:65%!important;font-size:clamp(20px,4.6vw,29px)!important}body .sales-banner .executive-dial .executive-target-pill{bottom:-4%!important}}

/* v2.99.132: JS controls SVG dashoffset; avoid CSS dasharray transition on Safari. */
body .sales-banner .executive-fill{stroke-dasharray:100 100!important;animation:none!important;transition:none!important}
