/* ============================================================
   ROCKY ID — CSS GLOBAL v1.0.3 (Fixed Sticky Nav)
   ============================================================ */

:root {
  --y:#f7d417;--y-rgb:247,212,23;--dk:#0a0a0a;--dk2:#111;--c1:#161616;--c2:#1e1e1e;
  --bor:#252525;--red:#e30613;--grn:#00e676;
}
body,#Wrapper,#Content,.content_wrapper,#page-content-wrap,
.mfn-main-section,.section_wrapper,.container,.column_attr,
.mcb-wrap,.mcb-column{background-color:var(--dk)!important;color:#fff!important;}
body{padding-bottom:110px!important;}

/* APP */
.ri-app{background:var(--dk);min-height:100vh;font-family:'Montserrat',sans-serif;color:#fff;width:100%;}
.ri-wrap{max-width:560px;margin:0 auto;width:100%;}
.ri-content{padding:16px 16px 80px;}
.ri-header{background:linear-gradient(180deg,#000,var(--dk2));border-bottom:1px solid var(--bor);}

/* PROFILE */
.ri-profile-row{display:flex;align-items:flex-start;gap:14px;padding:20px 20px 12px;}
.ri-avatar-col{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0;}
.ri-avatar-wrap{position:relative;cursor:pointer;}
.ri-nivel-pill{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;border-radius:20px;padding:3px 9px;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;}
.ri-avatar{width:68px;height:68px;border-radius:50%;border:2.5px solid var(--y);background:var(--c2);overflow:hidden;transition:box-shadow .4s;display:flex;align-items:center;justify-content:center;}
.ri-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.ri-avatar.ri-glow{box-shadow:0 0 0 3px rgba(var(--y-rgb),.25),0 0 14px rgba(var(--y-rgb),.15);}
.ri-dot{position:absolute;bottom:2px;right:2px;width:13px;height:13px;border-radius:50%;border:2px solid #000;background:var(--grn);transition:background .3s;}
.ri-dot.ri-dot-gold{background:var(--y);}
.ri-avatar-edit{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;background:var(--y);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;border:2px solid #000;}
.ri-pinfo{flex:1;min-width:0;padding-top:2px;}
.ri-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:3px;}
.ri-name{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.5px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.1;}
.ri-rp-pill{flex-shrink:0;background:rgba(var(--y-rgb),.12);border:1px solid rgba(var(--y-rgb),.25);border-radius:20px;padding:4px 10px;font-size:12px;font-weight:900;color:var(--y);font-family:'Barlow Condensed',sans-serif;white-space:nowrap;}
.ri-rid{font-size:11px;font-weight:700;color:var(--y);letter-spacing:2px;margin-bottom:6px;}
.ri-verify-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#666;cursor:pointer;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:none;border:1px solid #333;border-radius:20px;padding:4px 10px;font-family:'Montserrat',sans-serif;transition:all .2s;pointer-events:auto!important;}
.ri-verify-btn:hover{border-color:var(--y);color:var(--y);}
.ri-verified,.ri-verified-badge{display:inline-flex;align-items:center;gap:4px;font-size:9px;color:var(--y);font-weight:700;letter-spacing:.5px;text-transform:uppercase;}

/* PROGRESS */
.ri-pbar-wrap{padding:0 20px 14px;}
.ri-pbar-track{height:3px;background:var(--bor);border-radius:2px;overflow:hidden;margin:4px 0 3px;}
.ri-pbar-fill{height:100%;background:linear-gradient(90deg,var(--y),#ffd700);border-radius:2px;transition:width .6s ease;}
.ri-pbar-labels{display:flex;justify-content:space-between;font-size:11px;}
.ri-pbar-labels span:first-child{color:#555;}
.ri-pbar-labels span:last-child{color:var(--y);font-weight:700;}

/* TABS */
.ri-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--bor);}
.ri-tab{padding:13px 4px 11px;text-align:center;font-size:10px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.3px;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;background:none;border-left:none;border-right:none;border-top:none;font-family:'Montserrat',sans-serif;width:100%;pointer-events:auto!important;}
.ri-tab.active{color:var(--y);border-bottom-color:var(--y);}
.ri-tab:hover:not(.active){color:#888;}
.ri-tab-icon{font-size:15px;display:block;margin-bottom:3px;line-height:1;}

/* PANELS */
.ri-panel{display:none;}.ri-panel.active{display:block;}

/* SECTION LABEL */
.ri-sl{font-size:11px;color:var(--y);font-weight:900;text-transform:uppercase;letter-spacing:1.5px;border-left:2px solid var(--y);padding-left:7px;margin:16px 0 10px;}

/* WALLET */
.ri-wallet-card{background:linear-gradient(135deg,#0e0e00,#131300 40%,var(--c1));border:1px solid rgba(var(--y-rgb),.18);border-radius:14px;padding:18px 18px 16px;margin-bottom:16px;position:relative;overflow:hidden;}
.ri-wallet-card::after{content:'◈';position:absolute;bottom:-14px;right:8px;font-size:86px;color:rgba(var(--y-rgb),.03);line-height:1;pointer-events:none;}
.ri-wallet-label{font-size:11px;color:#555;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:5px;}
.ri-wallet-amt{font-family:'Barlow Condensed',sans-serif;font-size:46px;font-weight:900;color:var(--y);line-height:1;letter-spacing:-1px;margin-bottom:3px;}
.ri-wallet-sub{font-size:12px;color:#555;}
.ri-wallet-div{height:1px;background:var(--bor);margin:14px 0;}
.ri-ext-label{font-size:11px;color:#555;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;}
.ri-ext-item{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.ri-ext-item:last-child{margin-bottom:0;}
.ri-ext-l{display:flex;align-items:center;gap:9px;}
.ri-ext-ico{width:32px;height:32px;border-radius:8px;background:var(--c2);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}
.ri-ext-desc{font-size:14px;color:#aaa;line-height:1.4;}
.ri-ext-date{font-size:12px;color:#555;margin-top:2px;}
.ri-ext-val{font-size:15px;font-weight:700;}
.credit{color:var(--grn);}.debit{color:var(--red);}
.ri-ext-empty{font-size:12px;color:#2d2d2d;text-align:center;padding:10px 0;}

/* HOW */
.ri-how{background:var(--c1);border-radius:12px;padding:14px;border:1px solid var(--bor);margin-bottom:16px;}
.ri-how-item{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;}
.ri-how-item:last-child{margin-bottom:0;}
.ri-how-n{width:22px;height:22px;border-radius:50%;background:rgba(var(--y-rgb),.08);border:1px solid rgba(var(--y-rgb),.15);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900;color:var(--y);flex-shrink:0;}
.ri-how-t{font-size:13px;color:#666;line-height:1.6;}
.ri-how-t strong{color:#777;}

/* ACTION GRID */
.ri-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.ri-action-btn{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:14px 8px;text-align:center;cursor:pointer;transition:all .2s;display:block;pointer-events:auto!important;}
.ri-action-btn:hover{border-color:#333;transform:translateY(-1px);}
.ri-action-ico{font-size:20px;margin-bottom:5px;}
.ri-action-lbl{font-size:11px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.3px;}

/* QR PAY */
.ri-qr-wrap{background:#000;border-radius:14px;padding:24px 16px;text-align:center;border:1px solid var(--bor);}
.ri-qr-frame{display:inline-block;background:#fff;padding:10px;border-radius:12px;margin-bottom:14px;box-shadow:0 0 0 3px var(--y),0 0 18px rgba(var(--y-rgb),.12);}
.ri-qr-frame img{display:block;border-radius:4px;}
.ri-qr-rid{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;color:var(--y);letter-spacing:3px;margin-bottom:2px;}
.ri-qr-name{font-size:10px;color:#555;text-transform:uppercase;margin-bottom:10px;}
.ri-qr-bal{font-size:13px;color:#666;margin-bottom:13px;}
.ri-qr-bal strong{color:#fff;}
.ri-qr-timer{font-size:10px;color:#444;margin-bottom:14px;}
.ri-timer-val{color:var(--y);font-weight:900;font-family:'Barlow Condensed',sans-serif;font-size:15px;}
.ri-btn-refresh{background:transparent;border:1px solid var(--bor);color:#444;border-radius:8px;padding:9px 18px;font-size:10px;font-weight:700;cursor:pointer;font-family:'Montserrat',sans-serif;text-transform:uppercase;transition:all .2s;letter-spacing:.4px;pointer-events:auto!important;}
.ri-btn-refresh:hover{border-color:var(--y);color:var(--y);}
.ri-qr-note{font-size:11px;color:#444;margin-top:14px;line-height:1.7;}

/* MEUS KITS */
.ri-kit-card{background:var(--c1);border:1px solid var(--bor);border-left:3px solid var(--y);border-radius:0 12px 12px 0;padding:15px;margin-bottom:10px;}
.ri-kit-card.ri-kit-compra{border-left-color:#00b4d8;}
.ri-kit-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;}
.ri-kit-prova{font-size:13px;font-weight:900;color:var(--y);text-transform:uppercase;letter-spacing:.3px;}
.ri-kit-prova.azul{color:#00b4d8;}
.ri-kit-meta{font-size:12px;color:#555;margin-top:2px;}
.ri-kit-status{font-size:11px;font-weight:700;color:var(--y);border:1px solid rgba(var(--y-rgb),.3);border-radius:20px;padding:4px 10px;white-space:nowrap;}
.ri-kit-status.done{color:var(--grn);border-color:rgba(0,230,118,.3);}
.ri-kit-row{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.ri-kit-num{text-align:center;flex-shrink:0;}
.ri-kit-numero{font-family:'Barlow Condensed',sans-serif;font-size:52px;font-weight:900;color:var(--y);line-height:1;}
.ri-kit-num-lbl{font-size:9px;color:#444;text-transform:uppercase;letter-spacing:1px;}
.ri-kit-qr{flex:1;text-align:center;}
.ri-kit-qr-frame{background:#fff;display:inline-block;padding:6px;border-radius:8px;border:2px solid var(--y);}
.ri-kit-qr-frame img{display:block;border-radius:4px;}
.ri-kit-qr-lbl{font-size:11px;color:#555;margin-top:5px;}
.ri-kit-num-row{font-size:11px;color:#555;margin-bottom:10px;letter-spacing:.3px;}
.ri-kit-num-row strong{font-size:14px;margin-left:4px;}
.ri-kit-qr-center{text-align:center;padding:12px 0 4px;}
.ri-btn-qr{width:100%;background:var(--y);border:none;border-radius:8px;color:#000;padding:12px 0;font-size:12px;font-weight:900;cursor:pointer;font-family:'Montserrat',sans-serif;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;display:block;pointer-events:auto!important;}
.ri-btn-qr.azul{background:#00b4d8;color:#000;}
.ri-btn-qr:active{opacity:.8;}
.ri-btn-transfer{width:100%;background:transparent;border:none;border-top:1px solid var(--bor);color:#444;padding:10px 0 0;font-size:12px;font-weight:700;cursor:pointer;font-family:'Montserrat',sans-serif;text-transform:uppercase;transition:color .2s;letter-spacing:.4px;pointer-events:auto!important;}
.ri-btn-transfer:hover{color:var(--y);}

/* RESULTS */
.ri-result-card{background:var(--c1);border-radius:10px;border-left:3px solid var(--y);padding:13px 12px;margin-bottom:8px;display:flex;align-items:center;gap:12px;}
.ri-result-info{flex:1;min-width:0;}
.ri-result-etapa{font-size:10px;color:#555;text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px;}
.ri-result-prova{font-size:13px;font-weight:900;color:var(--y);text-transform:uppercase;}
.ri-result-meta{font-size:12px;color:#666;margin-top:2px;}
.ri-result-rank{font-size:11px;color:#444;margin-top:1px;}
.ri-result-time{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:#fff;text-align:right;flex-shrink:0;}

/* BUTTONS */
.ri-btn{width:100%;border:none;border-radius:10px;padding:16px;font-weight:900;font-size:14px;cursor:pointer;font-family:'Montserrat',sans-serif;text-transform:uppercase;letter-spacing:.3px;margin-top:10px;display:block;text-align:center;transition:opacity .2s;pointer-events:auto!important;}
.ri-btn:hover{opacity:.88;}
.ri-btn-red{background:var(--red);color:#fff;}
.ri-btn-yellow{background:var(--y);color:#000;}
.ri-btn-cancel{width:100%;background:none;border:none;color:#444;font-size:12px;cursor:pointer;margin-top:10px;font-family:'Montserrat',sans-serif;display:block;text-align:center;padding:8px 0;pointer-events:auto!important;}

/* MODAIS */
.ri-overlay{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9995;display:none;align-items:flex-end;justify-content:center;}
.ri-overlay.open{display:flex;}
.ri-sheet{background:var(--dk2);border-radius:20px 20px 0 0;border-top:1px solid var(--bor);padding:20px 20px calc(70px + env(safe-area-inset-bottom));width:100%;max-width:560px;max-height:calc(100vh - 70px);overflow-y:auto;}
#ri-modal-recarga .ri-sheet{max-height:calc(100vh - 80px);overflow-y:auto;margin-bottom:70px;}
.ri-sheet-handle{width:36px;height:3px;background:var(--bor);border-radius:2px;margin:0 auto 16px;}
.ri-sheet-title{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;}
.ri-sheet-sub{font-size:11px;color:#555;margin-bottom:16px;}

/* RECARGA */
.ri-val-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;}
.ri-val-btn{background:var(--c2);border:1.5px solid var(--bor);border-radius:10px;padding:13px 4px;text-align:center;cursor:pointer;transition:all .2s;pointer-events:auto!important;}
.ri-val-btn:hover,.ri-val-btn.ri-sel{border-color:var(--y);background:rgba(var(--y-rgb),.07);}
.ri-val-btn.ri-sel .ri-val-amt{color:var(--y);}
.ri-val-amt{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;color:#ccc;line-height:1;margin-bottom:2px;}
.ri-val-lbl{font-size:8px;color:#555;text-transform:uppercase;}
.ri-custom-row{display:flex;align-items:center;gap:8px;margin-bottom:14px;}
.ri-custom-pfx{font-size:14px;font-weight:700;color:#555;}
.ri-custom-inp{flex:1;background:var(--c2);border:1.5px solid var(--bor);border-radius:10px;padding:12px 14px;color:#fff;font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700;outline:none;transition:border-color .2s;}
.ri-custom-inp:focus{border-color:var(--y);}
.ri-custom-inp::placeholder{color:#333;}
.ri-total-box{background:rgba(var(--y-rgb),.05);border:1px solid rgba(var(--y-rgb),.1);border-radius:10px;padding:13px;text-align:center;margin-bottom:14px;}
.ri-total-lbl{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;}
.ri-total-amt{font-family:'Barlow Condensed',sans-serif;font-size:34px;font-weight:900;color:var(--y);}

/* LOJA */
.ri-loja-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px;}
.ri-prod-card{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:15px 12px;cursor:pointer;transition:all .2s;position:relative;pointer-events:auto!important;}
.ri-prod-card:hover{border-color:#333;transform:translateY(-1px);}
.ri-prod-card.ri-sel-prod{border-color:var(--y);background:rgba(var(--y-rgb),.04);}
.ri-prod-check{position:absolute;top:9px;right:9px;width:18px;height:18px;border-radius:50%;background:var(--y);display:none;align-items:center;justify-content:center;font-size:9px;color:#000;font-weight:900;}
.ri-prod-card.ri-sel-prod .ri-prod-check{display:flex;}
.ri-prod-emoji{font-size:28px;margin-bottom:7px;}
.ri-prod-name{font-size:11px;font-weight:700;color:#ccc;margin-bottom:4px;text-transform:uppercase;}
.ri-prod-price{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;color:var(--y);}
.ri-cart-row{display:flex;align-items:center;justify-content:space-between;background:var(--c2);border-radius:10px;padding:12px 14px;margin-bottom:10px;}
.ri-cart-info{font-size:11px;color:#555;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ri-cart-val{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:900;color:var(--y);flex-shrink:0;margin-left:10px;}

/* LOGIN */
.ri-login-field{margin-bottom:12px;}
.ri-login-label{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px;display:block;}
.ri-login-input{width:100%;background:var(--c2);border:1.5px solid var(--bor);border-radius:10px;padding:13px 14px;color:#fff;font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border-color .2s;box-sizing:border-box;}
.ri-login-input:focus{border-color:var(--y);}
.ri-login-input::placeholder{color:#444;}
.ri-login-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:20px;}
.ri-login-tab{padding:10px 4px;text-align:center;font-size:10px;font-weight:700;color:#444;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;background:none;border-left:none;border-right:none;border-top:none;font-family:'Montserrat',sans-serif;pointer-events:auto!important;}
.ri-login-tab.active{color:var(--y);border-bottom-color:var(--y);}
.ri-login-msg{font-size:11px;text-align:center;margin-top:10px;padding:8px;border-radius:8px;}
.ri-login-msg.ok{background:rgba(0,230,118,.1);color:var(--grn);}
.ri-login-msg.err{background:rgba(227,6,19,.1);color:var(--red);}

/* PERFIL — CHIPS + SEÇÕES + AUTO-SAVE */
.ri-pf-section{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;color:#444;text-transform:uppercase;letter-spacing:1.5px;padding:14px 0 8px;border-top:1px solid var(--bor);margin-top:4px;}
.ri-chip-group{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px;}
.ri-chip{background:var(--c2);border:1.5px solid var(--bor);border-radius:20px;padding:8px 15px;font-size:12px;font-family:'Montserrat',sans-serif;color:#888;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent;}
.ri-chip:active{transform:scale(.94);}
.ri-chip.active{background:var(--y);border-color:var(--y);color:#000;font-weight:700;}
.ri-field-saved{font-size:10px;color:var(--grn);opacity:0;transition:opacity .4s;pointer-events:none;float:right;font-weight:700;margin-left:6px;}
.ri-row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

/* STICKY NAV — flutuante estilo Instagram */
#ri-sticky-nav{display:flex;align-items:stretch;background:#161616;border-radius:32px;border:1px solid #252525;box-shadow:0 4px 24px rgba(0,0,0,.6);position:fixed;bottom:calc(env(safe-area-inset-bottom) + 17px);left:16px;right:16px;z-index:9990;overflow:hidden;}
.ri-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:13px 4px;text-decoration:none;color:#555;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;transition:color .2s;position:relative;cursor:pointer;border:none;background:none;font-family:'Montserrat',sans-serif;pointer-events:auto!important;}
.ri-nav-item.active,.ri-nav-item:focus{color:var(--y);outline:none;}
.ri-nav-item.active::before{content:'';position:absolute;top:0;left:20%;right:20%;height:2px;background:var(--y);border-radius:0 0 3px 3px;}
.ri-nav-icon{font-size:22px;margin-bottom:4px;display:block;line-height:1;}
.ri-nav-lbl{font-size:9px;line-height:1;}
.ri-nav-avatar{width:28px;height:28px;border-radius:50%;border:2px solid #444;object-fit:cover;display:block;margin-bottom:4px;transition:border-color .2s;}
.ri-nav-item.active .ri-nav-avatar{border-color:var(--y);}
.ri-nav-notif{position:absolute;top:6px;right:8px;width:8px;height:8px;background:#e30613;border-radius:50%;display:none;}
.ri-nav-notif.ativo{display:block;}
@media(min-width:768px){#ri-sticky-nav{left:50%;right:auto;transform:translateX(-50%);width:420px;bottom:calc(env(safe-area-inset-bottom) + 21px);}}

/* PAGE HEADER */
.ri-page-header{padding:16px 0 8px;border-bottom:1px solid #111;margin-bottom:16px;}
.ri-page-title{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:1px;line-height:1;}
.ri-page-sub{font-size:12px;color:#555;margin-top:4px;font-weight:500;}

/* INNER TABS */
.ri-inner-tabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid #1a1a1a;padding-bottom:0;}
.ri-inner-tab{background:none;border:none;border-bottom:2px solid transparent;padding:8px 12px;font-size:11px;font-weight:700;color:#444;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;font-family:'Montserrat',sans-serif;transition:all .2s;}
.ri-inner-tab.active{color:var(--y);border-bottom-color:var(--y);}

/* BETHEME FIX */
.column_attr .ri-tab,.column_attr .ri-action-btn,.column_attr .ri-val-btn,
.column_attr .ri-prod-card,.column_attr .ri-btn,.column_attr .ri-btn-refresh,
.column_attr .ri-btn-transfer,.column_attr .ri-login-tab,.column_attr .ri-nav-item,
.column_attr .ri-verify-btn,.column_attr button{pointer-events:auto!important;cursor:pointer!important;position:relative;z-index:1;}

/* UTILS */
.ri-loading{text-align:center;color:#444;padding:28px;font-size:13px;}
.ri-empty{text-align:center;color:#333;padding:28px;font-size:13px;}
.ri-hidden{display:none!important;}

/* ═══ RANKING + CALCULADORA ═══ */
.rmg-app-container-fluid{background:var(--dk);min-height:100vh;font-family:'Montserrat',sans-serif;color:#fff;}
.rmg-app-wrapper{max-width:640px;margin:0 auto;}
.rmg-app-content{padding:20px 18px 80px;}
.rmg-app-navbar{background:#000;padding:18px 20px;text-align:center;border-bottom:3px solid var(--y);position:sticky;top:0;z-index:100;}
.rmg-app-navbar .logo{font-weight:900;text-transform:uppercase;font-size:20px;letter-spacing:3px;color:#fff;}
.rmg-app-navbar .logo span{color:var(--y);}
.rmg-header-title h1{color:var(--y);font-weight:900;text-transform:uppercase;font-size:22px;text-align:center;margin:24px 0 4px;letter-spacing:1px;}
.rmg-header-title p{color:#666;font-size:11px;text-align:center;margin:0 0 20px;}
.rmg-section-label{font-size:10px;color:var(--y);font-weight:900;text-transform:uppercase;margin:22px 0 10px;letter-spacing:2px;border-left:3px solid var(--y);padding-left:8px;}
.rmg-grid-buttons,.rmg-grid-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:8px;}
.rmg-card,.rmg-card *{pointer-events:auto!important;cursor:pointer!important;}
.rmg-card{background:var(--c2);border:2px solid var(--bor);border-radius:10px;padding:14px 5px;text-align:center;transition:all .18s ease;font-weight:700;font-size:11px;color:#ccc;text-transform:uppercase;user-select:none;-webkit-tap-highlight-color:transparent;position:relative;z-index:1;display:block;box-sizing:border-box;}
.rmg-card:hover{border-color:#555;color:#fff;}
.rmg-card.active{border-color:var(--y)!important;background:var(--y)!important;color:#000!important;font-weight:900;}
.rmg-tabs{display:flex;gap:6px;margin-bottom:16px;overflow-x:auto;}
.rmg-tab,.rmg-tab *{pointer-events:auto!important;cursor:pointer!important;}
.rmg-tab{flex:1;background:var(--c2);border:2px solid var(--bor);border-radius:8px;padding:10px;text-align:center;font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.5px;transition:all .18s;font-family:'Montserrat',sans-serif;white-space:nowrap;position:relative;z-index:1;}
.rmg-tab.active{background:var(--y)!important;border-color:var(--y)!important;color:#000!important;font-weight:900;}
.rmg-btn-calc{width:100%;background:var(--red);color:#fff;border:none;padding:18px;border-radius:12px;font-weight:900;text-transform:uppercase;cursor:pointer!important;pointer-events:auto!important;margin-top:28px;font-size:15px;letter-spacing:1px;box-shadow:0 4px 20px rgba(227,6,19,.35);transition:opacity .2s;font-family:'Montserrat',sans-serif;}
.rmg-btn-calc:hover{opacity:.88;}
.rmg-rank-item{background:var(--c1);border-left:4px solid var(--y);border-radius:10px;padding:14px 12px;margin-bottom:10px;display:flex;align-items:center;gap:12px;}
.rmg-rank-pos{font-size:20px;font-weight:900;color:#333;width:32px;flex-shrink:0;text-align:center;}
.rmg-rank-avatar{width:42px;height:42px;border-radius:50%;border:2px solid var(--y);background:var(--c2);overflow:hidden;flex-shrink:0;}
.rmg-rank-avatar img{width:100%;height:100%;object-fit:cover;}
.rmg-rank-info{flex:1;overflow:hidden;min-width:0;}
.rmg-rank-name{font-size:12px;font-weight:900;color:#fff;margin:0 0 2px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rmg-rank-team{font-size:9px;color:var(--y);font-weight:700;margin:1px 0;text-transform:uppercase;}
.rmg-rank-time{font-size:11px;color:#888;margin:0;font-family:monospace;}
.rmg-rank-metrics{text-align:right;background:#000;padding:6px 9px;border-radius:8px;border:1px solid #1a1a1a;min-width:68px;flex-shrink:0;}
.rmg-metric-main{font-size:11px;font-weight:900;color:#fff;line-height:1.1;}
.rmg-metric-main span{font-size:7px;color:#555;display:block;letter-spacing:.5px;}
.rmg-metric-sub{font-size:8px;color:var(--y);margin-top:2px;font-weight:700;}
.pace-destaque{font-size:56px;font-weight:900;color:var(--y);text-align:center;margin:16px 0 4px;line-height:1;}
.rmg-frase-box{border-left:3px solid var(--y);padding:10px 14px;background:var(--c2);border-radius:0 8px 8px 0;margin:12px 0 8px;font-size:12px;color:#ccc;font-style:italic;}
.rmg-print-header{font-weight:900;font-size:16px;letter-spacing:3px;text-align:center;margin-bottom:4px;color:#fff;}
.rmg-print-header span{color:var(--y);}
#rmg-resultado-secundario{text-align:center;color:#aaa;font-size:13px;margin:0 0 8px;}
.rmg-btn-share{width:100%;background:transparent;border:2px solid var(--y);color:var(--y);padding:14px;border-radius:10px;font-weight:900;font-size:13px;cursor:pointer!important;margin-top:14px;display:flex;align-items:center;justify-content:center;gap:8px;font-family:'Montserrat',sans-serif;transition:background .2s,color .2s;}
.rmg-btn-share:hover{background:var(--y);color:#000;}
.rmg-search-box{display:flex;gap:8px;margin:12px 0 8px;}
.rmg-search-input{flex:1;background:var(--c2);border:2px solid var(--bor);border-radius:10px;padding:12px 14px;color:#fff;font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border-color .2s;}
.rmg-search-input:focus{border-color:var(--y);}
.rmg-search-input::placeholder{color:#555;}
.rmg-btn-buscar{background:var(--y);color:#000;border:none;border-radius:10px;padding:12px 16px;font-weight:900;font-size:12px;cursor:pointer!important;font-family:'Montserrat',sans-serif;white-space:nowrap;pointer-events:auto!important;}
.rmg-atleta-card{background:linear-gradient(135deg,#1a1a1a,var(--dk));border:1px solid var(--bor);border-top:4px solid var(--y);border-radius:12px;padding:20px;margin:16px 0;}
.rmg-atleta-nome{font-size:18px;font-weight:900;color:#fff;text-transform:uppercase;margin:0 0 4px;}
.rmg-atleta-meta{font-size:11px;color:#666;margin:0 0 16px;}
.rmg-atleta-meta span{color:var(--y);font-weight:700;margin-right:12px;}
.rmg-prova-hist{background:#111;border:1px solid var(--bor);border-radius:8px;padding:12px 14px;margin-bottom:8px;display:flex;align-items:center;gap:12px;}
.rmg-prova-hist-label{flex:1;}
.rmg-prova-hist-nome{font-size:11px;font-weight:900;color:var(--y);text-transform:uppercase;}
.rmg-prova-hist-cat{font-size:10px;color:#666;margin-top:2px;}
.rmg-prova-hist-right{text-align:right;}
.rmg-prova-hist-tempo{font-size:14px;font-weight:900;color:#fff;font-family:monospace;}
.rmg-prova-hist-rank{font-size:9px;color:#888;margin-top:2px;}
.rmg-empty-msg{text-align:center;color:#444;font-size:13px;padding:30px 20px;}
.rmg-hidden{display:none!important;}

/* ── MODAL PERFIL ATLETA ── */
.rmg-perfil-overlay{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:99999;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s;}
.rmg-perfil-overlay.active{opacity:1;pointer-events:auto;}
.rmg-perfil-sheet{background:var(--c1);border-radius:20px 20px 0 0;width:100%;max-width:480px;max-height:88vh;overflow-y:auto;padding:0 20px 40px;transform:translateY(40px);transition:transform .25s;}
.rmg-perfil-overlay.active .rmg-perfil-sheet{transform:translateY(0);}
.rmg-perfil-handle{width:40px;height:4px;background:#2a2a2a;border-radius:2px;margin:12px auto 20px;}
.rmg-perfil-header{display:flex;align-items:center;gap:16px;margin-bottom:18px;}
.rmg-perfil-avatar{width:64px;height:64px;border-radius:50%;border:3px solid var(--y);overflow:hidden;flex-shrink:0;background:var(--c2);}
.rmg-perfil-avatar img{width:100%;height:100%;object-fit:cover;}
.rmg-perfil-info{flex:1;min-width:0;}
.rmg-perfil-nome{font-size:15px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:8px;font-family:'Barlow Condensed',sans-serif;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rmg-perfil-badges{display:flex;flex-wrap:wrap;gap:5px;}
.rmg-perfil-badge{font-size:10px;background:var(--c2);border:1px solid var(--bor);border-radius:20px;padding:3px 8px;color:#888;}
.rmg-perfil-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:4px;}
.rmg-perfil-stat{background:var(--c2);border-radius:10px;padding:12px 8px;text-align:center;}
.rmg-perfil-stat-val{font-size:20px;font-weight:900;color:var(--y);font-family:'Barlow Condensed',sans-serif;}
.rmg-perfil-stat-lbl{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-top:2px;}
.rmg-perfil-prova-item{background:#111;border:1px solid var(--bor);border-radius:10px;padding:12px 14px;margin-bottom:8px;display:flex;align-items:center;cursor:pointer;transition:border-color .15s;}
.rmg-perfil-prova-item:active,.rmg-perfil-prova-item.active{border-color:var(--y);background:rgba(var(--y-rgb),.05);}
.rmg-perfil-prova-left{flex:1;min-width:0;}
.rmg-perfil-prova-nome{font-size:11px;font-weight:900;color:var(--y);text-transform:uppercase;}
.rmg-perfil-prova-cat{font-size:10px;color:#555;margin-top:2px;}
.rmg-perfil-prova-right{text-align:right;flex-shrink:0;}
.rmg-perfil-prova-tempo{font-size:14px;font-weight:900;color:#fff;font-family:monospace;}
.rmg-perfil-prova-metric{font-size:10px;color:#666;margin-top:2px;}
.rmg-perfil-detalhe-titulo{font-size:14px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:2px;font-family:'Barlow Condensed',sans-serif;}
.rmg-perfil-detalhe-cat{font-size:10px;color:#555;margin-bottom:14px;}
.rmg-perfil-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;}
.rmg-perfil-metric{background:var(--c2);border-radius:10px;padding:12px 8px;text-align:center;}
.rmg-perfil-metric-val{font-size:20px;font-weight:900;color:#fff;font-family:'Barlow Condensed',sans-serif;line-height:1;}
.rmg-perfil-metric-lbl{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-top:4px;}
.rmg-rytmo-label{font-size:10px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;}
.rmg-rytmo-track{position:relative;height:6px;background:#1e1e1e;border-radius:3px;margin-bottom:22px;}
.rmg-rytmo-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,var(--grn),var(--y),var(--red));border-radius:3px;}
.rmg-rytmo-dot{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:#fff;border:2px solid var(--y);border-radius:50%;}
.rmg-rytmo-lbl-esq{position:absolute;left:0;top:14px;font-size:9px;color:#444;}
.rmg-rytmo-lbl-dir{position:absolute;right:0;top:14px;font-size:9px;color:#444;}
.rmg-rytmo-diff{font-size:12px;font-weight:700;margin-top:4px;}
.rmg-rytmo-positive{color:var(--grn);}
.rmg-rytmo-negative{color:var(--red);}
.rmg-loading{text-align:center;color:#444;padding:24px;font-size:13px;}
.column_attr .rmg-card,.column_attr .rmg-tab,.column_attr .rmg-btn-calc,.column_attr .rmg-btn-buscar,.column_attr .rmg-btn-share,.column_attr button{pointer-events:auto!important;cursor:pointer!important;position:relative;z-index:2;}

/* ── MODAL RESULTADO DETALHADO ── */
.ri-res-header{margin-bottom:18px;}
.ri-res-prova{font-size:20px;font-weight:900;color:#fff;text-transform:uppercase;font-family:'Barlow Condensed',sans-serif;letter-spacing:.5px;}
.ri-res-etapa{font-size:11px;color:#555;margin-top:4px;}
.ri-res-podio{margin-top:8px;}
.ri-res-podio-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;margin-bottom:6px;background:#111;border:1px solid var(--bor);}
.ri-res-podio-eu{border-color:var(--y)!important;background:rgba(var(--y-rgb),.06);}
.ri-res-podio-pos{font-size:14px;font-weight:900;width:28px;flex-shrink:0;text-align:center;color:#888;}
.ri-res-podio-nome{flex:1;font-size:12px;font-weight:700;color:#bbb;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ri-res-podio-eu .ri-res-podio-nome{color:var(--y);}
.ri-res-podio-tempo{font-size:13px;font-weight:900;color:#fff;font-family:monospace;flex-shrink:0;}
.ri-res-podio-gap{text-align:center;color:#333;font-size:12px;padding:2px 0;letter-spacing:4px;}

/* ═══ RESPONSIVO ═══ */
@media (min-width:600px){
  .ri-wrap{max-width:580px;}
  .ri-name{font-size:24px;}
  .ri-tab{font-size:11px;padding:14px 4px 12px;}
  .ri-tab-icon{font-size:16px;}
  .ri-wallet-amt{font-size:52px;}
  .ri-ext-desc{font-size:13px;}
  .ri-ext-val{font-size:14px;}
  .ri-ext-date{font-size:11px;}
}
@media (min-width:960px){
  body{padding-bottom:110px!important;}
  .ri-wrap{max-width:680px;}
  .ri-name{font-size:28px;}
  .ri-rp-pill{font-size:14px;padding:5px 12px;}
  .ri-avatar{width:78px;height:78px;}
  .ri-tab{font-size:11px;padding:14px 8px 12px;}
  .ri-tab-icon{font-size:16px;margin-bottom:4px;}
  .ri-wallet-amt{font-size:56px;}
  .ri-ext-desc{font-size:13px;}
  .ri-how-t{font-size:13px;}
  .ri-action-ico{font-size:22px;}
  .ri-action-lbl{font-size:10px;}
  .ri-result-prova{font-size:13px;}
  .ri-result-time{font-size:22px;}
  .ri-overlay{align-items:center;}
  .ri-sheet{border-radius:16px;max-width:560px;margin:0 auto;}
  .rmg-app-wrapper{max-width:760px;}
}
@media (min-width:1280px){
  .ri-wrap{max-width:800px;}
  .rmg-app-wrapper{max-width:900px;}
}

/* ═══════════════════════════════════════════════════════════
   v1.2.0 — Cockpit, Toast, Quick Grid, Event Cards
   ═══════════════════════════════════════════════════════════ */

/* PATROCINADOR */
.ri-sponsor-bar{display:flex;align-items:center;justify-content:center;gap:8px;padding:7px 16px;background:#0d0d0d;border-bottom:1px solid var(--bor);font-size:9px;color:#444;text-transform:uppercase;letter-spacing:1px;}
.ri-sponsor-bar a{text-decoration:none;display:flex;align-items:center;gap:6px;}
.ri-sponsor-bar strong{color:#888;}
.ri-sponsor-bar img{opacity:.7;filter:brightness(1.2);}

/* BADGE DE NÍVEL */
.ri-nivel-badge{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;border-radius:20px;padding:3px 9px;margin-bottom:4px;letter-spacing:.5px;text-transform:uppercase;}

/* PULL TO REFRESH */
#ri-ptr{position:fixed;top:-56px;left:50%;transform:translateX(-50%);width:40px;height:40px;border-radius:50%;background:var(--c1);border:1px solid var(--bor);display:flex;align-items:center;justify-content:center;font-size:20px;z-index:9998;pointer-events:none;opacity:0;}
#ri-ptr.ri-ptr-snap{transition:top .25s ease,opacity .25s ease;}
#ri-ptr.ri-ptr-spin{animation:riPtrSpin .7s linear infinite;}
@keyframes riPtrSpin{to{transform:translateX(-50%) rotate(360deg);}}

/* TOAST */
.ri-toast{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:99999;padding:12px 20px;border-radius:10px;font-size:12px;font-weight:700;font-family:'Montserrat',sans-serif;white-space:normal;word-break:break-word;max-width:90vw;text-align:center;animation:riToastIn .3s ease;}
.ri-toast.success{background:#00a854;color:#fff;}
.ri-toast.error{background:#e30613;color:#fff;}
.ri-toast.info{background:#1565c0;color:#fff;}
@keyframes riToastIn{from{opacity:0;transform:translateX(-50%) translateY(-10px);}to{opacity:1;transform:translateX(-50%) translateY(0);}}

/* EVENT GRID — 2x2 */
.ri-event-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.ri-event-card{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:14px 12px;text-align:center;transition:border-color .2s;}
.ri-event-card:hover{border-color:#333;}
.ri-event-ico{font-size:20px;margin-bottom:4px;}
.ri-event-val{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#fff;line-height:1;margin-bottom:2px;}
.ri-event-lbl{font-size:12px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-top:4px;}

/* MINHA INSCRIÇÃO */
#ri-ins-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding-bottom:4px;}
#ri-ins-cards::-webkit-scrollbar{display:none;}
#ri-ins-cards .ri-minha-insc{flex:0 0 85%;scroll-snap-align:start;margin-bottom:0;}
.ri-minha-insc{background:var(--c1);border:1px solid var(--bor);border-left:3px solid var(--y);border-radius:0 12px 12px 0;padding:14px;margin-bottom:16px;cursor:pointer;transition:border-color .2s;}
.ri-minha-insc:hover{border-color:var(--y);}
.ri-mi-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.ri-mi-num{font-family:'Barlow Condensed',sans-serif;font-size:38px;font-weight:900;color:var(--y);line-height:1;}
.ri-mi-qrbtn{flex-shrink:0;background:rgba(var(--y-rgb),.08);border:1px solid rgba(var(--y-rgb),.2);border-radius:8px;padding:6px 10px;font-size:9px;color:#f7d417;font-weight:700;text-transform:uppercase;}
.ri-mi-prova{font-size:13px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:2px;}
.ri-mi-meta{font-size:12px;color:#666;margin-bottom:4px;}
.ri-mi-status{font-size:12px;font-weight:700;color:#888;}
.ri-mi-status.done{color:var(--grn);}
.ri-minha-insc--used{opacity:.4;cursor:default;pointer-events:none;filter:grayscale(.5);}
.ri-mi-arrow{display:none;}

/* NOTÍCIAS */
.ri-noticia{display:flex;gap:12px;align-items:flex-start;background:var(--c1);border:1px solid var(--bor);border-radius:10px;padding:12px;margin-bottom:8px;cursor:pointer;transition:border-color .2s;}
.ri-noticia:hover{border-color:#333;}
.ri-noticia-thumb{width:54px;height:54px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--c2);}
.ri-noticia-info{flex:1;min-width:0;}
.ri-noticia-titulo{font-size:11px;font-weight:700;color:#ddd;margin-bottom:3px;line-height:1.4;}
.ri-noticia-data{font-size:9px;color:#444;}

/* QUICK GRID — ações rápidas */
.ri-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;}
.ri-quick-btn{background:var(--c2);border:1.5px solid var(--bor);border-radius:12px;padding:14px 4px;text-align:center;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:5px;pointer-events:auto!important;text-decoration:none;}
.ri-quick-btn:hover{border-color:var(--y);background:rgba(var(--y-rgb),.06);transform:translateY(-2px);}
.ri-quick-ico{font-size:22px;line-height:1;}
.ri-quick-lbl{font-size:11px;font-weight:700;color:#555;text-transform:uppercase;letter-spacing:.3px;}

/* SALDO HOME */
#ri-saldo-home{font-size:20px;}

/* ─── Admin Dashboard ─────────────────────────────── */
.ri-admin-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:20px 0;}
@media (min-width:768px){.ri-admin-grid{grid-template-columns:repeat(2,1fr);}}
.ri-admin-card{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:16px;}
.ri-admin-card-title{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:900;text-transform:uppercase;color:var(--y);margin-bottom:12px;}
.ri-admin-card-content{display:flex;flex-direction:column;gap:8px;}
.ri-admin-stat-row{display:flex;justify-content:space-between;align-items:center;padding:8px;border-bottom:1px solid var(--bor);font-size:12px;}
.ri-admin-stat-row:last-child{border-bottom:none;}
.ri-admin-stat-label{color:#999;}
.ri-admin-stat-value{color:var(--y);font-weight:bold;font-family:'Courier New',monospace;}
.ri-admin-progress{width:100%;height:6px;background:var(--c2);border-radius:3px;overflow:hidden;margin-top:8px;}
.ri-admin-progress-bar{height:100%;transition:width .3s ease;}
.ri-admin-footer{display:flex;justify-content:center;align-items:center;gap:12px;padding:20px;border-top:1px solid var(--bor);margin-top:20px;}
#ri-admin-last-update{font-size:11px;color:#555;}
.ri-loader{width:20px;height:20px;margin:20px auto;border:2px solid var(--bor);border-top:2px solid var(--y);border-radius:50%;animation:spin .8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

/* Admin page — hide sticky menu */
.ri-admin-page #ri-sticky-nav{display:none!important;}

/* Loja — botões de categoria */
.ri-loja-cat-btn.active{border-color:var(--y);background:rgba(var(--y-rgb),.06);}
.ri-loja-cat-btn.active .ri-action-lbl{color:var(--y);}
