.page-beneficios { --basic:#7CCC12; --master:#30BAF7; --ultimate:#C17AED; --sponsor:#F21E92; --booster:#F163E6; --furafila:#FFD700; }
.benefits-hero { position:relative; overflow:hidden; }
.benefits-hero::before { content:""; position:absolute; inset:-20% -10% auto 35%; height:620px; background:radial-gradient(circle at 20% 30%, rgba(48,186,247,.12), transparent 30%),radial-gradient(circle at 52% 15%, rgba(193,122,237,.13), transparent 27%),radial-gradient(circle at 78% 38%, rgba(242,30,146,.11), transparent 32%); filter:blur(8px); pointer-events:none; }
.benefits-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.7fr); gap:46px; align-items:center; }
.benefits-hero__legend { display:flex; flex-wrap:wrap; gap:14px 22px; margin-top:28px; color:var(--text-muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.benefits-hero__legend span { display:inline-flex; align-items:center; gap:8px; }
.benefits-hero__legend i { width:9px; height:9px; border-radius:999px; box-shadow:0 0 18px currentColor; }
.benefits-hero__legend .is-plan { background:var(--ultimate); color:var(--ultimate); }
.benefits-hero__legend .is-role { background:var(--booster); color:var(--booster); }
.benefits-hero__legend .is-temporary { background:var(--furafila); color:var(--furafila); }
.benefits-hero__aside { padding:26px; display:grid; gap:12px; background:linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); }
.benefits-path { display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:center; padding:16px; border:1px solid var(--line); border-radius:15px; background:rgba(0,0,0,.13); }
.benefits-path__icon { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; }
.benefits-path__icon svg { width:21px; }
.benefits-path__icon.is-vip { color:var(--ultimate); background:rgba(193,122,237,.09); border:1px solid rgba(193,122,237,.18); }
.benefits-path__icon.is-booster { color:var(--booster); background:rgba(241,99,230,.09); border:1px solid rgba(241,99,230,.18); }
.benefits-path__icon.is-sponsor { color:var(--sponsor); background:rgba(242,30,146,.09); border:1px solid rgba(242,30,146,.18); }
.benefits-path div { display:grid; gap:4px; }
.benefits-path strong { font-size:.88rem; }
.benefits-path small { color:var(--text-muted); line-height:1.45; }


.benefits-catalog-unavailable { padding:22px; border-color:rgba(255,190,76,.18); background:rgba(255,190,76,.035); }
.benefits-catalog-unavailable strong { display:block; color:#FFD186; margin-bottom:6px; }
.benefits-catalog-unavailable p { margin:0; color:var(--text-muted); }
.vip-benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.vip-benefit-card { position:relative; overflow:hidden; padding:27px; min-height:485px; display:flex; flex-direction:column; border-color:color-mix(in srgb,var(--benefit-accent) 32%, transparent); background:linear-gradient(155deg,color-mix(in srgb,var(--benefit-accent) 8%, transparent),rgba(255,255,255,.018) 46%); }
.vip-benefit-card::before { content:""; position:absolute; width:240px; height:240px; right:-90px; top:-100px; border-radius:50%; background:radial-gradient(circle,color-mix(in srgb,var(--benefit-accent) 20%, transparent),transparent 68%); }
.vip-benefit-card__top { position:relative; display:flex; justify-content:space-between; align-items:center; gap:16px; }
.vip-benefit-card__icon { width:68px; height:68px; border-radius:18px; display:grid; place-items:center; background:rgba(0,0,0,.22); border:1px solid color-mix(in srgb,var(--benefit-accent) 28%, transparent); box-shadow:0 0 30px color-mix(in srgb,var(--benefit-accent) 10%, transparent); }
.vip-benefit-card__icon img { width:54px; height:54px; object-fit:contain; }
.benefit-type { padding:7px 10px; border-radius:999px; color:var(--benefit-soft); border:1px solid color-mix(in srgb,var(--benefit-accent) 28%, transparent); background:color-mix(in srgb,var(--benefit-accent) 7%, transparent); font-size:.61rem; font-weight:900; letter-spacing:.09em; }
.vip-benefit-card h3 { position:relative; margin:25px 0 8px; font-size:1.7rem; color:var(--benefit-soft); }
.benefit-price { display:grid; gap:2px; margin-bottom:14px; }
.benefit-price > strong { color:var(--benefit-soft); font-size:1.55rem; line-height:1; }
.benefit-price > small { color:var(--text-muted); font-size:.68rem; line-height:1.4; }
.vip-benefit-card__priority { margin:0 0 20px; color:var(--text-muted); font-size:.78rem; }
.vip-benefit-card__priority strong { color:var(--benefit-soft); font-size:1rem; margin-left:5px; }
.benefit-list { display:grid; gap:10px; margin-bottom:24px; }
.benefit-list span { display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:center; color:var(--text-soft); font-size:.78rem; }
.benefit-list svg { width:17px; color:var(--benefit-accent); }
.benefit-list strong { font-weight:720; }
.benefit-card-link { width:100%; margin-top:auto; min-height:43px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 14px; border:1px solid color-mix(in srgb,var(--benefit-accent) 30%, transparent); border-radius:12px; color:var(--benefit-soft); background:color-mix(in srgb,var(--benefit-accent) 7%, transparent); font:inherit; font-size:.72rem; font-weight:850; cursor:pointer; text-align:left; text-decoration:none; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.benefit-card-link:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--benefit-accent) 55%, transparent); background:color-mix(in srgb,var(--benefit-accent) 12%, transparent); }
.benefit-card-link:disabled { opacity:.55; cursor:wait; transform:none; }
.benefit-card-link svg { width:16px; flex:0 0 auto; }
.benefit-alt-link { margin-top:8px; min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 12px; border-radius:10px; color:var(--text-muted); border:1px solid var(--line); font-size:.65rem; font-weight:750; }
.benefit-alt-link:hover { color:var(--text); border-color:color-mix(in srgb,var(--benefit-accent) 35%, var(--line)); }
.benefit-alt-link svg { width:14px; }
.benefits-notice { margin-top:18px; display:grid; grid-template-columns:auto 1fr; gap:15px; padding:20px 22px; border:1px solid rgba(184,229,41,.18); border-radius:16px; background:rgba(184,229,41,.045); }
.benefits-notice__icon { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; color:var(--green-bright); background:rgba(184,229,41,.09); }
.benefits-notice__icon svg { width:20px; }
.benefits-notice strong { display:block; margin-bottom:4px; }
.benefits-notice p { margin:0; font-size:.79rem; }

.sponsor-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr); gap:44px; align-items:center; }
.sponsor-copy .lead { max-width:680px; }
.shared-benefits { display:grid; gap:10px; margin-top:24px; }
.shared-benefits > span { display:grid; grid-template-columns:auto 1fr; column-gap:11px; padding:14px 15px; border:1px solid rgba(242,30,146,.15); border-radius:14px; background:rgba(242,30,146,.035); }
.shared-benefits svg { grid-row:1/3; width:20px; color:var(--sponsor); margin-top:2px; }
.shared-benefits strong { font-size:.8rem; }
.shared-benefits small { color:var(--text-muted); margin-top:2px; line-height:1.45; }
.sponsor-cards { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.sponsor-card { padding:24px; display:flex; flex-direction:column; border-color:rgba(242,30,146,.25); background:linear-gradient(150deg,rgba(242,30,146,.085),rgba(255,255,255,.018)); }
.sponsor-card__head { display:flex; align-items:center; gap:13px; }
.sponsor-card__head img { width:58px; height:58px; object-fit:contain; }
.sponsor-card__head span { color:#FB80C4; font-size:.58rem; font-weight:900; letter-spacing:.09em; }
.sponsor-card h3 { margin:3px 0 0; font-size:1.1rem; }
.sponsor-card__price { margin-top:20px; color:#FB80C4; font-size:1.55rem; font-weight:900; }
.sponsor-card__package { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:14px 0 22px; }
.sponsor-card__package span { padding:14px; border-radius:12px; background:rgba(0,0,0,.16); border:1px solid rgba(242,30,146,.12); color:var(--text-muted); font-size:.67rem; text-align:center; }
.sponsor-card__package strong { display:block; color:#FB80C4; font-size:1.15rem; margin-bottom:3px; }
.sponsor-card .benefit-card-link { --benefit-accent:var(--sponsor); --benefit-soft:#FB80C4; }

.booster-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:20px; align-items:stretch; }
.booster-main { padding:32px; display:grid; grid-template-columns:auto 1fr; gap:25px; border-color:rgba(241,99,230,.23); background:linear-gradient(145deg,rgba(241,99,230,.075),rgba(255,255,255,.018)); }
.booster-main__icon { width:94px; height:94px; border-radius:25px; display:grid; place-items:center; border:1px solid rgba(241,99,230,.2); background:rgba(241,99,230,.06); }
.booster-main__icon img { width:74px; height:74px; object-fit:contain; }
.booster-main .booster-eyebrow { color:var(--booster); }
.booster-main h2 { margin:4px 0 11px; font-size:2rem; color:var(--booster); }
.booster-main p { margin:0; }
.booster-tags { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.booster-tags span { padding:8px 10px; border-radius:999px; border:1px solid rgba(241,99,230,.17); background:rgba(241,99,230,.05); color:#FBC7F8; font-size:.64rem; font-weight:750; }
.booster-discord-btn { border-color:rgba(241,99,230,.25); color:#FBC7F8; }
.personal-benefits { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.personal-benefit { padding:23px; display:flex; flex-direction:column; }
.personal-benefit .icon-box { color:#F96DF4; border-color:rgba(241,99,230,.18); background:rgba(241,99,230,.06); }
.personal-benefit h3 { margin:18px 0 8px; }
.personal-benefit p { font-size:.77rem; }
.personal-benefit > strong { margin-top:auto; color:var(--text); font-size:.75rem; }
.personal-benefit > small { margin-top:5px; color:var(--text-muted); line-height:1.45; }

.furafila-layout { display:grid; grid-template-columns:minmax(270px,.65fr) minmax(0,1.35fr); gap:48px; align-items:center; }
.furafila-visual { min-height:300px; position:relative; display:grid; place-items:center; }
.furafila-visual__ring { width:170px; height:170px; border-radius:50%; display:grid; place-items:center; border:1px solid rgba(255,215,0,.44); background:radial-gradient(circle,rgba(255,215,0,.18),rgba(255,215,0,.035) 55%,transparent 70%); box-shadow:0 0 80px rgba(255,215,0,.12),inset 0 0 40px rgba(255,215,0,.08); }
.furafila-visual__ring > img { width:96px; height:96px; object-fit:contain; filter:drop-shadow(0 0 22px rgba(255,215,0,.35)); }
.furafila-visual__fallback { color:#FFE45C; }
.furafila-visual__fallback svg { width:72px; height:72px; }
.furafila-visual > i { position:absolute; width:7px; height:7px; border-radius:50%; background:var(--furafila); box-shadow:0 0 20px rgba(255,215,0,.9); }
.furafila-visual > i:nth-child(2){transform:translate(125px,-65px)} .furafila-visual > i:nth-child(3){transform:translate(-130px,42px)} .furafila-visual > i:nth-child(4){transform:translate(45px,130px)}
.furafila-layout .eyebrow { color:#FFE45C; }
.furafila-layout h2 { color:#FFF2A2; }
.furafila-points { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:24px; }
.furafila-points span { padding:16px; border:1px solid rgba(255,215,0,.18); border-radius:14px; background:rgba(255,215,0,.035); }
.furafila-points strong { display:block; color:#FFE45C; font-size:.73rem; margin-bottom:5px; }
.furafila-points small { color:var(--text-muted); line-height:1.45; }
.btn--furafila { margin-top:20px; color:#171300; background:linear-gradient(135deg,#FFE45C,#FFD700); border:1px solid #FFE86F; box-shadow:0 10px 32px rgba(255,215,0,.12); font-weight:900; }
.btn--furafila:hover { filter:brightness(1.04); transform:translateY(-1px); }
.btn--furafila svg { stroke:currentColor; }

.priority-board { display:grid; gap:9px; padding:24px; border:1px solid var(--line); border-radius:19px; background:rgba(255,255,255,.02); }
.priority-row { display:grid; grid-template-columns:150px 1fr 32px; gap:14px; align-items:center; min-height:38px; }
.priority-row > span { color:var(--text-soft); font-size:.75rem; font-weight:800; }
.priority-row > i { height:8px; border-radius:999px; background:rgba(255,255,255,.05); overflow:hidden; }
.priority-row > i b { display:block; height:100%; border-radius:inherit; background:currentColor; box-shadow:0 0 22px currentColor; }
.priority-row > strong { font-size:.82rem; text-align:right; }
.priority-row.is-sponsor{color:var(--sponsor)} .priority-row.is-ultimate{color:var(--ultimate)} .priority-row.is-master{color:var(--master)} .priority-row.is-booster{color:var(--booster)} .priority-row.is-basic{color:var(--basic)}
.priority-footnotes { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:14px; }
.priority-footnotes span { display:grid; grid-template-columns:auto 1fr; gap:8px; align-items:start; padding:14px; border:1px solid var(--line); border-radius:13px; color:var(--text-muted); font-size:.69rem; line-height:1.5; }
.priority-footnotes svg { width:16px; color:var(--green-bright); }
.priority-footnotes strong { color:var(--text-soft); }

.obtain-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.obtain-grid--four { grid-template-columns:repeat(4,1fr); }
.obtain-card { padding:25px; display:flex; flex-direction:column; align-items:flex-start; min-height:270px; }
.obtain-card h3 { margin:18px 0 8px; }
.obtain-card p { font-size:.78rem; margin-bottom:20px; }
.obtain-card .btn { margin-top:auto; }
.obtain-card .icon-box.is-vip { color:var(--ultimate); border-color:rgba(193,122,237,.2); background:rgba(193,122,237,.07); }
.obtain-card .icon-box.is-sponsor { color:var(--sponsor); border-color:rgba(242,30,146,.2); background:rgba(242,30,146,.07); }
.obtain-card .icon-box.is-booster { color:var(--booster); border-color:rgba(241,99,230,.2); background:rgba(241,99,230,.07); }
.obtain-card .icon-box.is-fura { color:var(--furafila); border-color:rgba(255,215,0,.22); background:rgba(255,215,0,.07); }
.obtain-card--fura { border-color:rgba(255,215,0,.15); }
.obtain-actions { width:100%; display:grid; gap:7px; margin-top:auto; }
.obtain-actions a { width:100%; min-height:38px; border:1px solid rgba(193,122,237,.18); border-radius:10px; background:rgba(193,122,237,.055); color:#E9C8FB; font:inherit; font-size:.67rem; font-weight:800; cursor:pointer; text-align:left; padding:0 11px; }
.obtain-actions a:hover { border-color:rgba(193,122,237,.36); background:rgba(193,122,237,.1); }
.obtain-actions.is-sponsor a { border-color:rgba(242,30,146,.18); background:rgba(242,30,146,.055); color:#FBA8D7; }
.obtain-actions.is-sponsor a:hover { border-color:rgba(242,30,146,.36); background:rgba(242,30,146,.1); }
.obtain-actions a { text-decoration:none; display:flex; align-items:center; }
.benefits-faq .faq-list { max-width:920px; }

/* Fura Fila modal */
body.has-benefits-modal { overflow:hidden; }
.benefits-modal[hidden] { display:none !important; }
.benefits-modal { position:fixed; inset:0; z-index:1500; display:grid; place-items:center; padding:20px; }
.benefits-modal__backdrop { position:absolute; inset:0; background:rgba(2,5,12,.82); backdrop-filter:blur(8px); }
.benefits-modal__dialog { position:relative; z-index:1; width:min(760px,100%); max-height:min(90vh,840px); overflow:auto; padding:28px; border:1px solid rgba(255,215,0,.24); border-radius:22px; background:linear-gradient(150deg,rgba(255,215,0,.055),rgba(13,18,28,.98) 35%); box-shadow:0 28px 90px rgba(0,0,0,.55),0 0 70px rgba(255,215,0,.07); }
.benefits-modal__close { position:absolute; right:16px; top:16px; width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:11px; background:rgba(255,255,255,.035); color:var(--text-muted); cursor:pointer; }
.benefits-modal__close:hover { color:var(--text); border-color:rgba(255,215,0,.22); }
.benefits-modal__close svg { width:18px; }
.benefits-modal__head { display:grid; grid-template-columns:auto 1fr; gap:16px; align-items:center; padding-right:44px; }
.benefits-modal__head .eyebrow { color:#FFE45C; margin-bottom:4px; }
.benefits-modal__head h2 { margin:0; color:#FFF2A2; font-size:1.65rem; }
.benefits-modal__icon { width:64px; height:64px; display:grid; place-items:center; border-radius:17px; border:1px solid rgba(255,215,0,.24); background:rgba(255,215,0,.07); }
.benefits-modal__icon img { width:48px; height:48px; object-fit:contain; }
.benefits-modal__icon > span { color:#FFE45C; }
.benefits-modal__icon svg { width:32px; }
.fura-auth-required { display:grid; gap:8px; margin-top:24px; padding:20px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.025); }
.fura-auth-required p { margin:0 0 8px; font-size:.78rem; }
.fura-auth-required .btn { justify-self:start; }
.fura-simulator[hidden] { display:none !important; }
.fura-simulator { display:grid; gap:17px; margin-top:25px; }
.fura-amount-field { display:grid; gap:8px; }
.fura-amount-field > span { color:var(--text-soft); font-size:.73rem; font-weight:800; }
.fura-amount-field > div { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:8px; max-width:310px; padding:0 13px; min-height:52px; border:1px solid rgba(255,215,0,.2); border-radius:13px; background:rgba(0,0,0,.18); }
.fura-amount-field b,.fura-amount-field em { color:#FFE45C; font-style:normal; font-size:.84rem; }
.fura-amount-field input { width:100%; border:0; outline:0; background:transparent; color:#FFF6BA; font:inherit; font-weight:900; font-size:1.2rem; }
.fura-amount-field input::-webkit-outer-spin-button,.fura-amount-field input::-webkit-inner-spin-button { appearance:none; margin:0; }
.fura-amount-field small { color:var(--text-muted); font-size:.64rem; }
.fura-preview-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.fura-preview-grid article { min-height:104px; display:flex; flex-direction:column; justify-content:center; padding:16px; border:1px solid rgba(255,215,0,.13); border-radius:14px; background:rgba(255,215,0,.025); }
.fura-preview-grid article > span { color:var(--text-muted); font-size:.64rem; line-height:1.4; }
.fura-preview-grid article > strong { margin-top:6px; color:#FFF2A2; font-size:1rem; }
.fura-preview-grid article.is-position > strong { font-size:1.55rem; color:#FFE45C; }
.fura-preview-grid article > small { margin-top:4px; color:var(--text-muted); font-size:.61rem; }
.fura-warning { margin:0; padding:12px 14px; border:1px solid rgba(255,183,0,.2); border-radius:12px; background:rgba(255,183,0,.055); color:#FFD96E; font-size:.7rem; }
.fura-snapshot-note { margin:0; color:var(--text-muted); font-size:.66rem; line-height:1.55; }
.fura-modal-status { min-height:18px; color:var(--text-muted); font-size:.7rem; }
.fura-modal-status.is-error { color:#FF8D8D; }
.fura-modal-status.is-success { color:#B8FF72; }
.fura-checkout { width:100%; justify-content:center; margin-top:0; }
.fura-checkout:disabled { opacity:.45; cursor:not-allowed; filter:saturate(.65); transform:none; }

.benefits-toast[hidden] { display:none !important; }
.benefits-toast { position:fixed; z-index:1700; right:22px; bottom:22px; max-width:min(390px,calc(100vw - 44px)); padding:13px 15px; border:1px solid rgba(184,255,114,.22); border-radius:12px; background:rgba(12,22,17,.96); color:#D9FFC0; box-shadow:0 15px 45px rgba(0,0,0,.35); font-size:.72rem; line-height:1.45; }
.benefits-toast.is-error { border-color:rgba(255,104,104,.28); background:rgba(31,13,17,.97); color:#FFC0C0; }

@media (max-width: 1120px) {
    .obtain-grid--four { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 980px) {
    .benefits-hero__grid,.sponsor-layout,.booster-layout,.furafila-layout { grid-template-columns:1fr; }
    .vip-benefit-grid { grid-template-columns:1fr; }
    .vip-benefit-card { min-height:0; }
    .sponsor-copy { max-width:760px; }
    .furafila-visual { min-height:230px; }
}
@media (max-width: 720px) {
    .sponsor-cards,.personal-benefits,.furafila-points,.priority-footnotes,.obtain-grid,.obtain-grid--four { grid-template-columns:1fr; }
    .booster-main { grid-template-columns:1fr; }
    .booster-main__icon { width:76px; height:76px; }
    .booster-main__icon img { width:60px; height:60px; }
    .priority-row { grid-template-columns:105px 1fr 25px; gap:9px; }
    .priority-row > span { font-size:.65rem; }
    .fura-preview-grid { grid-template-columns:1fr; }
    .benefits-modal { padding:10px; align-items:end; }
    .benefits-modal__dialog { max-height:92vh; padding:22px 18px; border-radius:20px 20px 14px 14px; }
    .benefits-modal__head { grid-template-columns:52px 1fr; gap:12px; }
    .benefits-modal__icon { width:52px; height:52px; }
    .benefits-modal__icon img { width:39px; height:39px; }
    .benefits-modal__head h2 { font-size:1.35rem; }
}
@media (max-width: 520px) {
    .benefits-hero__legend { display:grid; }
    .vip-benefit-card,.sponsor-card,.booster-main,.personal-benefit,.obtain-card { padding:20px; }
    .sponsor-card__package { grid-template-columns:1fr; }
    .priority-board { padding:17px; }
    .priority-row { grid-template-columns:92px 1fr 22px; }
    .furafila-visual__ring { width:145px; height:145px; }
    .furafila-visual__ring > img { width:82px; height:82px; }
    .benefits-toast { right:12px; bottom:12px; max-width:calc(100vw - 24px); }
}
