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

:root {
  --y:#ffe74c;--y-rgb:255,231,76;--dk:#0a0a0a;--dk2:#111;--c1:#161616;--c2:#1e1e1e;
  --bor:#252525;--red:#e30613;--grn:#00e676;--c-txt:#fff;
}
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-app input,.ri-app button,.ri-app select,.ri-app textarea{font-family:inherit;}
.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;}

/* NÍVEL BAR (Zona 1) */
.ri-nivel-bar{padding:4px 20px 14px;}
.ri-nivel-bar-track{height:4px;background:var(--bor);border-radius:2px;overflow:hidden;}
.ri-nivel-bar-fill{height:100%;background:linear-gradient(90deg,var(--y),#ffd700);border-radius:2px;transition:width .6s ease;}
.ri-nivel-bar-labels{display:flex;justify-content:space-between;margin-top:5px;font-size:9.5px;color:#555;}
.ri-nivel-faltam{color:var(--y);font-weight:700;}

/* NÍVEL BADGE + RP COL (header redesign) */
.ri-nivel-badge{position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);font-family:'Barlow Condensed',sans-serif;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.6px;padding:2px 8px;border-radius:4px;white-space:nowrap;line-height:1.5;border:1.5px solid rgba(0,0,0,.2);z-index:1;}
.ri-rp-col{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:rgba(var(--y-rgb),.08);border:1px solid rgba(var(--y-rgb),.2);border-radius:12px;padding:8px 12px;cursor:pointer;transition:background .2s;}
.ri-rp-col:hover{background:rgba(var(--y-rgb),.14);}
.ri-rp-num{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:var(--y);line-height:1;text-align:center;}
.ri-rp-lbl{font-size:9px;color:var(--y);font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.7;}

/* MISSÃO DA SEMANA (Zona 2) */
.ri-missao-card{background:var(--c1);border:1px solid var(--bor);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:14px;margin-bottom:10px;cursor:pointer;}
.ri-missao-info{flex:1;min-width:0;}
.ri-missao-titulo{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#666;margin-bottom:2px;}
.ri-missao-prog{font-size:22px;font-weight:900;color:#fff;line-height:1.1;}
.ri-missao-recomp{font-size:10px;color:var(--y);margin-top:3px;}
.ri-missao-status{font-size:10px;font-weight:700;white-space:nowrap;flex-shrink:0;}

/* STREAK (Zona 3) */
.ri-streak-bar{background:var(--c1);border:1px solid var(--bor);border-radius:14px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;}
.ri-streak-left{display:flex;align-items:center;gap:6px;}
.ri-streak-fire{font-size:22px;line-height:1;}
.ri-streak-num{font-size:28px;font-weight:900;color:var(--y);line-height:1;}
.ri-streak-lbl{font-size:11px;color:#555;font-weight:700;text-transform:uppercase;letter-spacing:.3px;}
.ri-streak-dots{display:flex;gap:4px;align-items:center;}
.ri-streak-dot{width:24px;height:24px;border-radius:50%;background:var(--c2);border:1px solid var(--bor);display:flex;align-items:center;justify-content:center;font-size:8px;color:#444;font-weight:700;}
.ri-streak-dot.done{background:var(--grn);border-color:var(--grn);color:#000;}
.ri-streak-dot.today{background:var(--y);border-color:var(--y);color:#000;box-shadow:0 0 0 3px rgba(255,231,76,.2);}
.ri-streak-dot.future{opacity:.3;}

/* SVG RING MISSÃO */
.ri-ring-active{stroke:var(--y);}
.ri-ring-done{stroke:var(--grn);}

/* CARD EVENTO FULL-WIDTH (Zona 4) */
.ri-event-card-full{border-radius:14px;border:1px solid var(--bor);background:var(--c1);}

/* AVATARES HOJE (Zona 5) */
.ri-hoje-wrap{padding:8px 0 2px;display:flex;align-items:center;gap:10px;}
.ri-hoje-avatars{display:flex;}
.ri-hoje-av{width:26px;height:26px;border-radius:50%;background:var(--c2);border:2px solid var(--c1);overflow:hidden;margin-left:-7px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--y);flex-shrink:0;}
.ri-hoje-av:first-child{margin-left:0;}
.ri-hoje-av img{width:100%;height:100%;object-fit:cover;}
.ri-hoje-fomo{font-size:10px;color:#555;line-height:1.3;}

/* CARD REGISTRAR TREINO (Zona 6) */
.ri-treino-registrar{display:inline-flex;align-items:center;gap:7px;background:var(--c1);border:1px dashed var(--bor);border-radius:10px;padding:8px 14px;font-size:11px;font-weight:700;color:#555;cursor:pointer;margin-top:6px;margin-bottom:14px;transition:border-color .2s,color .2s;}
.ri-treino-registrar:hover{border-color:var(--y);color:var(--y);}

/* ACTION GRID */
.ri-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;}
.ri-action-btn{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:12px 6px;text-align:center;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;pointer-events:auto!important;}
.ri-action-btn:hover{border-color:#333;transform:translateY(-1px);}
.ri-action-ico{display:flex;align-items:center;justify-content:center;height:24px;flex-shrink:0;}
.ri-action-lbl{font-size:9.5px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;}

/* 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:center;justify-content:center;}
.ri-overlay.open{display:flex;}
.ri-sheet{background:var(--dk2);border-radius:16px;border:1px solid var(--bor);padding:20px;width:calc(100% - 32px);max-width:560px;max-height:90vh;overflow-y:auto;position:relative;}
#ri-modal-recarga .ri-sheet{max-height:88vh;overflow-y:auto;}
.ri-sheet-handle{display:none;}
.ri-sheet-close{position:absolute;top:14px;right:14px;width:28px;height:28px;background:rgba(255,255,255,.08);border:1.5px solid var(--bor);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;color:#777;line-height:1;transition:all .2s;pointer-events:auto!important;z-index:2;}
.ri-sheet-close:hover{background:rgba(255,255,255,.15);color:#ccc;}
.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:var(--c-txt);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{margin-bottom:5px;display:flex;align-items:center;justify-content:center;height:22px;}
.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:14px 0 0;border-bottom:none;margin-bottom:14px;}
.ri-page-title{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:900;color:var(--y);text-transform:uppercase;letter-spacing:1.5px;line-height:1;border-left:2px solid var(--y);padding-left:7px;}
.ri-page-sub{font-size:10px;color:#444;margin-top:5px;padding-left:9px;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:11px;color:var(--y);font-weight:900;text-transform:uppercase;margin:16px 0 10px;letter-spacing:1.5px;border-left:2px solid var(--y);padding-left:7px;}
.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;}
/* Pill row — horizontal scroll com snap */
.rmg-pill-row{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px;margin-bottom:14px;}
.rmg-pill-row::-webkit-scrollbar{display:none;}
.rmg-pill-row .rmg-card{flex-shrink:0;width:90px;scroll-snap-align:start;}
.rmg-etapa-row .rmg-card{width:148px;padding:14px 10px;}
.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:'Barlow Condensed',sans-serif;font-weight:700;}
.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:'Barlow Condensed',sans-serif;}
.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:'Barlow Condensed',sans-serif;}
.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;}
/* ── Ranking — Atribuição Poliesportivo ── */
.rmg-timing-attr{font-size:10px;color:#444;margin:0 0 14px;display:flex;align-items:center;gap:5px;flex-wrap:wrap;}
.rmg-timing-attr strong{color:#666;}
.rmg-timing-info-btn{background:none;border:none;color:#555;font-size:10px;cursor:pointer;text-decoration:underline;font-family:'Montserrat',sans-serif;padding:0;pointer-events:auto!important;}
.rmg-timing-info-btn:hover{color:#aaa;}

/* ── 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:'Barlow Condensed',sans-serif;flex-shrink:0;}
.ri-res-podio-gap{text-align:center;color:#333;font-size:12px;padding:2px 0;letter-spacing:4px;}

/* ── Ranking & Pace integrados ao SPA — remove padding duplo ── */
#ri-p-ranking .rmg-app-wrapper,
#ri-p-pace .rmg-app-wrapper{max-width:none;}
#ri-p-ranking .rmg-app-content,
#ri-p-pace .rmg-app-content{padding:0;}
#ri-p-ranking .rmg-app-container-fluid,
#ri-p-pace .rmg-app-container-fluid{min-height:auto;}

/* ═══ 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{height:28px;}
  .ri-action-lbl{font-size:10px;}
  .ri-result-prova{font-size:13px;}
  .ri-result-time{font-size:22px;}
  .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:10px;left:50%;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:var(--c1);border:1px solid var(--bor);box-shadow:0 2px 10px rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center;z-index:9997;pointer-events:none;opacity:0;}
#ri-ptr .ri-ptr-ring{width:26px;height:26px;border-radius:50%;border:3px solid rgba(var(--y-rgb),.18);border-top-color:var(--y);}
#ri-ptr.ri-ptr-spin .ri-ptr-ring{animation:riPtrSpin .7s linear infinite;}
@keyframes riPtrSpin{to{transform:rotate(360deg);}}

/* TOAST */
.ri-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:99999;padding:14px 24px;border-radius:12px;font-size:13px;font-weight:700;font-family:'Montserrat',sans-serif;white-space:normal;word-break:break-word;max-width:80vw;text-align:center;animation:riToastIn .25s ease;box-shadow:0 8px 32px rgba(0,0,0,.4);}
.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:translate(-50%,-50%) scale(.92);}to{opacity:1;transform:translate(-50%,-50%) scale(1);}}

/* 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-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:#ddd;margin-bottom:3px;line-height:1.4;}
.ri-noticia-data{font-family:'Montserrat',sans-serif;font-size:9px;color:#444;}

/* POST CONTENT — tipografia do conteúdo WordPress */
#ri-post-conteudo{font-family:'Montserrat',sans-serif;font-size:14px;color:var(--c-txt);opacity:.85;line-height:1.75;}
#ri-post-conteudo p{margin:0 0 14px;}
#ri-post-conteudo p:last-child{margin-bottom:0;}
#ri-post-conteudo h1,#ri-post-conteudo h2,#ri-post-conteudo h3,#ri-post-conteudo h4{font-family:'Barlow Condensed',sans-serif;font-weight:900;text-transform:uppercase;color:var(--c-txt);opacity:1;line-height:1.2;margin:20px 0 8px;}
#ri-post-conteudo h2{font-size:20px;border-bottom:1px solid var(--bor);padding-bottom:6px;}
#ri-post-conteudo h3{font-size:17px;}
#ri-post-conteudo h4{font-size:14px;letter-spacing:.5px;}
#ri-post-conteudo ul,#ri-post-conteudo ol{padding-left:20px;margin:0 0 14px;}
#ri-post-conteudo li{margin-bottom:5px;}
#ri-post-conteudo a{color:var(--y);text-decoration:none;opacity:1;}
#ri-post-conteudo a:hover{text-decoration:underline;}
#ri-post-conteudo strong,#ri-post-conteudo b{color:var(--c-txt);opacity:1;font-weight:700;}
#ri-post-conteudo em,#ri-post-conteudo i{font-style:italic;}
#ri-post-conteudo img{max-width:100%;height:auto;border-radius:8px;margin:8px 0;display:block;}
#ri-post-conteudo figure{margin:12px 0;}
#ri-post-conteudo figcaption{font-size:11px;color:#666;text-align:center;margin-top:4px;}
#ri-post-conteudo blockquote{border-left:3px solid var(--y);margin:14px 0;padding:10px 14px;background:var(--c2);border-radius:0 8px 8px 0;font-style:italic;}
#ri-post-conteudo blockquote p{margin:0;}
#ri-post-conteudo hr{border:none;border-top:1px solid var(--bor);margin:18px 0;}
#ri-post-conteudo pre,#ri-post-conteudo code{font-family:'Montserrat',sans-serif;background:var(--c2);border:1px solid var(--bor);padding:2px 6px;border-radius:4px;font-size:12px;}
#ri-post-conteudo pre{padding:12px;overflow-x:auto;white-space:pre-wrap;}
#ri-post-conteudo table{width:100%;border-collapse:collapse;margin:0 0 14px;font-size:12px;}
#ri-post-conteudo table th,#ri-post-conteudo table td{padding:8px;border:1px solid var(--bor);text-align:left;}
#ri-post-conteudo table th{background:var(--c2);font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:900;text-transform:uppercase;}
/* remove margin-top do primeiro filho */
#ri-post-conteudo>*:first-child{margin-top:0;}

/* 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:'Montserrat',sans-serif;}
.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);}

/* ─── HEADER v2 — Zonas A · B · C ──────────────────────── */
.ri-hdr-a{display:flex;align-items:center;gap:12px;padding:16px 16px 10px;}
.ri-hdr-info{flex:1;min-width:0;}
.ri-hdr-nome-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:3px;}
.ri-hdr-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.ri-hdr-nivel-row{display:flex;align-items:center;min-height:18px;}
.ri-insta-btn{font-size:14px;text-decoration:none;line-height:1;opacity:.65;transition:opacity .2s;}
.ri-insta-btn:hover{opacity:1;}
.ri-bell-btn{position:relative;background:none;border:none;cursor:pointer;font-size:15px;padding:2px;line-height:1;pointer-events:auto!important;}
#ri-bell-badge{display:none;position:absolute;top:-3px;right:-3px;width:8px;height:8px;background:#e30613;border-radius:50%;border:1.5px solid var(--dk);}
#ri-bell-badge.ativo{display:block;}
.ri-hdr-b{padding:0 16px 10px;}
.ri-hdr-c{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 16px 14px;}
.ri-hdr-metric{background:var(--c1);border:1px solid var(--bor);border-radius:10px;padding:9px 5px;text-align:center;}
.ri-hdr-metric-val{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:900;color:#fff;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ri-hdr-metric-lbl{font-size:8px;color:#555;text-transform:uppercase;letter-spacing:.2px;margin-top:3px;white-space:nowrap;}

/* ═══ MODAL — classes para override de tema ═══ */
.ri-modal-name-text{color:#fff;}
.ri-modal-stat-val{color:#fff;}
/* Botões do toggle de tema */
.ri-tema-btn{background:none;border:1px solid #333;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:700;color:#888;cursor:pointer;font-family:'Montserrat',sans-serif;transition:all .2s;pointer-events:auto!important;}
.ri-tema-btn.ativo{border-color:var(--y);color:var(--y);}
body[data-theme="light"] .ri-tema-btn{border-color:var(--bor);color:#888;}
body[data-theme="light"] .ri-tema-btn.ativo{border-color:var(--y);color:var(--y);}

/* ═══ TEMA LIGHT ═══ */
body[data-theme="light"]{--dk:#f2f2f2;--dk2:#e8e8e8;--c1:#fff;--c2:#efefef;--bor:#d5d5d5;--c-txt:#111;--y:#1B3A6B;--y-rgb:27,58,107;--grn:#3564A5;}
body[data-theme="light"],
body[data-theme="light"] #Wrapper,body[data-theme="light"] #Content,
body[data-theme="light"] .content_wrapper,body[data-theme="light"] #page-content-wrap,
body[data-theme="light"] .mfn-main-section,body[data-theme="light"] .section_wrapper,
body[data-theme="light"] .container,body[data-theme="light"] .column_attr,
body[data-theme="light"] .mcb-wrap,body[data-theme="light"] .mcb-column{background-color:var(--dk)!important;color:#111!important;}
body[data-theme="light"] .ri-app{background:var(--dk);color:#111;}
body[data-theme="light"] .ri-header{background:linear-gradient(180deg,var(--dk2),var(--dk));border-bottom-color:var(--bor);}
body[data-theme="light"] #ri-sticky-nav{background:var(--c1);border-color:var(--bor);box-shadow:0 4px 24px rgba(0,0,0,.1);}
body[data-theme="light"] .ri-nav-item{color:#aaa;}
/* Textos brancos → escuro */
body[data-theme="light"] .ri-name,
body[data-theme="light"] .ri-modal-name-text,
body[data-theme="light"] .ri-modal-stat-val,
body[data-theme="light"] .ri-sheet-title,
body[data-theme="light"] .ri-result-time,
body[data-theme="light"] .rmg-rank-name,
body[data-theme="light"] .rmg-atleta-nome,
body[data-theme="light"] .rmg-perfil-nome,
body[data-theme="light"] .ri-hdr-metric-val,
body[data-theme="light"] .ri-kit-numero{color:#111;}
/* Inputs */
body[data-theme="light"] .ri-login-input,
body[data-theme="light"] .rmg-search-input,
body[data-theme="light"] .ri-custom-inp{color:#111;background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .ri-login-input::placeholder,
body[data-theme="light"] .rmg-search-input::placeholder,
body[data-theme="light"] .ri-custom-inp::placeholder{color:#bbb;}
/* Modais */
body[data-theme="light"] .ri-sheet{background:var(--c1);}
body[data-theme="light"] .ri-sheet-handle{background:var(--bor);}
body[data-theme="light"] .ri-overlay{background:rgba(0,0,0,.6);}
body[data-theme="light"] .ri-sheet-close{background:rgba(0,0,0,.06);border-color:var(--bor);color:#888;}
body[data-theme="light"] .ri-sheet-close:hover{background:rgba(0,0,0,.12);color:#333;}
/* QR */
body[data-theme="light"] .ri-qr-wrap{background:var(--c1);border-color:var(--bor);}
body[data-theme="light"] .ri-qr-bal strong{color:#111;}
body[data-theme="light"] .ri-qr-name{color:#999;}
/* Wallet */
body[data-theme="light"] .ri-wallet-card{background:linear-gradient(135deg,#fffde7,#fff9c4 40%,var(--c1));}
/* Ranking */
body[data-theme="light"] .rmg-rank-metrics{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .rmg-metric-main{color:#111;}
body[data-theme="light"] .rmg-atleta-card{background:linear-gradient(135deg,var(--c2),var(--c1));border-color:var(--bor);}
body[data-theme="light"] .rmg-prova-hist{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .rmg-prova-hist-tempo{color:#111;}
body[data-theme="light"] .rmg-frase-box{background:var(--c2);}
body[data-theme="light"] .rmg-perfil-stat{background:var(--c2);}
body[data-theme="light"] .rmg-perfil-metric{background:var(--c2);}
body[data-theme="light"] .rmg-perfil-metric-val{color:#111;}
body[data-theme="light"] .rmg-perfil-badge{color:#555;background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .rmg-perfil-prova-item{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .rmg-perfil-prova-item.active,
body[data-theme="light"] .rmg-perfil-prova-item:active{border-color:var(--y)!important;border-width:2px!important;background:rgba(var(--y-rgb),.12)!important;}
body[data-theme="light"] .rmg-perfil-prova-tempo{color:#111;}
body[data-theme="light"] .rmg-perfil-detalhe-titulo{color:#111;}
body[data-theme="light"] .rmg-rytmo-track{background:var(--c2);}
/* Resultado */
body[data-theme="light"] .ri-res-podio-item{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .ri-res-podio-nome{color:#555;}
body[data-theme="light"] .ri-res-podio-tempo{color:#111;}
body[data-theme="light"] .ri-res-prova{color:#111;}
/* Notícias */
body[data-theme="light"] .ri-noticia-titulo{color:#333;}
body[data-theme="light"] .ri-noticia-data{color:#888;}
/* Misc */
body[data-theme="light"] .ri-dot{border-color:var(--dk);}
body[data-theme="light"] .ri-avatar-edit{border-color:var(--dk);}
body[data-theme="light"] #ri-bell-badge{border-color:var(--dk);}
body[data-theme="light"] #ri-ptr{background:var(--c1);border-color:var(--bor);}
body[data-theme="light"] .ri-page-header{border-bottom-color:var(--bor);}
body[data-theme="light"] .ri-inner-tabs{border-bottom-color:var(--bor);}
body[data-theme="light"] .ri-inner-tab{color:#888;}
body[data-theme="light"] .ri-pbar-track{background:var(--bor);}
body[data-theme="light"] .ri-nivel-bar-fill{background:var(--y);}
body[data-theme="light"] .ri-pbar-labels span:first-child{color:#888;}
body[data-theme="light"] .ri-result-card{background:var(--c1);}
body[data-theme="light"] .ri-loading{color:#888;}
body[data-theme="light"] .ri-empty{color:#aaa;}
body[data-theme="light"] .ri-admin-card{background:var(--c1);border-color:var(--bor);}
body[data-theme="light"] .ri-ext-desc{color:#555;}
body[data-theme="light"] .ri-val-amt{color:#777;}
/* Cockpit — valores dos cards invisíveis (color:#fff sem override) */
body[data-theme="light"] .ri-event-val{color:#111;}
body[data-theme="light"] .ri-event-lbl{color:#555;}
body[data-theme="light"] .ri-event-card{background:var(--c1);border-color:var(--bor);}
/* Cockpit — botões amarelos dentro dos cards */
body[data-theme="light"] .ri-event-card button{color:#111!important;border-color:rgba(0,0,0,.2)!important;}
/* Clima — cidade/temperatura e mensagem */
body[data-theme="light"] #ri-clima-msg{color:#555!important;}
/* Community strip — barra de progresso e km */
body[data-theme="light"] #ri-com-km{color:#111!important;}
body[data-theme="light"] #ri-com-track{background:var(--bor)!important;}

/* Zona 2 — Missão da Semana: light mode */
body[data-theme="light"] .ri-missao-card{box-shadow:0 1px 6px rgba(0,0,0,.07);}
body[data-theme="light"] .ri-missao-prog{color:#111;}
body[data-theme="light"] .ri-missao-titulo{color:#888;}

/* Zona 3 — Streak bar: light mode */
body[data-theme="light"] .ri-streak-bar{box-shadow:0 1px 6px rgba(0,0,0,.07);}
body[data-theme="light"] .ri-streak-dot{color:#999;}
body[data-theme="light"] .ri-streak-dot.done{background:#3564A5!important;border-color:#3564A5!important;color:#fff;}
body[data-theme="light"] .ri-streak-dot.today{color:#fff;}

/* Texto amarelo → âmbar (contraste adequado sobre fundo claro) */
body[data-theme="light"] .ri-result-prova,
body[data-theme="light"] .ri-kit-prova{color:#b07800;}
body[data-theme="light"] .ri-treino-row-val{color:var(--y);}

/* Sombra suave nos cards — profundidade sem depender de contraste escuro */
body[data-theme="light"] .ri-event-card,
body[data-theme="light"] .ri-result-card,
body[data-theme="light"] .ri-kit-card,
body[data-theme="light"] .ri-noticia,
body[data-theme="light"] .ri-action-btn{box-shadow:0 1px 6px rgba(0,0,0,.07);}

/* ═══ TREINOS / PULSE — classes temáticas (dark default, light override) ═══ */

/* Cards de treino — cockpit scroll horizontal */
body[data-theme="light"] .ri-treino-card{background:var(--c1);border-color:var(--bor);box-shadow:0 1px 6px rgba(0,0,0,.07);}
body[data-theme="light"] .ri-treino-metrica{color:var(--y);}
body[data-theme="light"] .ri-treino-date{color:#888;}
body[data-theme="light"] .ri-treino-dist{color:#777;}
body[data-theme="light"] .ri-treino-unit{color:#888;}

/* Lista de treinos — aba Meus Treinos */
body[data-theme="light"] .ri-treino-row{border-bottom-color:var(--bor);}
body[data-theme="light"] .ri-treino-row-icon{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .ri-treino-row-tipo{color:#444;}
body[data-theme="light"] .ri-treino-row-dist{color:#777;}

/* Modal de atividade Pulse */
body[data-theme="light"] .ri-pm-box{background:var(--c2);}
body[data-theme="light"] .ri-pm-lbl{color:#777;}
body[data-theme="light"] .ri-pm-unit{color:#999;}
body[data-theme="light"] .ri-pm-titulo,
body[data-theme="light"] .ri-pm-nome,
body[data-theme="light"] .ri-pm-val-main{color:#111;}
body[data-theme="light"] .ri-pm-val-hi{color:#b07800;}
body[data-theme="light"] .ri-pm-val-pace{color:#00875a;}
body[data-theme="light"] .ri-pm-rp{background:rgba(var(--y-rgb),.08);border-color:rgba(var(--y-rgb),.3);color:var(--y);}
body[data-theme="light"] .ri-react-btn{background:var(--c2);border-color:var(--bor);}

/* Pulse feed — labels */
body[data-theme="light"] .ri-pulse-nome-lbl{color:#666;}
body[data-theme="light"] .ri-pulse-km-lbl{color:#999;}

/* Bolhas do feed Pulse */
.ri-pulse-nome-lbl{font-size:9px;color:#aaa;margin-top:4px;width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ri-pulse-km-lbl{font-size:8px;color:#666;}

/* Modal Pulse — caixas de métrica */
.ri-pm-box{background:#111;border-radius:10px;padding:12px;text-align:center;}
.ri-pm-lbl{font-size:11px;color:#555;text-transform:uppercase;}
.ri-pm-unit{font-size:10px;color:#333;}
.ri-pm-titulo{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:16px;}
.ri-pm-nome{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.3px;}
.ri-pm-val-hi{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#f7d417;}
.ri-pm-val-main{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#fff;}
.ri-pm-val-pace{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:#00e676;}
.ri-pm-rp{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;color:#f7d417;background:#1a1400;border:1px solid #3a3000;border-radius:6px;padding:3px 10px;}
.ri-react-btn{flex:1;background:#111;border:1px solid #252525;border-radius:10px;padding:10px;font-size:20px;cursor:pointer;transition:background .15s,opacity .15s;}

/* Cards de treino (horizontal scroll — cockpit) */
.ri-treino-card{flex-shrink:0;background:#161616;border:1.5px solid #252525;border-radius:12px;padding:14px 12px;min-width:130px;text-align:center;cursor:pointer;}
.ri-treino-date{font-size:11px;color:#555;margin-bottom:6px;}
.ri-treino-metrica{font-family:'Barlow Condensed',sans-serif;font-size:30px;font-weight:900;color:#f7d417;line-height:1;}
.ri-treino-unit{font-size:9px;color:#555;margin-bottom:8px;}
.ri-treino-dist{font-size:11px;color:#aaa;}

/* Linhas de treino (vertical — aba Meus Treinos) */
.ri-treino-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #1a1a1a;cursor:pointer;transition:background .15s;}
.ri-treino-row:last-child{border-bottom:none;}
.ri-treino-row-icon{width:38px;height:38px;border-radius:10px;background:#161616;border:1px solid #252525;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;}
.ri-treino-row-info{flex:1;min-width:0;}
.ri-treino-row-tipo{font-size:13px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ri-treino-row-dist{font-size:11px;color:#555;margin-top:2px;}
.ri-treino-row-metric{text-align:right;flex-shrink:0;}
.ri-treino-row-val{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:var(--y);line-height:1;}
.ri-treino-row-unit{font-size:9px;color:#555;}

/* Botões de stats (Evolução semanal / Meus recordes) */
.ri-stat-btn{background:var(--c1);border:1px solid var(--bor);border-radius:12px;padding:14px;text-align:center;cursor:pointer;color:inherit;width:100%;transition:border-color .15s;}
.ri-stat-btn:hover{border-color:var(--y);}

/* Comparativo de pace dentro do modal */
.ri-pace-hist-bloco{background:#1a1a1a;border-radius:10px;padding:12px 14px;font-size:12px;margin-bottom:4px;}
.ri-pace-hist-row{display:flex;justify-content:space-between;margin-bottom:4px;}
.ri-pace-hist-lbl{color:#888;}
.ri-pace-hist-val{color:#fff;}
.ri-pace-hist-hi{color:#f7d417;}
.ri-pace-hist-msg{color:#aaa;font-size:11px;}

/* Transfer lookup / confirm */
.ri-tr-dest-card{background:#111;border:1px solid #252525;border-radius:8px;padding:11px;display:flex;align-items:center;gap:10px;}
.ri-tr-dest-nome{font-size:12px;font-weight:900;color:#fff;text-transform:uppercase;}
.ri-tr-dest-email{font-size:9px;color:#555;}
.ri-tr-confirm-nome{font-size:12px;font-weight:900;color:#fff;text-transform:uppercase;}
.ri-tr-confirm-rid{font-size:9px;color:#f7d417;}
.ri-tr-result-ok{font-size:14px;font-weight:900;color:#fff;margin:8px 0;}

/* ─── Light mode overrides — Treinos / Pulse ─── */
body[data-theme="light"] .ri-pulse-nome-lbl{color:#555;}
body[data-theme="light"] .ri-pm-box{background:var(--c2);}
body[data-theme="light"] .ri-pm-unit{color:#666;}
body[data-theme="light"] .ri-pm-titulo{color:#111;}
body[data-theme="light"] .ri-pm-nome{color:#111;}
body[data-theme="light"] .ri-pm-val-hi{color:#111;}
body[data-theme="light"] .ri-pm-val-main{color:#111;}
body[data-theme="light"] .ri-pm-val-pace{color:#1a7a44;}
body[data-theme="light"] .ri-pm-rp{color:var(--y);background:rgba(var(--y-rgb),.08);border-color:rgba(var(--y-rgb),.3);}
body[data-theme="light"] .ri-react-btn{background:var(--c2);border-color:var(--bor);}
body[data-theme="light"] .ri-treino-card{background:var(--c1);border-color:var(--bor);}
body[data-theme="light"] .ri-treino-metrica{color:var(--y);}
body[data-theme="light"] .ri-treino-dist{color:#555;}
body[data-theme="light"] .ri-pace-hist-bloco{background:var(--c2);}
body[data-theme="light"] .ri-pace-hist-lbl{color:#666;}
body[data-theme="light"] .ri-pace-hist-val{color:#111;}
body[data-theme="light"] .ri-pace-hist-hi{color:#111;}
body[data-theme="light"] .ri-pace-hist-msg{color:#555;}
body[data-theme="light"] .ri-tr-dest-card{background:var(--c1);border-color:var(--bor);}
body[data-theme="light"] .ri-tr-dest-nome{color:#111;}
body[data-theme="light"] .ri-tr-confirm-nome{color:#111;}
body[data-theme="light"] .ri-tr-confirm-rid{color:#111;}
body[data-theme="light"] .ri-tr-result-ok{color:#111;}

/* ═══ LIGHT MODE — CORREÇÕES DE LEGIBILIDADE ═══ */

/* 1. Texto completamente invisível (branco em fundo branco) */
body[data-theme="light"] .ri-mi-prova{color:#111;}

/* 2. Texto quase invisível (cinza muito claro em fundo claro) */
body[data-theme="light"] .rmg-card:not(.active){color:#333;}
body[data-theme="light"] .rmg-frase-box{color:#555;}
body[data-theme="light"] .ri-res-podio-nome{color:#555;}
body[data-theme="light"] .rmg-print-header{color:#111;}

/* 3. Amarelo → âmbar escuro (legível em fundo claro; #f7d417 tem contraste 1.07:1 no branco) */
body[data-theme="light"] .ri-mi-qrbtn{color:#111;background:rgba(122,96,0,.08);border-color:rgba(122,96,0,.2);}
body[data-theme="light"] .ri-kit-prova:not(.azul){color:#111;}
body[data-theme="light"] .ri-kit-status:not(.done){color:#111;border-color:rgba(122,96,0,.4);}
body[data-theme="light"] .ri-sl{color:#666;border-left-color:#1B3A6B;}
body[data-theme="light"] .ri-pbar-labels span:last-child{color:#111;}
body[data-theme="light"] .ri-result-prova{color:#111;}
body[data-theme="light"] .ri-rid{color:#111;}
body[data-theme="light"] .ri-rp-pill{color:var(--y);border-color:rgba(var(--y-rgb),.3);background:rgba(var(--y-rgb),.08);}
body[data-theme="light"] .ri-rp-col{background:rgba(var(--y-rgb),.06);border-color:rgba(var(--y-rgb),.25);}
body[data-theme="light"] .ri-nivel-badge{border-color:rgba(255,255,255,.5);}
body[data-theme="light"] .ri-verified,
body[data-theme="light"] .ri-verified-badge{color:#111;}
body[data-theme="light"] .rmg-rank-team{color:#111;}
body[data-theme="light"] .rmg-section-label{color:#111;border-left-color:#c4a000;}
body[data-theme="light"] .rmg-header-title h1{color:#111;}
body[data-theme="light"] .rmg-rank-metric-sub{color:#111;}
body[data-theme="light"] .ri-tab.active{color:#111;border-bottom-color:#c4a000;}
body[data-theme="light"] .ri-nav-item.active{color:#111;}
body[data-theme="light"] .ri-nav-item.active::before{background:var(--y);}
body[data-theme="light"] .ri-inner-tab.active{color:#111;border-bottom-color:#c4a000;}

/* 4. Textos secundários: overrides anteriores clarearam demais (prejudicavam leitura no fundo claro) */
body[data-theme="light"] .ri-empty{color:#666;}
body[data-theme="light"] .ri-loading{color:#666;}
body[data-theme="light"] .ri-inner-tab{color:#555;}
body[data-theme="light"] .ri-pbar-labels span:first-child{color:#666;}
body[data-theme="light"] .ri-noticia-data{color:#666;}
body[data-theme="light"] .ri-nav-item{color:#666;}
body[data-theme="light"] .ri-qr-name{color:#666;}

/* ── LIGHT MODE: avatar header e barra de perfil ── */
/* Borda do avatar usa cor dinâmica de nível (PHP) — override para naval */
body[data-theme="light"] .ri-avatar{border-color:var(--y)!important;box-shadow:none!important;}
/* Barra de preenchimento de perfil */
body[data-theme="light"] .ri-pbar-fill{background:linear-gradient(90deg,var(--y),rgba(27,58,107,.6))!important;}
/* Pill de nível: fundo e borda com naval */
body[data-theme="light"] .ri-nivel-pill{background:rgba(27,58,107,.1)!important;border-color:rgba(27,58,107,.3)!important;color:var(--y)!important;}

/* ── LIGHT MODE: botões navais — texto branco + fonte Barlow ── */
/* Botões com classe usam navy via --y; cor do texto precisa ser branco */
body[data-theme="light"] .ri-btn-yellow{color:#fff!important;font-family:'Barlow',sans-serif!important;letter-spacing:.5px;}
body[data-theme="light"] .ri-btn-qr{color:#fff!important;font-family:'Barlow',sans-serif!important;}
/* Botões inline com background:var(--y) (JS-generated) também recebem texto branco */
body[data-theme="light"] [style*="background:var(--y)"]{color:#fff!important;}
body[data-theme="light"] [style*="background:var(--y)"] *{color:#fff!important;}
/* Títulos de tela com fonte Barlow (mais próxima do logo) */
body[data-theme="light"] .ri-page-title,
body[data-theme="light"] .ri-sl{font-family:'Barlow',sans-serif!important;letter-spacing:.3px;}

/* ── LIGHT MODE: broad color:#fff override nos painéis do app ── */
/* Texto branco hardcoded dentro do app vira escuro — exceto botões com fundo naval */
body[data-theme="light"] .ri-panel [style*="color:#fff"]:not([style*="background:var(--y)"]):not([style*="background:#e30613"]){color:#111!important;}
body[data-theme="light"] .ri-modal-body [style*="color:#fff"]:not([style*="background:var(--y)"]):not([style*="background:#e30613"]){color:#111!important;}
body[data-theme="light"] .ri-sheet [style*="color:#fff"]:not([style*="background:var(--y)"]):not([style*="background:#e30613"]){color:#111!important;}
/* Exceção: botões com background colorido mantêm legibilidade */
body[data-theme="light"] [style*="background:#e30613"][style*="color:#fff"],
body[data-theme="light"] [style*="background:var(--red)"][style*="color:#fff"]{color:#fff!important;}
/* SVG strokes que usam #222 como track ficam mais suaves */
body[data-theme="light"] svg circle[stroke="#222"]{stroke:#ccc!important;}

/* ── LIGHT MODE: inline style overrides via !important ──────── */

/* Wallet modal — botões de valor, tab Cartão, inputs, label consent */
body[data-theme="light"] #ri-recarga-valores button{background:var(--c2)!important;color:#111!important;border-color:var(--bor)!important;}
body[data-theme="light"] #ri-tab-cartao{background:var(--c2)!important;color:#666!important;border-color:var(--bor)!important;}
body[data-theme="light"] #ri-form-pix>label{background:var(--c2)!important;border-color:var(--bor)!important;}
body[data-theme="light"] #ri-form-pix span{color:#555!important;}
body[data-theme="light"] #ri-card-number,
body[data-theme="light"] #ri-card-holder,
body[data-theme="light"] #ri-card-expiry,
body[data-theme="light"] #ri-card-cvv,
body[data-theme="light"] #ri-cartao-cpf{background:var(--c2)!important;color:#111!important;border-color:var(--bor)!important;}

/* Ranking — chip de tempo e nome do atleta */
body[data-theme="light"] .rmg-rank-metrics{background:var(--c2)!important;border-color:var(--bor)!important;}
body[data-theme="light"] .rmg-metric-main{color:#111!important;}
body[data-theme="light"] .rmg-metric-sub{color:#777!important;}
body[data-theme="light"] .rmg-rank-name{color:#111;}
body[data-theme="light"] .rmg-rank-cat{color:#777;}

/* Perfil modal — linhas de nível XP */
body[data-theme="light"] #ri-xp-rows div[style*="background:#111"]{background:var(--c2)!important;border-color:var(--bor)!important;}
body[data-theme="light"] #ri-xp-rows div[style*="background:#111"] span{color:#111!important;}

/* Pace — bloco de histórico e seção Strava Comparativo */
body[data-theme="light"] .ri-pace-hist-bloco{background:var(--c2)!important;}
body[data-theme="light"] .ri-pace-hist-val{color:#111!important;}
body[data-theme="light"] .ri-pace-hist-label{color:#888!important;}

/* Transfer — card de destinatário e telas de confirmação/resultado */
body[data-theme="light"] .ri-tr-dest-card{background:var(--c2)!important;border-color:var(--bor)!important;}
body[data-theme="light"] .ri-tr-dest-nome,
body[data-theme="light"] .ri-tr-dest-email,
body[data-theme="light"] .ri-tr-confirm-nome,
body[data-theme="light"] .ri-tr-result-ok{color:#111!important;}

/* Pulse elevation chart */
body[data-theme="light"] #ri-pulse-elev-chart{background:var(--c2)!important;}

/* Sponsor bar */
body[data-theme="light"] .ri-sponsor-bar{background:var(--c1)!important;border-bottom-color:var(--bor)!important;color:#999!important;}
body[data-theme="light"] .ri-sponsor-bar img{filter:brightness(0);}

/* ── LIGHT MODE: Ranking & Pace Pro ── */
/* Navbar do ranking */
body[data-theme="light"] .rmg-app-navbar{background:var(--c1)!important;border-bottom-color:var(--y)!important;}
body[data-theme="light"] .rmg-app-navbar .logo{color:var(--y)!important;}
body[data-theme="light"] .rmg-app-container-fluid{background:var(--dk)!important;color:#111!important;}
/* Cards de filtro (prova, categoria, gênero) */
body[data-theme="light"] .rmg-card{background:var(--c2)!important;border-color:var(--bor)!important;color:#555!important;}
body[data-theme="light"] .rmg-card:hover{color:#333!important;border-color:var(--y)!important;}
body[data-theme="light"] .rmg-card.active{background:var(--y)!important;border-color:var(--y)!important;color:#fff!important;}
/* Tabs de tipo de ranking */
body[data-theme="light"] .rmg-tab{background:var(--c2)!important;border-color:var(--bor)!important;color:#666!important;}
body[data-theme="light"] .rmg-tab.active{background:var(--y)!important;border-color:var(--y)!important;color:#fff!important;}
/* Chip de seleção (perfil, filtros) — fix: color era #000 (invisível em navy) */
body[data-theme="light"] .ri-chip.active{background:var(--y)!important;border-color:var(--y)!important;color:#fff!important;}
/* Itens de ranking */
body[data-theme="light"] .rmg-rank-item{background:var(--c1)!important;border-left-color:var(--y)!important;}
body[data-theme="light"] .rmg-rank-avatar{border-color:var(--y)!important;background:var(--c2)!important;}
body[data-theme="light"] .rmg-rank-pos{color:#777!important;}
body[data-theme="light"] .rmg-rank-time{color:#666!important;}
body[data-theme="light"] .rmg-rank-team{color:var(--y)!important;}
/* Frase motivacional e botão compartilhar */
body[data-theme="light"] .rmg-frase-box{background:var(--c1)!important;color:#444!important;}
body[data-theme="light"] #rmg-resultado-secundario{color:#555!important;}
body[data-theme="light"] .rmg-btn-share{border-color:var(--y)!important;color:var(--y)!important;}
body[data-theme="light"] .rmg-btn-share:hover{color:#fff!important;}
/* Card de atleta na busca */
body[data-theme="light"] .rmg-atleta-card{background:var(--c1)!important;border-color:var(--bor)!important;}
body[data-theme="light"] .rmg-atleta-card *[style*="color:#ccc"],
body[data-theme="light"] .rmg-atleta-card *[style*="color:#aaa"],
body[data-theme="light"] .rmg-atleta-card *[style*="color:#fff"]{color:#333!important;}
/* Pace Pro — textos claros no resultado Strava */
body[data-theme="light"] #rmg-resultado-container *[style*="color:#ccc"],
body[data-theme="light"] #rmg-resultado-container *[style*="color:#aaa"],
body[data-theme="light"] #rmg-resultado-container *[style*="color:#fff"]{color:#333!important;}
/* Botão "Ver mais provas" no perfil atleta */
body[data-theme="light"] #rmg-perfil-ver-mais{background:var(--c2)!important;border-color:var(--bor)!important;color:var(--y)!important;}

/* Login — título ROCKY ID */
.ri-login-rm{color:#fff;}
.ri-login-id{color:#f7d417;}
body[data-theme="light"] .ri-login-rm{color:#555;}
body[data-theme="light"] .ri-login-id{color:#1B3A6B;}

/* Logo no topo do header */
.ri-brand-top{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0 6px;}
.ri-brand-svg{height:26px;width:auto;fill:var(--y);}
.ri-brand-name{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:19px;text-transform:uppercase;letter-spacing:2px;line-height:1;}
.ri-brand-r{color:#fff;}
body[data-theme="light"] .ri-brand-r{color:#333;}

/* Leaflet GPX map */
#rmg-map-container .leaflet-pane,
#rmg-map-container .leaflet-top,
#rmg-map-container .leaflet-bottom{z-index:400!important;}
#rmg-map-container .leaflet-control-attribution{font-size:9px;}

/* ── Ranking RP — Mini-widget (cockpit) ── */
.ri-rp-rank-row{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--bor);}
.ri-rp-rank-row:last-child{border-bottom:none;}
.ri-rp-rank-row--me{background:rgba(var(--y-rgb),.07);border-left:3px solid var(--y);padding-left:11px;}
.ri-rp-rank-pos{width:28px;flex-shrink:0;text-align:center;font-size:18px;line-height:1;}
.ri-rp-rank-name{flex:1;font-size:12px;font-weight:700;color:var(--c-txt,#fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ri-rp-rank-pts{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:900;color:var(--y);flex-shrink:0;white-space:nowrap;}
/* Ranking RP — lista completa (aba Ranking) */
.rmg-rank-item--me{border-left-color:var(--y)!important;background:rgba(var(--y-rgb),.06)!important;}
/* Light mode */
body[data-theme="light"] .ri-rp-rank-row--me{background:rgba(var(--y-rgb),.1);}
body[data-theme="light"] .ri-rp-rank-name{color:#111;}
body[data-theme="light"] .rmg-rank-item--me{background:rgba(var(--y-rgb),.1)!important;}

/* ── LGPD: Consent wrap + ghost buttons ── */
.ri-consent-wrap{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:rgba(255,255,255,.04);border:1px solid var(--bor);border-radius:8px;}
.ri-consent-wrap label{font-size:10px;color:#888;line-height:1.5;cursor:pointer;}
.ri-consent-link{background:none;border:none;color:var(--y);font-size:10px;font-weight:700;cursor:pointer;padding:0;text-decoration:underline;}
.ri-btn-ghost{width:100%;padding:10px 14px;background:transparent;border:1px solid var(--bor);border-radius:10px;color:var(--c-txt,#fff);font-size:12px;font-weight:600;font-family:'Montserrat',sans-serif;cursor:pointer;text-align:center;transition:background .15s,border-color .15s;}
.ri-btn-ghost:hover{background:rgba(255,255,255,.06);border-color:#555;}
.ri-btn-danger-ghost{border-color:rgba(227,6,19,.4)!important;color:var(--red)!important;}
.ri-btn-danger-ghost:hover{background:rgba(227,6,19,.08)!important;border-color:var(--red)!important;}
.ri-btn.ri-btn-danger{background:var(--red);color:#fff;border:none;}
.ri-btn.ri-btn-danger:disabled{cursor:not-allowed;}
body[data-theme="light"] .ri-consent-wrap{background:rgba(0,0,0,.03);border-color:#ddd;}
body[data-theme="light"] .ri-consent-wrap label{color:#666;}
body[data-theme="light"] .ri-btn-ghost{color:#111;border-color:#ddd;}
body[data-theme="light"] .ri-btn-ghost:hover{background:rgba(0,0,0,.05);border-color:#bbb;}
