.bfn28-passport{padding-bottom:80px}
.bfn28-passport-hero{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:40px;align-items:center;padding:30px 0 34px;border-bottom:1px solid var(--bfn27-line,#e7e4dc)}
.bfn28-passport-hero h1{margin:.2em 0 .25em;font-size:clamp(42px,6vw,78px);line-height:.98;letter-spacing:-.045em}
.bfn28-passport-stamp{width:190px;height:190px;border:3px double currentColor;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-7deg);opacity:.85;margin-left:auto}
.bfn28-passport-stamp span,.bfn28-passport-stamp small{font-weight:800;letter-spacing:.16em;font-size:12px}
.bfn28-passport-stamp strong{font-size:64px;line-height:1}
.bfn28-passport-loading,.bfn28-passport-alert{margin:28px 0;padding:28px;border-radius:20px;background:var(--bfn27-soft,#f5f1e7)}
.bfn28-level-card{margin:34px 0 22px;padding:28px 30px;border-radius:24px;background:var(--bfn27-soft,#f5f1e7);display:grid;grid-template-columns:minmax(220px,.55fr) 1fr;gap:30px;align-items:end}
.bfn28-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em}
.bfn28-level-card h2{font-size:clamp(32px,4vw,52px);margin:4px 0}
.bfn28-level-progress{height:12px;border-radius:999px;background:rgba(0,0,0,.08);overflow:hidden;margin-bottom:8px}
.bfn28-level-progress span{display:block;height:100%;background:currentColor;border-radius:inherit;transition:width .5s ease}
.bfn28-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:0 0 42px}
.bfn28-stats article{padding:20px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:18px;background:#fff}
.bfn28-stats strong{display:block;font-size:34px;line-height:1}.bfn28-stats span{display:block;margin-top:8px;font-size:13px;opacity:.72}
.bfn28-passport-section{margin-top:48px}
.bfn28-country-stamps{display:flex;flex-wrap:wrap;gap:12px}
.bfn28-country-stamp{min-width:140px;padding:17px 18px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:18px;background:#fff;display:flex;gap:10px;align-items:center}
.bfn28-country-stamp i{font-style:normal;font-size:24px}.bfn28-country-stamp strong{font-size:15px}
.bfn28-collections{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.bfn28-collection{padding:22px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:20px;background:#fff}
.bfn28-collection-icon{font-size:29px}.bfn28-collection h3{font-size:20px;margin:8px 0 3px}.bfn28-collection p{margin:0 0 14px;opacity:.7}
.bfn28-mini-progress{height:8px;background:#eee;border-radius:99px;overflow:hidden}.bfn28-mini-progress span{display:block;height:100%;background:currentColor}.bfn28-collection small{display:block;margin-top:8px;font-weight:700}
.bfn28-achievements{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.bfn28-achievement{padding:20px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:20px;background:#fff;min-height:170px}.bfn28-achievement.is-locked{opacity:.42;filter:grayscale(1)}
.bfn28-achievement .icon{font-size:32px}.bfn28-achievement h3{font-size:18px;margin:9px 0 4px}.bfn28-achievement p{font-size:14px;margin:0}.bfn28-achievement small{display:block;margin-top:12px;font-weight:700}
.bfn28-recipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bfn28-recipe{display:block;text-decoration:none;color:inherit;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:20px;overflow:hidden;background:#fff}.bfn28-recipe img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.bfn28-recipe-copy{padding:15px}.bfn28-recipe strong{display:block;font-size:17px}.bfn28-recipe small{display:block;margin-top:6px;opacity:.68}
.bfn28-account-card{margin-top:50px;padding:24px;border-radius:20px;background:var(--bfn27-soft,#f5f1e7)}.bfn28-account-card a{font-weight:800}
.bfn28-empty{opacity:.62}
@media(max-width:900px){.bfn28-passport-hero{grid-template-columns:1fr}.bfn28-passport-stamp{display:none}.bfn28-level-card{grid-template-columns:1fr}.bfn28-stats{grid-template-columns:repeat(2,1fr)}.bfn28-collections,.bfn28-achievements,.bfn28-recipe-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.bfn28-stats,.bfn28-collections,.bfn28-achievements,.bfn28-recipe-grid{grid-template-columns:1fr}.bfn28-passport-hero h1{font-size:44px}}
/* 2.8.1 · Dashboard de seguimiento */
.bfn281-passport-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.bfn281-passport-nav a{padding:9px 13px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:999px;text-decoration:none;color:inherit;font-size:13px;font-weight:700;background:#fff}
.bfn281-status-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;margin:34px 0 18px}.bfn281-status-card{padding:26px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:22px;background:#fff;min-height:210px}.bfn281-status-card h2{font-size:clamp(26px,3vw,40px);line-height:1.05;margin:8px 0 10px}.bfn281-level-status{background:var(--bfn27-soft,#f5f1e7)}.bfn281-big-number{margin:0 0 18px}.bfn281-big-number strong{font-size:34px}.bfn281-big-number span{opacity:.65}.bfn281-next-achievement p{min-height:44px}
.bfn281-coverage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bfn281-coverage-row{padding:20px 22px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:18px;background:#fff}.bfn281-coverage-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:11px}.bfn281-coverage-head strong{font-size:17px}.bfn281-coverage-head span{font-weight:800}.bfn281-wide-progress{height:10px;background:#eee;border-radius:99px;overflow:hidden}.bfn281-wide-progress span{display:block;height:100%;background:currentColor;border-radius:inherit}.bfn281-coverage-row small{display:block;margin-top:8px;opacity:.68}
.bfn281-discovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bfn281-discovery-grid article{padding:22px;border:1px solid var(--bfn27-line,#e7e4dc);border-radius:20px;background:#fff}.bfn281-discovery-grid h3{margin:0 0 14px}.bfn281-chip-list{display:flex;flex-wrap:wrap;gap:8px}.bfn281-chip{display:inline-flex;padding:8px 11px;border-radius:999px;background:var(--bfn27-soft,#f5f1e7);font-size:13px;font-weight:700}
.bfn281-achievement-bar{height:6px;background:#eee;border-radius:99px;overflow:hidden;margin-top:14px}.bfn281-achievement-bar span{display:block;height:100%;background:currentColor}.bfn281-timeline{position:relative;display:grid;gap:0;max-width:760px}.bfn281-timeline-row{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;padding:0 0 20px;position:relative}.bfn281-timeline-row:before{content:"";position:absolute;left:7px;top:12px;bottom:-4px;width:1px;background:var(--bfn27-line,#e7e4dc)}.bfn281-timeline-row:last-child:before{display:none}.bfn281-timeline-dot{width:15px;height:15px;border-radius:50%;background:currentColor;border:4px solid #fff;box-shadow:0 0 0 1px var(--bfn27-line,#e7e4dc);z-index:1}.bfn281-timeline-row strong{display:block}.bfn281-timeline-row small{display:block;margin-top:4px;opacity:.65}.bfn281-next-copy{max-width:760px;margin-top:-8px;margin-bottom:20px}
@media(max-width:900px){.bfn281-status-grid{grid-template-columns:1fr}.bfn281-coverage,.bfn281-discovery-grid{grid-template-columns:1fr}}
