
.mb-app{--dark:#06463d;--green:#09a66f;--text:#162c29;max-width:540px;margin:0 auto 24px;background:#f5f7f6;min-height:720px;color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;position:relative;isolation:isolate;padding-bottom:110px;border-radius:25px;overflow:hidden;box-shadow:0 12px 55px #002c1b18}.mb-app *{box-sizing:border-box}.mb-top{padding:28px 23px 30px;background:radial-gradient(circle at 85% 0,#1cb779 0,transparent 58%),linear-gradient(145deg,#003d35,#006c53 78%,#008e62);color:#fff}.mb-topline{display:flex;justify-content:space-between;align-items:center}.mb-brand{font-weight:900;font-size:19px;letter-spacing:1.5px}.mb-brand small{display:block;font-size:9px;letter-spacing:3px;font-weight:650}.mb-topicon{font-size:29px;font-weight:900;opacity:.55}.mb-greeting{font-size:24px;font-weight:750;margin:24px 0 20px;color:white}.mb-balance{border:1.5px solid #4ce58e;border-radius:23px;background:#ffffff13;padding:23px 22px;display:flex;align-items:center;justify-content:space-between}.mb-balance span{display:block;font-size:14px;opacity:.92}.mb-balance strong{font-size:44px;display:block;line-height:1.2;color:#fff}.mb-balance strong small{font-size:18px}.mb-circle-arrow{border:2px solid #57e98e;border-radius:50%;width:42px;height:42px;display:grid!important;place-items:center;font-size:24px!important}.mb-attendance{display:flex;justify-content:space-between;margin:20px 3px 30px;font-size:13px;gap:12px}.mb-attendance strong{font-size:16px}.mb-light-title{font-size:21px!important;font-weight:800!important;color:#fff!important;margin:0 0 17px!important}.mb-vouchers{display:flex;overflow-x:auto;gap:13px;scroll-snap-type:x mandatory;padding:0 0 12px;scrollbar-width:thin}.mb-voucher{scroll-snap-align:start;min-width:230px;width:230px;min-height:190px;background:#fff;color:#00624f;border-radius:20px;position:relative;overflow:hidden;padding:18px;display:flex;flex-direction:column;justify-content:space-between}.mb-voucher:after{content:'';position:absolute;right:-30px;top:38px;width:140px;height:140px;border:25px solid #e5f5ef;transform:rotate(-28deg);border-radius:35px;z-index:0}.mb-voucher>*{position:relative;z-index:1}.mb-voucher-tag{background:#056a54;color:#fff;border-radius:50px;padding:6px 12px;font-size:10px;font-weight:800;width:max-content}.mb-voucher-icon{position:absolute;right:18px;top:12px;font-size:31px}.mb-voucher strong{font-size:31px;line-height:1.04;font-weight:900;letter-spacing:-1px}.mb-voucher strong small{font-size:14px}.mb-voucher>small{font-size:11px;color:#426b60}.mb-content{padding:25px 20px}.mb-app-section{scroll-margin-top:25px;margin-bottom:28px}.mb-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.mb-section-head h3{font-size:21px!important;color:#1d302c!important;font-weight:800!important;margin:0!important}.mb-section-head span{font-size:12px;color:#6b7d78}.mb-reward,.mb-partner{display:flex;align-items:center;gap:12px;padding:15px;margin:0 0 12px;background:white;border:1px solid #e6eeea;border-radius:17px;box-shadow:0 3px 12px #002a1710}.mb-reward-icon,.mb-partner-icon{width:48px;height:48px;flex:none;display:grid;place-items:center;background:#e8f7ee;border-radius:14px;font-size:23px}.mb-reward-main{flex:1;min-width:0}.mb-reward-main strong,.mb-partner strong{font-size:14px;display:block}.mb-reward-main small,.mb-partner small{display:block;font-size:11px;color:#73817c;margin-top:3px}.mb-status{display:inline-block;font-size:10px;margin-top:6px;font-weight:700}.mb-ok{color:#087d50}.mb-muted{color:#87928e}.mb-qr-open{border:0;border-radius:12px;background:#086b50;color:white;padding:11px 12px;font-size:12px;font-weight:800;cursor:pointer}.mb-no-rewards{padding:24px;background:#fff;border:1px dashed #cbdcd3;border-radius:16px;font-size:13px;color:#62736c;line-height:1.6}.mb-preview{background:#e8f8ee;border:1px solid #a9e3c1;border-radius:17px;padding:17px;margin-bottom:25px}.mb-preview span,.mb-preview strong,.mb-preview small{display:block}.mb-preview span{font-size:10px;letter-spacing:1px;color:#0c7b51;font-weight:800}.mb-preview strong{margin:7px 0}.mb-preview small{color:#507567}.mb-nav{position:sticky;bottom:12px;margin:0 15px;z-index:10;background:#fffffff2;border:1px solid #e4ebe8;box-shadow:0 5px 22px #00271925;border-radius:22px;display:flex;align-items:center;justify-content:space-around;padding:9px 4px;backdrop-filter:blur(10px)}.mb-nav button{border:0;background:none;color:#89948f;font-size:10px;display:flex;align-items:center;flex-direction:column;gap:2px;cursor:pointer;padding:3px;min-width:49px}.mb-nav button span{font-size:26px;line-height:1.2}.mb-nav button.mb-nav-active{color:#00785b;font-weight:800}.mb-nav .mb-nav-center{border-radius:50%;background:linear-gradient(145deg,#00a777,#00483c);color:white;width:61px;height:61px;min-width:61px;display:grid;place-items:center;margin-top:-27px;border:4px solid #f5f7f6;box-shadow:0 4px 13px #002e1f44}.mb-nav .mb-nav-center span{font-size:32px}.mb-modal[hidden]{display:none}.mb-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center}.mb-modal-shade{position:absolute;inset:0;background:#001b17bb}.mb-modal-panel{position:relative;background:#fff;border-radius:24px;padding:28px 24px;text-align:center;width:min(90vw,340px)}.mb-modal-panel h3{font-size:22px!important;color:#173d32!important}.mb-modal-panel p,.mb-modal-panel small{color:#64766e}.mb-modal-panel #mb-modal-qr{display:flex;justify-content:center;margin:22px 0}.mb-close{position:absolute;top:8px;right:15px;font-size:28px;border:0;background:none;cursor:pointer}.mb-login{padding:35px}.mb-primary{background:#007958;color:#fff!important;border-radius:12px;padding:12px 18px;display:inline-block;text-decoration:none}@media(max-width:550px){.mb-app{border-radius:0;max-width:100%;box-shadow:none}.mb-top{padding:24px 20px 28px}.mb-greeting{font-size:22px}.mb-balance strong{font-size:40px}}

/* Mobile app 1.5: Mekaddesh sky blue */
.mb-app{--mb-blue:#079cd4;--mb-deep:#063f63;--mb-soft:#eaf8ff;color:#13364d}
.mb-app .mb-top{background:linear-gradient(135deg,#075b8c,#09aee0)!important}
.mb-app .mb-primary,.mb-app button.mb-primary{background:#079cd4!important;color:#fff!important}
.mb-app .mb-progress-track{height:11px;border-radius:30px;background:rgba(255,255,255,.32);overflow:hidden;margin-top:10px}
.mb-app #mb-progress-fill{height:100%;border-radius:30px;background:#bdf4ff;transition:width .45s ease}
.mb-app #mb-live-status{display:block;margin-top:6px;opacity:.85}
.mb-login-screen{max-width:480px;margin:30px auto;padding:38px 28px!important;border-radius:28px;background:linear-gradient(165deg,#effaff,#fff);box-shadow:0 14px 45px #064d7b19}
.mb-login-logo{width:72px;height:72px;border-radius:22px;background:#079cd4;color:white;font-size:35px;font-weight:800;display:grid;place-items:center;margin-bottom:24px}
.mb-login-screen label{display:block;font-weight:600;margin:16px 0}.mb-login-screen input{width:100%;padding:14px;border:1px solid #c8dfeb;border-radius:12px;margin-top:7px;background:#fff}.mb-login-screen button{width:100%;padding:15px;border:0;border-radius:12px;font-weight:700}.mb-login-error{color:#b42318}

/* 1.6: institutional sky-blue palette and mobile-safe reward layout */
.mb-app .mb-voucher{color:#075b8c}.mb-app .mb-voucher-tag{background:#087eaf}.mb-app .mb-voucher:after{border-color:#e2f5ff}.mb-app .mb-voucher>small{color:#48788e}.mb-app .mb-reward{flex-wrap:wrap}.mb-app .mb-reward-main{flex-basis:calc(100% - 70px)}.mb-app .mb-qr-open{display:block;width:100%;flex-basis:100%;margin-top:4px;background:#079cd4!important;color:#fff!important;font-size:14px;padding:13px}.mb-app .mb-ok,.mb-app .mb-preview span{color:#087eaf}.mb-app .mb-reward-icon,.mb-app .mb-partner-icon{background:#eaf8ff}.mb-app .mb-preview{background:#eaf8ff;border-color:#b6e5fb}.mb-app .mb-nav button.mb-nav-active{color:#087eaf}.mb-app .mb-nav .mb-nav-center{background:linear-gradient(145deg,#23c1ef,#086a9e)}.mb-app .mb-balance{border-color:#8be7ff}.mb-app .mb-circle-arrow{border-color:#8be7ff}.mb-app .mb-section-head h3{color:#123b53!important}.mb-login-logo{background:#eaf8ff!important}.mb-login-logo img{width:64px;height:64px;object-fit:contain}.mb-modal-panel #mb-modal-qr canvas,.mb-modal-panel #mb-modal-qr img{max-width:100%;height:auto!important}.mb-modal-panel{z-index:1}.mb-app .mb-status{font-weight:750}

/* v1.6.4: navegación siempre visible en la pantalla móvil. */
.mb-standalone .mb-app{overflow:visible!important;min-height:100dvh;padding-bottom:calc(112px + env(safe-area-inset-bottom, 0px))!important;margin-bottom:0!important;}
.mb-standalone .mb-app .mb-nav{position:fixed!important;bottom:calc(10px + env(safe-area-inset-bottom, 0px))!important;left:50%!important;transform:translateX(-50%)!important;width:calc(100% - 24px)!important;max-width:516px!important;margin:0!important;z-index:10000!important;box-sizing:border-box;}
.mb-standalone .mb-modal{z-index:20000!important;}
@media(max-width:550px){.mb-standalone .mb-app .mb-nav{width:calc(100% - 20px)!important;bottom:calc(8px + env(safe-area-inset-bottom, 0px))!important;} .mb-standalone .mb-app .mb-nav button{min-width:0!important;flex:1;padding:5px 1px!important;} .mb-standalone .mb-app .mb-nav .mb-nav-center{flex:0 0 60px!important;}}

/* v1.6.5: separación adicional para barra de navegación Android de 3 botones.
   En Android WebView/PWA env(safe-area-inset-bottom) puede devolver 0. */
.mb-standalone .mb-app{padding-bottom:calc(155px + env(safe-area-inset-bottom, 0px))!important;}
.mb-standalone .mb-app .mb-nav{bottom:calc(44px + env(safe-area-inset-bottom, 0px))!important;}
@media(max-width:550px){.mb-standalone .mb-app .mb-nav{bottom:calc(44px + env(safe-area-inset-bottom, 0px))!important;}}

/* 1.6.6: progreso individual visible en cada recompensa */
.mb-voucher-progress{display:block;margin-top:10px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.22);font-size:12px;line-height:1.35;font-weight:700;color:inherit;}
