*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg);background-size:cover;background-repeat:no-repeat;background-attachment:fixed;background-position:center;font-family:"Rubik",sans-serif!important;min-height:100dvh;display:flex;flex-direction:column;margin:0;padding:0}.layout-wrapper{display:flex;min-height:100dvh;width:100%!important}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);width:340px!important;height:100dvh;padding:20px;color:var(--text);flex-shrink:0;display:flex;flex-direction:column;align-items:center;font-family:"Rubik",sans-serif;justify-content:space-between;position:fixed;top:0;left:-100%;transition:left 0.3s ease;z-index:1000}.sidebar-close{display:none;position:absolute;top:16px;right:16px;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;color:var(--text);font-size:26px;line-height:1;cursor:pointer;z-index:1}.sidebar-header{margin-top:20px;margin-bottom:20px}.sidebar-logo-fidelyt{width:200px;height:auto}.sidebar-logo{height:62px;width:58px;height:auto}.sidebar-nav{width:100%;margin-top:auto;text-align:left;font-size:17px;color:var(--text);overflow-y:auto;padding-right:10px;overflow-x:hidden}.sidebar-nav a{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;padding:12px 20px;border-radius:6px;transition:background-color 0.3s;font-weight:400;font-size:15px}.sidebar-nav a:hover{background-color:var(--surface-2)}.sidebar-nav a.active{background-color:var(--brand);font-weight:600}.sidebar-nav-item-icon{width:32px;height:32px;min-width:32px;border-radius:8px;background-size:contain;background-repeat:no-repeat;background-position:center;display:flex;align-items:center;justify-content:center;background-color:transparent;box-shadow:none;transition:transform 0.2s ease,opacity 0.2s ease}.sidebar-nav a:hover .sidebar-nav-item-icon,.nav-item.active .sidebar-nav-item-icon{transform:translateY(-1px);opacity:1}.sidebar-nav a .sidebar-nav-item-icon{opacity:0.95}.sidebar-nav a.home .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/home.svg?5d3fbe8c8f97")}.sidebar-nav a.promotion .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/no-logo.svg?5d3fbe8c8f97")}.sidebar-nav a.register .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/pencil.svg?5d3fbe8c8f97")}.sidebar-nav a.clients .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/premio.svg?5d3fbe8c8f97")}.sidebar-nav a.push .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/bell.svg?5d3fbe8c8f97")}.sidebar-nav a.statistics .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/chart.svg?5d3fbe8c8f97")}.sidebar-nav .nav-item-badge{flex:0 0 auto;font-size:10px;font-weight:700;line-height:1.5;padding:2px 7px;border-radius:999px;background:rgba(255,255,255,0.14);color:var(--text)}.sidebar-nav a.profiles .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/profile.svg?5d3fbe8c8f97")}.sidebar-nav a.billing .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/card.svg?v=2&5d3fbe8c8f97")}.sidebar-nav a.logout .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/close.svg?5d3fbe8c8f97")}.sidebar-nav a.register-user .sidebar-nav-item-icon{background-image:url("/static/businesses/icons/add-user.svg?v=2&5d3fbe8c8f97")}.sidebar-nav-item{flex:1}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;width:100%}.sidebar-bottom{position:relative;flex-direction:column;align-items:stretch}.sidebar-account-toggle{position:relative;box-sizing:border-box;padding:12px 34px 12px 8px;border:1px solid rgba(212,181,255,0.22);border-radius:16px;background:rgba(255,255,255,0.06);cursor:pointer;text-align:left;transition:background 0.2s ease,border-color 0.2s ease}.sidebar-account-toggle:hover,.sidebar-bottom.is-open .sidebar-account-toggle{background:rgba(212,181,255,0.16);border-color:rgba(212,181,255,0.38)}.sidebar-account-toggle:focus-visible{outline:2px solid var(--text-muted);outline-offset:2px}.sidebar-account-toggle .sidebar-bottom-separator{display:none}.sidebar-account-caret{position:absolute;top:50%;right:12px;transform:translateY(-50%) rotate(180deg);color:var(--text-muted);font-size:12px;transition:transform 0.2s ease}.sidebar-bottom.is-open .sidebar-account-caret{transform:translateY(-50%) rotate(0deg)}.sidebar-account-menu{display:none;position:absolute;left:0;right:0;bottom:calc(100% + 8px);padding:6px;border-radius:16px;border:1px solid rgba(212,181,255,0.18);background:var(--surface-1);box-shadow:0 18px 34px rgba(7,8,20,0.45);z-index:30}.sidebar-bottom.is-open .sidebar-account-menu{display:block}.sidebar-account-item{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;color:var(--text-muted);font-size:14px;font-weight:500;text-decoration:none}.sidebar-account-item:hover{background:rgba(212,181,255,0.14);color:var(--text)}.sidebar-account-item i{width:16px;text-align:center;color:var(--text-muted);font-size:13px}.sidebar-account-divider{height:1px;margin:6px 8px;background:rgba(212,181,255,0.14)}.sidebar-account-item.is-logout:hover{background:rgba(255,138,138,0.14);color:var(--text-muted)}.sidebar-account-item.is-logout:hover i{color:var(--text-muted)}.sidebar-bottom-container{display:flex;flex-direction:column;width:100%;gap:8px}.sidebar-bottom-data{display:flex;align-items:center;justify-content:space-between;gap:2px}.sidebar-bottom-info{display:flex;flex-direction:column;text-align:left;margin-left:10px;flex:1;min-width:0}.sidebar-bottom-business-name{font-size:18px;color:var(--text-muted);margin-bottom:4px;font-weight:500;display:flex;align-items:center;gap:6px;width:100%}.sidebar-bottom-business-name span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-bottom-business-name i{margin-right:10px}.sidebar-bottom-business-name .edit-profile-icon{flex-shrink:0}.sidebar-bottom-profile-name{font-size:12px;color:var(--text-muted);margin-bottom:4px;font-weight:500;display:flex;align-items:center;justify-content:space-between;width:100%}.sidebar-bottom-profile-name span{margin-left:auto}.sidebar-bottom-logo-container{flex-shrink:0}.sidebar-bottom-logo{width:60px;height:58px;border-radius:8px;display:block}.sidebar-bottom-separator{width:100%;height:4px;background-image:url("/static/businesses/files/separator-sidebar.svg?5d3fbe8c8f97");border-radius:1px}.sidebar-footer{text-align:center;padding:10px;font-size:12px;color:var(--text-muted);margin-top:15px}.modal-overlay{display:none!important;position:fixed!important;inset:0!important;background:rgba(0,0,0,0.6)!important;z-index:3000!important;justify-content:center!important;align-items:center!important}.modal-overlay.active{display:flex!important}.modal-card{background:var(--surface-1)!important;color:var(--text)!important;border-radius:40px!important;padding:40px 35px!important;width:90%!important;max-width:420px!important;position:relative!important;text-align:left!important;box-shadow:0 0 25px rgba(0,0,0,0.3)!important;background-size:cover!important;background-position:center!important;overflow:hidden!important}.close-btn{position:absolute!important;top:12px!important;right:12px!important;background:var(--surface-2)!important;color:var(--text)!important;border:none!important;font-size:24px!important;width:38px!important;height:38px!important;border-radius:50%!important;cursor:pointer!important;box-shadow:0 2px 5px rgba(0,0,0,0.2)!important;transition:transform 0.2s ease!important}.close-btn:hover{transform:scale(1.1)!important}.modal-subtitle{font-size:1.2em;color:var(--text);font-weight:400;margin:0}.modal-title{font-size:1.8em;color:var(--text);font-weight:800;margin:4px 0 20px}.modal-card .form-group{margin-bottom:18px!important}.modal-card label{display:block!important;font-size:1em!important;margin-bottom:6px!important;color:var(--text)!important}.modal-card input{width:100%!important;padding:12px 14px!important;border-radius:14px!important;border:none!important;outline:none!important;font-size:0.95em!important;background:var(--surface-2)!important;font-style:italic!important;color:var(--text)!important;box-shadow:inset 0 1px 3px rgba(0,0,0,0.1)!important}.modal-card input.input-invalid{box-shadow:inset 0 1px 3px rgba(0,0,0,0.1),0 0 0 2px var(--danger)!important}.modal-submit{width:100%;background:var(--surface-1);color:var(--text);font-weight:700;border:none;border-radius:25px;padding:14px 0;margin-top:10px;cursor:pointer;font-size:1em;transition:background 0.3s ease,transform 0.2s ease}.modal-submit:hover{background:var(--surface-1);transform:translateY(-1px)}.modal-message{padding:10px 14px;border-radius:6px;font-size:0.9em;margin:0 0 16px}.modal-message.success{background-color:var(--success-soft);color:var(--success)}.modal-message.error{background-color:var(--danger-soft);color:var(--danger)}.modal-field-error{display:block;color:var(--danger);font-size:0.8em;margin-top:4px}.modal-decor-top-left{position:absolute!important;top:-30px!important;left:-30px!important;width:140px!important;height:auto!important;z-index:1!important;pointer-events:none!important;opacity:0.9!important}.modal-decor-bottom-right{position:absolute!important;bottom:-30px!important;right:-30px!important;width:140px!important;height:auto!important;z-index:1!important;pointer-events:none!important;opacity:0.9!important}.modal-card>*{position:relative;z-index:2}.register-user-modal-card{box-sizing:border-box!important;width:min(92vw,520px)!important;max-width:520px!important;padding:44px 42px 38px!important;border:1px solid rgba(213,204,255,0.10)!important;border-radius:30px!important;isolation:isolate!important}.register-user-modal-card .modal-subtitle{color:var(--text)!important;font-size:clamp(20px,3vw,24px)!important;font-weight:600!important}.register-user-modal-card .modal-title{margin:6px 0 26px!important;font-size:clamp(30px,5vw,38px)!important;line-height:1.05!important}.register-user-modal-card .form-group{margin-bottom:22px!important}.register-user-modal-card input{box-sizing:border-box!important;min-height:52px!important;border:1px solid rgba(213,204,255,0.08)!important;border-radius:18px!important;background:var(--surface-2)!important}.register-user-modal-card .modal-submit{min-height:52px!important;margin-top:28px!important;border-radius:18px!important;background:var(--primary)!important;color:var(--text)!important;box-shadow:0 16px 28px rgba(72,61,150,0.28)!important}.register-user-modal-card .modal-submit:hover{background:var(--primary)!important;box-shadow:0 18px 32px rgba(72,61,150,0.34)!important}.register-user-modal-card .modal-decor-top-left{top:-76px!important;left:-76px!important;width:190px!important;z-index:0!important;opacity:0.34!important}.register-user-modal-card .modal-decor-bottom-right{right:-92px!important;bottom:-92px!important;width:220px!important;z-index:0!important;opacity:0.28!important}@media (max-width:560px){.register-user-modal-card{width:calc(100vw - 28px)!important;padding:36px 24px 30px!important;border-radius:24px!important}.register-user-modal-card .modal-title{margin-bottom:24px!important}.register-user-modal-card .modal-decor-top-left{top:-68px!important;left:-72px!important;width:160px!important}.register-user-modal-card .modal-decor-bottom-right{right:-88px!important;bottom:-88px!important;width:190px!important}}.goal-bg-left-decor{position:absolute;top:0;left:0;height:100%;width:auto;pointer-events:none;user-select:none;z-index:1;opacity:0.35}.goal-bg-right-decor{position:absolute;top:0;right:0;height:100%;width:auto;pointer-events:none;user-select:none;z-index:1;opacity:0.35}.reward-complete-card{background-image:linear-gradient(180deg,#cbb2dd 0%,#4a55a8 75%,#342e3a 100%)!important}.reward-complete-content{display:flex;flex-direction:column;align-items:center;text-align:center}.reward-complete-title{font-size:1.8rem;font-weight:800;margin:0px 0 10px;text-align:center;color:var(--text)}.reward-icon{margin-bottom:10px}.reward-icon-complete{width:120px;display:block}.reward-customer-name{position:relative;font-size:1.4rem;font-weight:900;margin:40px 85px 30px;line-height:1.1;text-transform:uppercase;color:var(--text)}.reward-customer-name::before{content:"";position:absolute;inset:-40px;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,0.136) 0deg 6deg,transparent 6deg 12deg);border-radius:50%;z-index:-1;opacity:0.9}.reward-description{font-size:0.9rem;opacity:0.95;margin-top:15px;margin-bottom:10px;color:var(--text)}.reward-footer{font-size:1.2rem;font-weight:800;color:var(--text)}.main-content{flex:1;padding:20px;min-width:300px!important;width:calc(100% - 340px)!important;margin-left:340px;display:flex;flex-direction:column;min-height:100dvh;box-sizing:border-box;font-family:"Rubik",sans-serif;position:relative;overflow-y:auto;align-items:center}.header-section{background-color:var(--surface-1);padding:20px 30px;border-radius:12px;margin-bottom:30px;box-shadow:0 4px 12px rgba(0,0,0,0.05);width:100%!important;min-width:300px!important}.header-section h1{font-size:24px;margin-bottom:10px;color:var(--info)}.header-section p{color:var(--text);font-size:14px}.card{flex:1;min-width:200px;background-color:white;padding:20px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);text-align:center}.card h3{font-size:18px;color:var(--info);margin-bottom:10px}.card p{font-size:22px;color:var(--text);font-weight:600}.button_orange{width:100%;padding:12px;background-color:var(--primary);color:white;border:none;border-radius:6px;font-weight:bold;font-size:16px;cursor:pointer;transition:background-color 0.3s ease}.button_orange:hover{background-color:var(--primary-hover)}.button_rose{width:100%;padding:12px;background-color:var(--text-muted);color:white;border:none;border-radius:6px;font-weight:bold;font-size:16px;cursor:pointer;transition:background-color 0.3s ease}.button_rose:hover{background-color:var(--surface-3)}.button_rose_dup{width:100%;padding:12px;background-color:var(--surface-1);color:white;border:none;border-radius:6px;font-weight:bold;font-size:16px;cursor:pointer;transition:background-color 0.3s ease}.button_rose_dup:hover{background-color:var(--surface-1)}@supports not (height:100dvh){body{min-height:100dvh}}.promo-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:9999;display:flex;justify-content:center;align-items:center;animation:fadeIn 0.4s ease}.promo-card-dialog{background:var(--surface-1);border-radius:40px;padding:30px 30px 80px;max-width:420px;width:90%;color:var(--text);text-align:center;position:relative;box-shadow:0 8px 25px rgba(0,0,0,0.25);overflow:hidden;margin:auto}.promo-card-dialog.hidden{opacity:0;pointer-events:none;transform:scale(0.95)}.promo-close{position:absolute;top:15px;right:15px;background:var(--surface-2);color:var(--text);border:none;border-radius:50%;width:32px;height:32px;font-size:18px;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,0.2)}.promo-subtitle{font-size:16px;margin-bottom:6px;color:var(--text)}.promo-title{font-size:26px;font-weight:700;margin-bottom:20px;color:var(--text)}.promo-text{font-size:16px;color:var(--text);margin:14px 0}.promo-img{position:absolute;bottom:-25px;left:-10px;width:170px;z-index:0;pointer-events:none;animation:popIn 0.6s ease forwards}.promo-content{position:relative;z-index:1}.promo-btn{background:var(--primary);color:var(--text);border:none;border-radius:10px;padding:12px 28px;font-size:17px;font-weight:600;cursor:pointer;box-shadow:none;transition:transform 0.2s ease,box-shadow 0.2s ease;position:relative;z-index:2}.promo-btn:hover{transform:translateY(2px);box-shadow:none}.promo-link{position:absolute;bottom:-50px;right:-25px;color:var(--text);font-weight:600;text-decoration:underline;font-size:15px;cursor:pointer;z-index:3}@keyframes popIn{0%{transform:scale(0.8) rotate(-8deg);opacity:0}80%{transform:scale(1.05) rotate(3deg);opacity:1}100%{transform:scale(1) rotate(0)}}#promoStep1{display:flex;justify-content:center;align-items:center;position:relative}#promoStep1 .promo-content{margin:0 auto;width:100%;max-width:85%}.goal-bg-left{position:absolute;top:0;left:0;height:100%;width:auto;pointer-events:none;user-select:none;z-index:-1;opacity:0.5;filter:brightness(0.95)}.goal-bg-right{position:absolute;top:0;right:0;height:100%;width:auto;pointer-events:none;user-select:none;z-index:-1;opacity:0.5;filter:brightness(0.95)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.inactive-promotion-content .promo-btn{background:var(--primary);color:var(--text);border:none;border-radius:10px;padding:12px 26px;font-size:16px;font-weight:600;cursor:pointer;box-shadow:none;transition:transform 0.2s ease,box-shadow 0.2s ease}.inactive-promotion-content .promo-btn:hover{transform:translateY(2px);box-shadow:none}.sidebar-bottom-link{text-decoration:none;color:inherit;width:100%}a.sidebar-bottom-link:hover .sidebar-bottom-container{cursor:pointer}.sidebar-nav .nav-item{position:relative}.sidebar-nav .nav-item[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-6px);background-color:var(--surface-1);color:var(--text-muted);padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.4;width:auto;max-width:200px;text-align:center;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;opacity:0;pointer-events:none;transition:opacity 0.2s ease,transform 0.2s ease;box-shadow:0 4px 12px rgba(0,0,0,0.35);z-index:999}.sidebar-nav .nav-item::before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent var(--surface-1) transparent transparent;opacity:0;transition:opacity 0.2s ease;z-index:998}.sidebar-nav .nav-item:hover::after,.sidebar-nav .nav-item:hover::before{opacity:1}.sidebar.collapsed .sidebar-nav .nav-item::after,.sidebar.collapsed .sidebar-nav .nav-item::before{display:block}.messages{list-style:none;padding:0;margin:10px 0}.messages li{background-color:var(--danger-soft);color:var(--danger);padding:10px;border-radius:6px}.messages li.success{background-color:var(--success-soft);color:var(--success)}.messages li.error{background-color:var(--danger-soft);color:var(--danger)}.messages li.warning{background-color:var(--warning-soft);color:var(--warning)}.messages li.info{background-color:var(--info-soft);color:var(--info)}@media (min-width:831px){.sidebar{left:0}}@media (max-width:830px){.sidebar{left:-100%;width:100%!important}.sidebar.active{left:0}.sidebar-close{display:flex}.main-content{margin-left:0!important;width:100%!important}body.sidebar-open{overflow:hidden}body.sidebar-open .main-content{overflow:hidden!important}}.btn-is-loading{position:relative;color:transparent!important;pointer-events:none;opacity:0.8}.btn-is-loading::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2.5px solid rgba(255,255,255,0.4);border-top-color:var(--border-strong);border-radius:50%;animation:btn-loading-spin 0.7s linear infinite}@keyframes btn-loading-spin{to{transform:rotate(360deg)}}.mobile-tabbar{display:none}@media (max-width:830px){.mobile-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:1100;display:flex;align-items:stretch;background:var(--sidebar);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:9px 4px 8px;background:transparent;border:none;color:var(--text-muted);font-family:var(--font);font-size:11px;font-weight:500;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}.mobile-tab i{font-size:18px;line-height:1}.mobile-tab span{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-tab.active{color:var(--text)}.mobile-tab.active i{color:var(--accent)}body.sidebar-open .mobile-tabbar{display:none}.main-content{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))!important}}.sidebar-nav .nav-item.is-locked,.mobile-tab.is-locked,.register-visit-button.is-locked,.register-visit-button-full.is-locked,.btn-complete-profile.is-locked,.reddeem-text.is-locked,.stickers-empty-cta.is-locked,.reward-card-edit.is-locked{cursor:not-allowed}.mobile-tab.is-locked,.register-visit-button.is-locked,.register-visit-button-full.is-locked,.btn-complete-profile.is-locked,.reddeem-text.is-locked,.stickers-empty-cta.is-locked,.reward-card-edit.is-locked{opacity:.5}.sidebar-nav .nav-item.is-locked .sidebar-nav-item,.sidebar-nav .nav-item.is-locked .sidebar-nav-item-icon{opacity:.5}.sidebar-nav .nav-item.is-locked:hover{background-color:transparent}.sidebar-nav .nav-item.is-locked:hover .sidebar-nav-item-icon{transform:none}.sidebar-nav .nav-item.is-locked[data-tooltip]::after{left:14px;transform:translateY(-2px);background-color:var(--accent-soft);color:var(--bg);font-weight:600;max-width:220px;box-shadow:0 6px 16px rgba(0,0,0,.45)}.account-suspended-banner{display:flex;align-items:flex-start;gap:14px;width:100%;margin:0 0 22px;padding:16px 20px;border:1px solid var(--warning);border-radius:var(--radius);background:var(--warning-soft);font-family:"Rubik",sans-serif}.account-suspended-banner-icon{flex:0 0 auto;margin-top:2px;color:var(--warning);font-size:18px}.account-suspended-banner-copy strong{display:block;margin-bottom:4px;color:var(--warning);font-size:14px;font-weight:700;letter-spacing:0.03em;text-transform:uppercase}.account-suspended-banner-copy p{margin:0;color:var(--text);font-size:15px;line-height:1.5}@media (max-width:600px){.account-suspended-banner{padding:14px 16px}.account-suspended-banner-copy p{font-size:14px}}