:root{--maroon:#8C1111;--red:#E60000;--orange:#FF3D0D;--peach:#FF987F;--purple:#6800E8;--lav:#A77FF2;--violet:#B568C2;--pink:#E61D62;--navy:#252A7C;--blue:#3453F5;--sky:#2E9AE6;--mint:#5CE7C8;--greenDark:#045A45;--green:#06C953;--lime:#A8EC00;--yellow:#EFFF31;--black:#050505;--white:#fff;--ink:#172033;--muted:#68748a;--line:#e8edf5;--card:#ffffffee;--soft:#f7f9ff;--shadow:0 18px 45px rgba(14,25,60,.13);--radius:22px}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(135deg,#fff 0%,#f5f8ff 30%,#fff2ef 72%,#f6fff5 100%);min-height:100vh}.world-bg span{position:fixed;border-radius:50%;filter:blur(55px);opacity:.36;z-index:-1}.world-bg span:nth-child(1){width:280px;height:280px;background:var(--red);top:-90px;left:-60px}.world-bg span:nth-child(2){width:330px;height:330px;background:var(--blue);right:-120px;top:80px}.world-bg span:nth-child(3){width:280px;height:280px;background:var(--green);left:20%;bottom:-110px}.world-bg span:nth-child(4){width:220px;height:220px;background:var(--yellow);right:18%;bottom:-60px}.container{width:min(1220px,94%);margin:0 auto;padding:28px 0}.topbar{position:sticky;top:0;z-index:20;margin:14px auto 0;width:min(1220px,94%);display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.78);backdrop-filter:blur(18px);box-shadow:0 12px 38px rgba(25,32,60,.12);border-radius:26px}.brand{text-decoration:none;color:var(--ink);display:flex;gap:12px;align-items:center}.brand-mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-weight:950;color:#fff;background:conic-gradient(from 25deg,var(--red),var(--orange),var(--yellow),var(--green),var(--blue),var(--purple),var(--red));box-shadow:inset 0 0 0 3px rgba(255,255,255,.6)}.brand b{display:block;font-size:16px}.brand small{display:block;color:var(--muted);font-size:12px}.nav-links{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-links a{text-decoration:none;color:#344052;padding:10px 12px;border-radius:999px;font-weight:800;font-size:14px}.nav-links a:hover{background:#f1f5ff;color:var(--blue)}.logout{background:#111!important;color:#fff!important}.nav-toggle{display:none;border:0;background:#111;color:#fff;border-radius:12px;padding:10px 12px}.hero{display:grid;grid-template-columns:1.4fr .85fr;gap:22px;align-items:stretch;margin-top:18px}.hero-card,.photo-card,.card{background:var(--card);border:1px solid rgba(255,255,255,.78);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hero-card{padding:34px;position:relative}.hero-card:before{content:"";position:absolute;inset:0 0 auto 0;height:7px;background:linear-gradient(90deg,var(--maroon),var(--red),var(--orange),var(--purple),var(--blue),var(--green),var(--lime),var(--yellow))}.eyebrow,.hero-badge{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:#111;padding:8px 12px;border-radius:999px}.hero h1{font-size:clamp(34px,5vw,62px);line-height:.95;margin:18px 0 12px;font-weight:950;letter-spacing:-.04em}.grad{background:linear-gradient(90deg,var(--red),var(--purple),var(--blue),var(--green));-webkit-background-clip:text;background-clip:text;color:transparent}.muted{color:var(--muted)}.hero p{font-size:17px;line-height:1.55}.photo-card{position:relative;min-height:340px}.photo-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-card .caption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;background:rgba(0,0,0,.62);color:#fff;border-radius:18px;backdrop-filter:blur(8px)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.btn{border:0;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:16px;font-weight:900;color:#111;background:#eef2ff}.btn-primary{background:linear-gradient(135deg,var(--red),var(--purple),var(--blue));color:#fff;box-shadow:0 10px 25px rgba(52,83,245,.22)}.btn-dark{background:#111;color:#fff}.btn-green{background:linear-gradient(135deg,var(--green),var(--mint));color:#042a20}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{padding:22px;margin:18px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:8px 0 16px}.section-title h2{margin:0;font-size:28px}.kpi{padding:22px;border-radius:22px;background:#fff;box-shadow:var(--shadow);border:1px solid #fff}.kpi small{display:block;color:var(--muted);font-weight:800}.kpi b{font-size:34px}.table-wrap{overflow:auto}table{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#536075;background:#f3f6fb;padding:13px;text-align:left}td{padding:13px;border-bottom:1px solid var(--line);vertical-align:middle}tr:hover td{background:#fbfcff}.center{text-align:center}.right{text-align:right}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px}.pill-ok{background:#dcfce7;color:#047857}.pill-danger{background:#fee2e2;color:#b91c1c}.pill-warn{background:#fef9c3;color:#854d0e}.pill-blue{background:#dbeafe;color:#1d4ed8}.alert{padding:14px 16px;border-radius:16px;margin:18px 0;font-weight:800}.alert-ok{background:#dcfce7;color:#047857}.alert-error{background:#fee2e2;color:#b91c1c}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-photo{position:relative;background:#111;overflow:hidden}.login-photo img{width:100%;height:100%;object-fit:cover;opacity:.88}.login-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.1))}.login-caption{position:absolute;z-index:2;left:46px;right:46px;bottom:46px;color:#fff}.login-caption h1{font-size:56px;line-height:.95;margin:0 0 14px;font-weight:950}.login-panel{display:grid;place-items:center;padding:36px}.login-card{width:min(460px,100%);background:#fff;border-radius:30px;box-shadow:var(--shadow);padding:32px}.input,select{width:100%;border:1px solid #dbe2ef;border-radius:14px;padding:12px 13px;background:#fff;font:inherit;outline:none}.input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(52,83,245,.12)}label{font-weight:900;font-size:13px;color:#334155}.form-row{display:grid;gap:7px;margin-bottom:14px}.group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.group-card{background:#fff;border-radius:24px;box-shadow:var(--shadow);overflow:hidden;border:1px solid #fff}.group-head{padding:16px 18px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;display:flex;justify-content:space-between;align-items:center}.group-head b{font-size:22px}.team-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.team-row:last-child{border-bottom:0}.team-name{display:inline-flex;align-items:center;gap:9px}.fi{border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.match-card{border:1px solid var(--line);border-radius:22px;padding:14px;background:#fff;margin:12px 0}.match-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--muted);font-size:13px;font-weight:800}.pron-row{display:grid;grid-template-columns:minmax(170px,1fr) 86px 38px 86px minmax(170px,1fr);gap:12px;align-items:center}.team-box{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;background:#f8fafc;font-weight:900}.team-box.right-team{justify-content:flex-end;text-align:right}.score-box{width:86px!important;height:58px;text-align:center;font-size:28px;font-weight:950;border-radius:18px}.vs{font-weight:950;text-align:center;color:#111}.savebar{position:sticky;bottom:14px;z-index:10;display:flex;justify-content:center}.savebar .btn{box-shadow:0 18px 34px rgba(0,0,0,.20)}.phase-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.phase-tabs a{padding:10px 14px;border-radius:999px;background:#fff;text-decoration:none;color:#334155;font-weight:900;border:1px solid var(--line)}.phase-tabs a.active{background:#111;color:#fff}.rank-1,.rank-2,.rank-3{font-weight:950}.rank-1{color:#c48a00}.rank-2{color:#64748b}.rank-3{color:#b45309}.footer{text-align:center;color:#64748b;padding:36px 14px}.mini-note{font-size:12px;color:var(--muted);margin-top:8px}.admin-note{border-left:5px solid var(--purple);background:#faf5ff;padding:14px;border-radius:16px}.family-ribbon{display:inline-flex;padding:8px 12px;border-radius:999px;background:linear-gradient(90deg,var(--yellow),var(--green));font-weight:950;color:#06251a}@media(max-width:860px){.hero,.login-shell{grid-template-columns:1fr}.photo-card{min-height:260px}.login-photo{min-height:380px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:12px;border-radius:22px;box-shadow:var(--shadow)}.nav-open .nav-links{display:grid}.pron-row{grid-template-columns:1fr 70px 20px 70px 1fr;gap:7px}.score-box{width:70px!important;height:54px}.team-box{padding:10px;font-size:13px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.login-caption h1{font-size:40px}}
.countdown-pill{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:999px;background:#111;color:#fff;font-size:12px;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.16);white-space:nowrap}.countdown-pill span{color:#EFFF31}.countdown-pill b{font-size:13px}.draft-mini{align-self:center;background:#fff;padding:9px 12px;border-radius:999px;font-size:12px;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.12)}.pron-pro-row{display:grid;grid-template-columns:1fr 54px 1fr;gap:14px;align-items:center}.team-pron{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e7edf7}.team-pron.visita{justify-content:space-between}.team-pron .team-name{font-size:16px}.score-pro{width:76px!important;height:58px!important;text-align:center;font-size:28px!important;font-weight:950;border-radius:18px!important;padding:6px!important}.vs-pro{height:54px;border-radius:18px;background:#111;color:#fff;display:grid;place-items:center;font-weight:950;letter-spacing:.08em}.groups-tabs{position:sticky;top:90px;z-index:9;background:rgba(255,255,255,.75);backdrop-filter:blur(12px);padding:8px;border-radius:18px}.standings-grid{display:grid;grid-template-columns:repeat(3,minmax(320px,1fr));gap:18px}.standings-card{background:#fff;border-radius:24px;box-shadow:var(--shadow);overflow:hidden;border:1px solid #fff}.standings-head{padding:16px 18px;background:linear-gradient(90deg,var(--blue),var(--purple));color:#fff;display:flex;justify-content:space-between;align-items:center}.standings-head b{font-size:20px}.standings-table{min-width:100%!important}.standings-table th,.standings-table td{padding:10px 9px}.standings-table .team-cell{min-width:155px}.pos-num{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:8px;margin-right:8px;font-weight:950;background:#eef2ff;color:#1d4ed8}.pos-top{background:#dcfce7;color:#047857}.pos-third{background:#fef9c3;color:#854d0e}@media(max-width:1100px){.standings-grid{grid-template-columns:repeat(2,minmax(320px,1fr))}.countdown-pill{order:3;width:100%;justify-content:center}}@media(max-width:740px){.standings-grid{grid-template-columns:1fr}.pron-pro-row{grid-template-columns:1fr}.vs-pro{height:40px}.team-pron{padding:12px}.score-pro{width:70px!important}.countdown-pill{font-size:11px}.topbar{flex-wrap:wrap}}

/* ===== V4 pulido familiar ===== */
.phase-countdown-strip{max-width:1180px;margin:8px auto 0;display:flex;gap:8px;overflow-x:auto;padding:0 14px 8px}
.mini-deadline{white-space:nowrap;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);border-radius:999px;padding:7px 10px;font-size:12px;color:var(--text);display:inline-flex;gap:6px;align-items:center}
.mini-deadline em{font-style:normal;color:var(--muted)}.mini-deadline b{color:#fff}
.phase-deadline-box{margin-top:14px;display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.18);border-radius:16px;padding:12px 16px}.phase-deadline-box span{color:var(--muted)}.phase-deadline-box b{font-size:18px;color:#fff}
.progress-card{margin:16px 0;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);border-radius:18px;padding:14px 16px;color:var(--text)}
.progress-line{height:10px;background:rgba(255,255,255,.13);border-radius:999px;overflow:hidden;margin-top:10px}.progress-line span{display:block;height:100%;background:linear-gradient(90deg,#00c853,#deff2f);border-radius:999px;transition:.25s}
.sticky-savebar{position:sticky;top:82px;z-index:10;backdrop-filter:blur(10px)}.sticky-savebar button[disabled]{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}
.matches-section{padding:18px}.pro-match{border:1px solid rgba(255,255,255,.15);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.04));padding:16px;margin:14px 0;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.pro-match.locked{opacity:.75}.pron-score-layout{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:14px;margin-top:12px}.pron-team{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.86);color:#0f172a;border-radius:18px;padding:12px;min-height:70px}.pron-team .team-name{font-size:17px;display:flex;align-items:center;gap:8px;flex:1}.pron-local{justify-content:space-between}.pron-visitante{justify-content:space-between}.score-big{width:76px!important;height:54px!important;text-align:center;font-size:24px!important;font-weight:900;border:2px solid #d6ddf4!important;border-radius:16px!important;background:#fff!important;color:#111827!important}.score-big:focus{border-color:#3656ff!important;box-shadow:0 0 0 4px rgba(54,86,255,.16)!important}.score-separator{text-align:center;font-weight:900;color:#fff;background:linear-gradient(135deg,#e4002b,#5f00e6);border-radius:16px;padding:12px 0;box-shadow:0 10px 24px rgba(95,0,230,.25)}
.tie-breaker,.tie-breaker-admin{margin-top:12px;display:grid;grid-template-columns:220px 1fr;align-items:center;gap:12px}.tie-breaker label{color:var(--muted);font-size:13px}.auto-classified{margin-top:8px;font-size:13px}.autosave-status{position:fixed;right:20px;bottom:22px;z-index:99;box-shadow:0 18px 40px rgba(0,0,0,.25);min-width:260px}.results-table .score-box{width:82px;height:48px;text-align:center;font-size:20px;font-weight:800}.auto-result-label{font-weight:800;color:var(--text);display:block;margin-bottom:7px}.table-wrap table.results-table td{vertical-align:middle}
.standings-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.standings-card{min-width:0}.standings-table th,.standings-table td{font-size:13px!important;padding:9px 8px!important}.standings-head b{font-size:17px!important}.standings-head span{font-size:12px!important;color:var(--muted)}
@media(max-width:980px){.pron-score-layout{grid-template-columns:1fr}.score-separator{max-width:80px;margin:auto}.pron-team{justify-content:space-between}.standings-grid{grid-template-columns:1fr!important}.tie-breaker,.tie-breaker-admin{grid-template-columns:1fr}.sticky-savebar{top:68px}.phase-countdown-strip{padding-left:10px}.score-big{width:70px!important}}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.qualified-row{background:rgba(0,198,92,.09)}.qualified-row td:first-child{border-left:4px solid var(--green-2,#00c65c)}@media(max-width:900px){.grid-2{grid-template-columns:1fr}}

.locked-team{font-size:13px;line-height:1.35;padding:10px 12px;border:1px solid rgba(30,41,59,.10);border-radius:14px;background:rgba(255,255,255,.72)}
.thirds-chip-wrap{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.third-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:rgba(15,23,42,.06);border:1px solid rgba(15,23,42,.08);font-size:13px}.third-chip small{color:#64748b;font-weight:700}.mini-help h2{margin-top:0}


/* ===== V8 mobile-first brutal ===== */
html{scroll-behavior:smooth} body{padding-bottom:0}.mobile-menu-head{display:none}.nav-overlay{display:none}.bottom-nav{display:none}.topbar{touch-action:manipulation}.countdown-pill{max-width:340px;overflow:hidden}.countdown-pill span,.countdown-pill b{overflow:hidden;text-overflow:ellipsis}.btn,input,select,button{min-height:44px}.input,select{font-size:16px}.savebar{gap:10px;align-items:center}.phase-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.phase-tabs::-webkit-scrollbar,.phase-countdown-strip::-webkit-scrollbar{display:none}.phase-tabs a{white-space:nowrap}.mobile-ranking{display:none}.ranking-card{position:relative;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:16px;box-shadow:0 12px 30px rgba(15,23,42,.08);margin-bottom:12px}.ranking-card:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:5px;border-radius:999px;background:linear-gradient(180deg,var(--red),var(--purple),var(--blue),var(--green))}.ranking-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding-left:8px}.ranking-name{font-size:17px;font-weight:950}.ranking-points{font-size:28px;font-weight:950;line-height:1}.ranking-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;padding-left:8px}.ranking-meta span{background:#f1f5f9;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;color:#334155}.standings-card{background:#fff;border-radius:24px;border:1px solid rgba(15,23,42,.08);box-shadow:0 16px 38px rgba(15,23,42,.10);overflow:hidden}.standings-head{background:linear-gradient(135deg,#fff,#f6f8ff);padding:16px 18px;border-bottom:1px solid #edf2f7;display:flex;justify-content:space-between;gap:10px;align-items:center}.standings-head b{color:#172033}.standings-head span{color:#68748a}.standings-table{min-width:0!important}.standings-table th{background:#f8fafc}.pos-num{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:12px;font-weight:950;background:#eef2ff;color:#1e293b}.pos-top{background:#dcfce7;color:#047857}.pos-third{background:#fef9c3;color:#854d0e}.team-cell .team-name{font-weight:850}.pro-match{position:relative}.pro-match:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--red),var(--purple),var(--blue),var(--green));border-radius:22px 22px 0 0}.pron-score-layout{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)}.pron-team{box-shadow:inset 0 0 0 1px rgba(15,23,42,.05)}.score-big{appearance:textfield;-moz-appearance:textfield}.score-big::-webkit-inner-spin-button,.score-big::-webkit-outer-spin-button{appearance:none;margin:0}.autosave-status{border:0}.sticky-savebar{bottom:18px;top:auto}.sticky-savebar .btn{min-width:220px}.draft-mini{color:#334155}.login-card{border:1px solid rgba(255,255,255,.7)}
@media(max-width:1024px){.topbar{width:calc(100% - 18px);margin-top:8px;border-radius:22px;display:grid;grid-template-columns:1fr auto;gap:10px}.topbar .countdown-pill{grid-column:1/-1;justify-self:stretch;justify-content:center;border-radius:18px}.brand-mark{width:42px;height:42px;border-radius:14px}.brand b{font-size:15px}.brand small{font-size:11px}.container{width:min(100% - 20px,1220px);padding:16px 0 88px}.hero-card{padding:24px;border-radius:24px}.hero h1,.hero-card h1{font-size:clamp(30px,9vw,48px);line-height:1}.section-title{align-items:flex-start;flex-direction:column}.grid-4{grid-template-columns:repeat(2,1fr)}.phase-countdown-strip{max-width:100%;padding:0 10px 8px}.mini-deadline{background:#fff;color:#172033;border-color:#e2e8f0}.mini-deadline b{color:#111}.mini-deadline em{color:#64748b}}
@media(max-width:760px){body{background:linear-gradient(145deg,#fff 0%,#f5f8ff 45%,#fff0ed 100%)}.world-bg span{opacity:.24}.nav-toggle{display:inline-grid;place-items:center;font-size:21px;width:46px;height:46px;border-radius:16px}.nav-overlay{position:fixed;inset:0;background:rgba(15,23,42,.38);z-index:29;backdrop-filter:blur(3px)}.nav-open .nav-overlay{display:block}.nav-links{display:flex!important;position:fixed!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;width:min(86vw,350px)!important;background:#fff!important;z-index:30!important;border-radius:28px 0 0 28px!important;padding:18px!important;box-shadow:-30px 0 70px rgba(15,23,42,.28)!important;transform:translateX(110%);transition:transform .22s ease;align-content:flex-start;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:8px;overflow-y:auto}.nav-open .nav-links{transform:translateX(0)}.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;padding:5px 4px 12px}.mobile-menu-head b{font-size:20px}.mobile-menu-head button{border:0;background:#111;color:#fff;width:42px;height:42px;border-radius:14px;font-size:24px}.nav-links a{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-radius:18px;background:#f8fafc;font-size:15px}.logout{justify-content:center!important;margin-top:8px}.bottom-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:25;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.75);box-shadow:0 18px 48px rgba(15,23,42,.22);backdrop-filter:blur(18px);padding:8px;border-radius:24px}.bottom-nav a{text-decoration:none;color:#172033;display:grid;place-items:center;gap:2px;padding:7px 4px;border-radius:18px;font-size:12px;font-weight:900}.bottom-nav a:active{background:#eef2ff}.bottom-nav span{font-size:20px;line-height:1}.hero{grid-template-columns:1fr;gap:14px}.hero-card,.card,.photo-card,.kpi,.group-card,.standings-card{border-radius:22px}.photo-card{min-height:230px}.photo-card .caption{left:12px;right:12px;bottom:12px;font-size:13px}.actions .btn{width:100%}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.kpi{padding:16px}.kpi b{font-size:28px}.table-wrap{border-radius:18px}.standings-grid{grid-template-columns:1fr!important;gap:14px!important}.standings-head{padding:14px}.standings-head{display:block}.standings-head b{display:block;font-size:20px!important}.standings-table th,.standings-table td{padding:9px 5px!important;font-size:12px!important}.standings-table th:first-child,.standings-table td:first-child{width:28px}.standings-table .team-cell{min-width:128px}.team-cell .team-name{gap:7px}.match-meta{display:grid;grid-template-columns:1fr auto;gap:7px;font-size:12px}.match-meta span:first-child{grid-column:1/-1}.pron-score-layout{grid-template-columns:1fr;gap:10px}.score-separator{width:58px;height:40px;display:grid;place-items:center;margin:-2px auto;padding:0;border-radius:999px;font-size:12px}.pron-team{display:grid;grid-template-columns:1fr 78px;gap:12px;padding:13px;border-radius:18px}.pron-visitante{grid-template-columns:78px 1fr}.pron-team .team-name{font-size:16px;line-height:1.15}.score-big{width:78px!important;height:58px!important;font-size:28px!important;border-radius:18px!important}.tie-breaker,.tie-breaker-admin{grid-template-columns:1fr}.savebar{position:fixed;left:10px;right:10px;bottom:84px;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.75);box-shadow:0 18px 50px rgba(15,23,42,.22);border-radius:22px;padding:8px;z-index:24}.savebar .btn{width:100%;min-width:0}.draft-mini{display:none}.phase-deadline-box{display:flex;width:100%;justify-content:space-between}.progress-card{background:#fff;color:#172033;box-shadow:0 12px 30px rgba(15,23,42,.08);border-color:#e2e8f0}.matches-section{padding:14px}.autosave-status{left:12px;right:12px;bottom:158px;min-width:0;text-align:center}.login-shell{display:block;min-height:100vh}.login-photo{min-height:44vh}.login-photo:after{background:linear-gradient(0deg,rgba(0,0,0,.75),rgba(0,0,0,.15))}.login-caption{left:22px;right:22px;bottom:22px}.login-caption h1{font-size:38px}.login-panel{padding:18px;margin-top:-28px;position:relative;z-index:3}.login-card{padding:22px;border-radius:26px}.footer{padding:20px 12px 98px}.desktop-ranking{display:none}.mobile-ranking{display:block}.ranking-card:first-child{border:2px solid rgba(250,204,21,.6);background:linear-gradient(135deg,#fff,#fffbeb)}.ranking-card:nth-child(2){border-color:rgba(148,163,184,.55)}.ranking-card:nth-child(3){border-color:rgba(251,146,60,.55)}.phase-tabs.groups-tabs{position:sticky;top:112px;z-index:8;background:rgba(255,255,255,.88);padding:8px;border-radius:18px;backdrop-filter:blur(14px);box-shadow:0 10px 24px rgba(15,23,42,.08)}table{min-width:650px}.standings-table{min-width:0!important}}
@media(max-width:420px){.brand b{font-size:14px}.brand small{display:none}.brand-mark{width:40px;height:40px}.topbar{padding:9px}.countdown-pill{font-size:11px;padding:8px 10px}.mini-deadline{font-size:11px;padding:6px 8px}.hero-card{padding:20px}.hero-card h1{font-size:32px}.pron-team{grid-template-columns:1fr 70px}.pron-visitante{grid-template-columns:70px 1fr}.score-big{width:70px!important}.standings-table th,.standings-table td{font-size:11px!important}.pos-num{width:22px;height:22px}.ranking-points{font-size:24px}}

/* ===== V9 eliminatorias sin marcador ===== */
.advance-layout{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:14px;align-items:stretch;margin-top:12px}.advance-option{position:relative;display:grid;gap:8px;align-content:center;padding:18px;border:2px solid rgba(15,23,42,.08);border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff);cursor:pointer;transition:.18s ease;min-height:112px}.advance-option:hover{transform:translateY(-1px);box-shadow:0 16px 36px rgba(15,23,42,.10);border-color:rgba(52,83,245,.35)}.advance-option input{position:absolute;opacity:0;pointer-events:none}.advance-option small{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;background:#f1f5f9;color:#334155;font-weight:900}.advance-option.selected{border-color:var(--blue);background:linear-gradient(135deg,#eef2ff,#fff);box-shadow:0 18px 40px rgba(52,83,245,.16)}.advance-option.selected:after{content:'✓';position:absolute;right:14px;top:14px;width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--green),var(--blue));color:white;font-weight:950}.advance-team .team-name{font-size:18px}.advance-vs{display:grid;place-items:center;border-radius:999px;background:#111;color:#fff;font-weight:950;align-self:center;min-height:48px}.score-rules-table td:nth-child(3),.score-rules-table td:nth-child(4),.score-rules-table td:nth-child(5){font-size:16px}.scoring-card{border-top:6px solid var(--blue)}
@media(max-width:760px){.advance-layout{grid-template-columns:1fr;gap:10px}.advance-vs{width:58px;height:38px;min-height:38px;margin:-2px auto}.advance-option{min-height:94px;padding:15px}.advance-team .team-name{font-size:17px}.score-rules-table{min-width:760px!important}}


/* ===== V10 Ecuador theme & UI refinements ===== */
:root{--red:#D8232A;--orange:#f39b17;--yellow:#FFD100;--navy:#0B2D6B;--blue:#1546A0;--green:#14a44d;--ink:#10213d;--soft:#f9fbff;--line:#dfe7f4;--card:#ffffffef}
body{background:linear-gradient(145deg,#fffef7 0%,#f8fbff 40%,#eef4ff 72%,#fff4f2 100%)}
.world-bg span:nth-child(1){background:rgba(255,209,0,.95)}
.world-bg span:nth-child(2){background:rgba(21,70,160,.85)}
.world-bg span:nth-child(3){background:rgba(216,35,42,.55)}
.world-bg span:nth-child(4){background:rgba(255,209,0,.55)}
.brand-mark{background:linear-gradient(135deg,#ffd100,#f7b500);color:#0B2D6B;font-size:23px;box-shadow:inset 0 0 0 3px rgba(255,255,255,.8),0 10px 24px rgba(11,45,107,.15)}
.grad{background:linear-gradient(90deg,var(--yellow),var(--blue),var(--red));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-card:before,.pro-match:before{background:linear-gradient(90deg,var(--yellow),var(--blue),var(--red))}
.btn-primary{background:linear-gradient(135deg,var(--yellow),var(--blue),var(--red));color:#fff}
.btn-green{background:linear-gradient(135deg,#eaf6ff,#fff7d6);color:#0B2D6B}
.family-ribbon,.pill-blue{background:linear-gradient(135deg,#e7efff,#fff7d0)!important;color:#0B2D6B!important}
.countdown-pill{background:#0b0b0b;color:#fff}.countdown-pill span{color:#FFD100}.countdown-pill b{font-size:14px}
.phase-countdown-strip{display:flex;gap:10px;flex-wrap:wrap;width:min(1220px,94%);margin:8px auto 0;padding:0 2px 8px}
.mini-deadline{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.8);border:1px solid rgba(11,45,107,.1);box-shadow:0 8px 22px rgba(11,45,107,.07)}
.mini-deadline em{font-style:normal;color:#111;font-weight:900}.mini-deadline b{color:#111;font-weight:950}
.cromo-showcase img{object-fit:cover;background:#0B2D6B}
.rank-avatar{width:44px;height:44px;object-fit:cover;border-radius:14px;box-shadow:0 6px 18px rgba(11,45,107,.15);cursor:pointer}
.rank-avatar.large{width:58px;height:58px;border-radius:18px}
.image-modal{position:fixed;inset:0;display:none;z-index:60}.image-modal.open{display:block}.image-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(5px)}
.image-modal-content{position:relative;z-index:2;max-width:min(92vw,520px);margin:4vh auto;background:#fff;border-radius:28px;padding:16px;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.image-modal-content img{width:100%;height:auto;display:block;border-radius:20px}.image-modal-close{position:absolute;right:12px;top:12px;border:0;background:#111;color:#fff;width:42px;height:42px;border-radius:14px;font-size:24px;cursor:pointer}
.compact-form{max-width:320px}.compact-form select{font-weight:800}
.desktop-ranking table{min-width:980px}.desktop-ranking th,.desktop-ranking td{vertical-align:middle}
.ranking-card:first-child{background:linear-gradient(135deg,#fffdf1,#ffffff)}
.ranking-meta span{background:#f7f9fc;border:1px solid #e7edf7}
.footer{font-size:14px;color:#51617f}
@media(max-width:760px){.phase-countdown-strip{overflow:auto;white-space:nowrap;padding-bottom:6px}.mini-deadline{flex:0 0 auto}.compact-form{max-width:none}.image-modal-content{margin:8vh 12px}.rank-avatar{width:42px;height:42px}.topbar{background:rgba(255,255,255,.88)} }


/* ===== V11 family gallery, prizes and mobile cartilla ===== */
.signature-home{font-size:15px;color:#51617f;margin-top:8px}.signature-home b{color:#0B2D6B}
.clean-photo .caption{display:none}.clean-photo{background:#0B2D6B}.clean-photo img{height:100%;object-fit:cover}
.gallery-card{overflow:hidden}
.gallery-controls{display:flex;gap:8px}
.participants-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 4px 16px;scrollbar-width:thin}
.family-sticker-card{flex:0 0 230px;scroll-snap-align:center;border-radius:28px;overflow:hidden;background:linear-gradient(160deg,#0B2D6B,#10213d);box-shadow:0 18px 38px rgba(11,45,107,.18);position:relative;border:4px solid #FFD100}
.family-sticker-card img{width:100%;height:300px;object-fit:cover;display:block;background:#eef2ff}
.family-sticker-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,209,0,.55);border-radius:22px;pointer-events:none}
.sticker-info{position:absolute;left:12px;right:12px;bottom:12px;background:rgba(7,18,45,.82);color:#fff;border-radius:18px;padding:12px;backdrop-filter:blur(8px)}
.sticker-info b{display:block;font-size:17px}.sticker-info span{display:block;font-size:12px;color:#dbeafe;margin-top:3px}
.prize-card{background:linear-gradient(135deg,#fff8d7,#fff,#eef4ff)}
.prizes-grid{margin-top:10px}.prize-box{padding:18px;border-radius:22px;background:#fff;border:1px solid #e7edf7;box-shadow:0 12px 26px rgba(11,45,107,.08);text-align:center}
.prize-box small{display:block;color:#64748b;font-weight:900;text-transform:uppercase;font-size:11px}.prize-box b{display:block;font-size:34px;color:#0B2D6B;margin:4px 0}.prize-box span{font-weight:850;color:#334155}.prize-box.champion{background:linear-gradient(135deg,#fff2a8,#fff);border-color:#FFD100}.prize-box.consolation b{font-size:32px}
.image-modal-content{max-width:min(92vw,430px);max-height:88vh;overflow:auto;margin:6vh auto;padding:14px}
.image-modal-content img{max-height:76vh;object-fit:contain;background:#f8fafc}
@media(max-width:760px){
  .family-sticker-card{flex-basis:74vw}.family-sticker-card img{height:390px}
  .gallery-controls{display:none}
  .pron-score-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr)!important;gap:6px!important;align-items:center!important}
  .pron-team{display:flex!important;align-items:center!important;gap:6px!important;padding:8px!important;border-radius:16px!important;min-width:0!important}
  .pron-local{justify-content:flex-end!important}.pron-visitante{justify-content:flex-start!important}
  .pron-team .team-name{font-size:12px!important;line-height:1!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .pron-team .team-name b{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .score-big{width:43px!important;height:44px!important;font-size:20px!important;border-radius:13px!important;padding:4px!important;flex:0 0 43px!important}
  .score-separator{width:42px!important;height:34px!important;min-height:34px!important;font-size:11px!important;margin:0!important;border-radius:999px!important}
}
@media(max-width:420px){
  .family-sticker-card{flex-basis:82vw}.family-sticker-card img{height:360px}
  .pron-score-layout{grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr)!important;gap:4px!important}
  .score-big{width:38px!important;height:40px!important;font-size:18px!important;flex-basis:38px!important}
  .score-separator{width:34px!important;height:30px!important;font-size:10px!important}
  .pron-team{gap:4px!important;padding:7px!important}
  .pron-team .team-name{font-size:11px!important}
}


/* ===== V12 cleanup carousel, prizes and country names ===== */
.family-sticker-card{background:#0B2D6B;border:0;border-radius:24px;box-shadow:0 18px 38px rgba(11,45,107,.16)}
.family-sticker-card:before,.sticker-info{display:none!important}
.family-sticker-card img{height:360px;object-fit:contain;background:#07122d}
.prizes-grid.grid-3{grid-template-columns:repeat(3,1fr)}
.prize-box.consolation b{font-size:30px}
@media(max-width:760px){
  .family-sticker-card{flex-basis:74vw}
  .family-sticker-card img{height:420px}
  .pron-team .team-name,
  .pron-team .team-name b{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .pron-team .team-name{font-size:10.5px!important;line-height:1.05!important}
  .pron-team{align-items:center!important}
}
@media(max-width:420px){
  .family-sticker-card{flex-basis:82vw}
  .family-sticker-card img{height:390px}
  .pron-team .team-name{font-size:9.4px!important;line-height:1.02!important}
  .prizes-grid.grid-3{grid-template-columns:1fr}
}


/* ===== V13 premio consuelo image ===== */
.consuelo-inline{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center}
.consuelo-icon{height:28px;width:auto;vertical-align:middle;display:inline-block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.12))}
.plus-consuelo{font-size:20px;font-weight:800}
.prize-box.consolation span{display:block;line-height:1.3}
@media(max-width:420px){.consuelo-icon{height:24px}.plus-consuelo{font-size:18px}}


/* ===== V14 premios responsive y navegación más clara ===== */
.prize-card{overflow:visible}
.prizes-grid{align-items:stretch}
.prize-box{overflow:visible;min-width:0}
.prize-box b{white-space:normal;line-height:1.05}
.prize-box.consolation b{font-size:26px}
.prize-box .consuelo-inline{max-width:100%}
@media(max-width:760px){
  .prizes-grid,
  .prizes-grid.grid-3,
  .prizes-grid.grid-4{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .prize-card{padding:16px!important}
  .prize-box{
    padding:14px!important;
    display:grid;
    grid-template-columns:88px 1fr;
    gap:8px 12px;
    align-items:center;
    text-align:left;
  }
  .prize-box small{grid-column:1/-1;font-size:10px}
  .prize-box b{font-size:28px!important;margin:0!important;text-align:center}
  .prize-box span{font-size:13px!important}
  .prize-box.consolation b{font-size:20px!important}
  .plus-consuelo{font-size:15px!important}
  .consuelo-icon{height:22px!important}
}
@media(max-width:420px){
  .prize-box{
    grid-template-columns:72px 1fr;
    padding:12px!important;
  }
  .prize-box b{font-size:24px!important}
  .prize-box.consolation b{font-size:18px!important}
}


/* ===== V15 administración avanzada y galería de recuerdos ===== */
.participant-admin-list{display:grid;gap:16px;margin-top:18px}
.participant-admin-card{display:grid;grid-template-columns:150px minmax(0,1.3fr) minmax(220px,.7fr);gap:16px;align-items:start}
.participant-admin-photo img{width:150px;height:190px;object-fit:cover;border-radius:24px;box-shadow:0 18px 38px rgba(11,45,107,.14);background:#eef2ff}
.participant-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.participant-admin-form .actions,.participant-admin-form .admin-checks{grid-column:1/-1}
.admin-checks{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.participant-password-form,.participant-remove-photo{display:grid;gap:10px}
.memorial-gallery-card{background:linear-gradient(135deg,#fffaf0,#ffffff)}
.memorial-card{border:0;background:#111;position:relative}
.memorial-card img{object-fit:cover}
.memorial-caption{position:absolute;left:12px;right:12px;bottom:12px;padding:12px;border-radius:18px;background:rgba(0,0,0,.62);color:#fff;backdrop-filter:blur(8px);text-align:center}
.memorial-caption b{display:block;font-size:17px}.memorial-caption span{display:block;font-size:12px;color:#f8fafc;margin-top:3px}
@media(max-width:900px){
  .participant-admin-card{grid-template-columns:1fr}
  .participant-admin-photo img{width:100%;height:280px}
  .participant-admin-form{grid-template-columns:1fr}
}
@media(max-width:760px){
  .participant-admin-photo img{height:240px}
  .memorial-caption{font-size:13px}
}


/* ===== V16 administración de usuarios en tabla + ojito ===== */
.admin-users-hero h1{margin-bottom:8px}
.admin-create-card{background:linear-gradient(135deg,#ffffff,#f8fbff)}
.admin-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}
.admin-create-actions{align-content:end}.check-chip{display:inline-flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e5edf8;border-radius:999px;padding:11px 14px;width:max-content}
.password-field{position:relative;display:flex;align-items:center}.password-field .input{padding-right:48px}.password-field.compact .input{min-width:132px;padding-right:42px}.password-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:12px;background:#eef4ff;color:#0B2D6B;cursor:pointer;font-size:16px;display:grid;place-items:center}.password-eye:hover{background:#dbeafe}.admin-users-wrap{border-radius:20px;border:1px solid #e7edf7;background:#fff}.admin-users-table{min-width:1180px}.admin-users-table th{background:#0B2D6B;color:#fff;position:sticky;top:0;z-index:2}.admin-users-table td{background:#fff}.admin-users-table tr:nth-child(even) td{background:#fbfcff}.admin-users-table tr:hover td{background:#fffceb}.admin-user-avatar{width:54px;height:68px;object-fit:cover;border-radius:14px;background:#eef2ff;box-shadow:0 8px 20px rgba(11,45,107,.12);display:block}.admin-input{min-width:120px;padding:9px 10px;border-radius:12px;font-size:13px}.file-mini{min-width:170px;font-size:12px}.btn-mini{padding:8px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.admin-actions-cell{min-width:220px;white-space:nowrap}.inline-password-form{margin:0}.switch-mini input{display:none}.switch-mini span{display:inline-block;width:46px;height:25px;border-radius:999px;background:#e2e8f0;position:relative;vertical-align:middle;cursor:pointer;transition:.15s}.switch-mini span:before{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transition:.15s}.switch-mini input:checked+span{background:#16a34a}.switch-mini input:checked+span:before{left:24px}.login-card .password-field,.card .password-field{width:100%}.login-card .password-field .input,.card .password-field .input{width:100%}
@media(max-width:980px){.admin-create-grid{grid-template-columns:1fr 1fr}.admin-users-table{min-width:1080px}.admin-user-avatar{width:48px;height:60px}.admin-input{min-width:110px}.file-mini{min-width:150px}.admin-actions-cell{min-width:190px}}
@media(max-width:760px){.admin-create-grid{grid-template-columns:1fr}.admin-users-wrap{overflow:auto}.admin-users-table{min-width:1040px}.admin-users-table th,.admin-users-table td{padding:9px 8px}.admin-user-avatar{width:44px;height:56px}.btn-mini{padding:7px 8px}.password-eye{width:34px;height:34px}.admin-input{font-size:12px}}


/* ===== V17 inicio más limpio + galerías premium ===== */
.hero{align-items:stretch}
.hero-card{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,252,237,.92));border:1px solid rgba(255,209,0,.24)}
.hero-card p{max-width:760px}
.signature-home{background:linear-gradient(135deg,#fff7d6,#eef4ff);border:1px solid rgba(11,45,107,.08);display:inline-block;padding:10px 14px;border-radius:16px;margin-top:12px}
.clean-photo{box-shadow:0 22px 50px rgba(11,45,107,.18);border:1px solid rgba(255,209,0,.25)}
.gallery-card{background:rgba(255,255,255,.92);border:1px solid rgba(11,45,107,.07)}
.gallery-card .section-title{align-items:center}
.participants-gallery{gap:18px;padding:10px 4px 18px}
.family-sticker-card{
  flex:0 0 235px;
  border-radius:28px;
  background:linear-gradient(145deg,#071b45,#0B2D6B);
  border:1px solid rgba(255,209,0,.45);
  box-shadow:0 18px 42px rgba(11,45,107,.20);
  padding:8px;
  overflow:hidden;
}
.family-sticker-card img{
  border-radius:22px;
  width:100%;
  height:330px;
  object-fit:contain;
  background:linear-gradient(135deg,#07122d,#0B2D6B);
  display:block;
}
.family-sticker-card:hover{transform:translateY(-2px);box-shadow:0 24px 54px rgba(11,45,107,.24);transition:.18s ease}

/* Recuerdos: más sublime, texto legible fuera de la foto */
.memorial-gallery-card{
  background:linear-gradient(145deg,#fffdf4 0%,#ffffff 58%,#f2f6ff 100%);
  border:1px solid rgba(151,117,35,.16);
  position:relative;
  overflow:hidden;
}
.memorial-gallery-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 12% 18%,rgba(255,209,0,.16),transparent 30%),radial-gradient(circle at 86% 20%,rgba(11,45,107,.10),transparent 26%);
  pointer-events:none;
}
.memorial-gallery-card > *{position:relative}
.memorial-card{
  flex:0 0 220px;
  padding:10px;
  border-radius:30px;
  background:linear-gradient(180deg,#fffaf0,#ffffff);
  border:1px solid rgba(151,117,35,.22);
  box-shadow:0 20px 42px rgba(40,30,10,.13);
}
.memorial-card:before{display:none!important}
.memorial-card img{
  height:280px;
  object-fit:contain;
  background:linear-gradient(135deg,#0b1734,#122a5a);
  border-radius:24px;
}
.memorial-caption{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin-top:10px;
  min-height:64px;
  padding:10px 12px;
  border-radius:18px;
  background:linear-gradient(135deg,#0B2D6B,#071b45)!important;
  color:#fff!important;
  text-align:center;
  box-shadow:inset 0 0 0 1px rgba(255,209,0,.18);
  backdrop-filter:none!important;
}
.memorial-caption b{
  display:block;
  color:#fff!important;
  font-size:16px;
  line-height:1.15;
  letter-spacing:.02em;
}
.memorial-caption span{
  display:block;
  color:#fff8d6!important;
  font-size:12px;
  line-height:1.25;
  margin-top:4px;
  font-weight:700;
}
.memorial-gallery-card .pill-warn{background:linear-gradient(135deg,#fff2b8,#fff)!important;color:#7a4a00!important}
.memorial-gallery-card h2{color:#0B2D6B}

@media(max-width:760px){
  .hero-card{padding:22px}
  .gallery-card .section-title{display:flex;align-items:flex-start}
  .family-sticker-card{flex-basis:72vw;padding:7px}
  .family-sticker-card img{height:360px}
  .memorial-card{flex-basis:70vw}
  .memorial-card img{height:340px}
  .memorial-caption{min-height:auto;padding:11px 12px}
  .memorial-caption b{font-size:17px}
  .memorial-caption span{font-size:12px}
}
@media(max-width:420px){
  .family-sticker-card{flex-basis:82vw}
  .family-sticker-card img{height:350px}
  .memorial-card{flex-basis:82vw}
  .memorial-card img{height:330px}
}


/* ===== V18 cambios palpables ===== */
.admin-table-card{padding-bottom:10px}
.admin-users-table-v18{min-width:1200px!important;table-layout:auto}
.admin-users-table-v18 td,.admin-users-table-v18 th{vertical-align:middle!important}
.admin-thumb-wrap{width:64px;height:84px;border-radius:16px;overflow:hidden;background:#eef2ff;box-shadow:0 8px 22px rgba(11,45,107,.12);display:flex;align-items:center;justify-content:center}
.admin-user-avatar-v18{width:64px!important;height:84px!important;max-width:64px!important;max-height:84px!important;min-width:64px!important;min-height:84px!important;object-fit:cover!important;display:block!important;border-radius:16px!important}
.admin-btn-stack{display:flex;flex-direction:column;gap:7px;align-items:stretch}.admin-btn-stack .btn{width:100%}
.admin-users-table-v18 .admin-input{min-width:96px}
.admin-users-table-v18 .file-mini{min-width:140px;max-width:180px}
.admin-users-table-v18 .admin-actions-cell{min-width:130px;white-space:normal}

.participants-premium-card{background:linear-gradient(145deg,#ffffff,#f8fbff)}
.premium-gallery{gap:18px;padding:10px 2px 18px}
.participant-gallery-card{flex:0 0 230px;background:linear-gradient(180deg,#071b45 0%,#0B2D6B 100%);border-radius:28px;padding:8px;box-shadow:0 18px 42px rgba(11,45,107,.18);border:1px solid rgba(255,209,0,.35);overflow:hidden}
.participant-gallery-image{background:#07122d;border-radius:22px;overflow:hidden}
.participant-gallery-image img{width:100%;height:315px;object-fit:contain;display:block;background:#07122d}
.participant-gallery-caption{padding:12px 12px 10px;color:#fff;text-align:center}
.participant-gallery-caption b{display:block;font-size:16px;line-height:1.2;color:#fff}
.participant-gallery-caption span{display:block;margin-top:5px;font-size:12px;color:#dbeafe;font-weight:800}

.premium-memorial-shell{background:linear-gradient(145deg,#fffdf6,#ffffff 56%,#f5f8ff);border:1px solid rgba(194,152,51,.22)}
.premium-memorial-gallery{gap:18px;padding:10px 2px 18px}
.memorial-tribute-card{flex:0 0 230px;background:linear-gradient(180deg,#fffaf0 0%,#ffffff 100%);border-radius:28px;padding:10px;border:1px solid rgba(194,152,51,.22);box-shadow:0 18px 40px rgba(45,37,16,.12)}
.memorial-tribute-image{border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#091733,#113061)}
.memorial-tribute-image img{width:100%;height:285px;object-fit:contain;display:block;background:linear-gradient(135deg,#091733,#113061)}
.memorial-tribute-text{margin-top:10px;padding:12px 12px;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px rgba(11,45,107,.08);text-align:center}
.memorial-tribute-text b{display:block;color:#0B2D6B;font-size:16px;line-height:1.15;margin-bottom:4px}
.memorial-tribute-text span{display:block;color:#334155!important;font-size:13px;line-height:1.35;font-weight:700;white-space:normal;word-break:break-word}
.memorial-caption{display:none!important}
.memorial-card{all:unset}
.memorial-card img{all:unset}

@media(max-width:980px){.admin-users-table-v18{min-width:1120px!important}.participant-gallery-card,.memorial-tribute-card{flex-basis:220px}}
@media(max-width:760px){.admin-users-wrap{overflow:auto}.admin-users-table-v18{min-width:1080px!important}.admin-thumb-wrap{width:56px;height:74px}.admin-user-avatar-v18{width:56px!important;height:74px!important;max-width:56px!important;max-height:74px!important}.participant-gallery-card{flex-basis:76vw}.participant-gallery-image img{height:360px}.memorial-tribute-card{flex-basis:76vw}.memorial-tribute-image img{height:330px}}
@media(max-width:420px){.participant-gallery-card,.memorial-tribute-card{flex-basis:84vw}.participant-gallery-image img{height:335px}.memorial-tribute-image img{height:310px}}


/* ===== V19 galerías compactas tipo galería real ===== */
/* Participantes: tarjetas más pequeñas en escritorio y celular */
.participants-premium-card,
.premium-memorial-shell{
  padding:18px!important;
}

.premium-gallery,
.premium-memorial-gallery,
.participants-gallery{
  gap:12px!important;
  padding:6px 2px 12px!important;
}

.participant-gallery-card{
  flex:0 0 150px!important;
  width:150px!important;
  border-radius:20px!important;
  padding:6px!important;
}

.participant-gallery-image{
  border-radius:16px!important;
}

.participant-gallery-image img{
  height:190px!important;
  border-radius:16px!important;
  object-fit:cover!important;
}

.participant-gallery-caption{
  padding:8px 6px 6px!important;
}

.participant-gallery-caption b{
  font-size:12px!important;
  line-height:1.15!important;
}

.participant-gallery-caption span{
  font-size:10px!important;
  margin-top:3px!important;
}

/* Recuerdos: compactos, elegantes y legibles */
.memorial-tribute-card{
  flex:0 0 155px!important;
  width:155px!important;
  border-radius:20px!important;
  padding:7px!important;
}

.memorial-tribute-image{
  border-radius:16px!important;
}

.memorial-tribute-image img{
  height:185px!important;
  border-radius:16px!important;
  object-fit:cover!important;
}

.memorial-tribute-text{
  margin-top:7px!important;
  padding:8px 7px!important;
  border-radius:14px!important;
}

.memorial-tribute-text b{
  font-size:12px!important;
  line-height:1.15!important;
}

.memorial-tribute-text span{
  font-size:10px!important;
  line-height:1.2!important;
  margin-top:3px!important;
}

/* Si alguna galería antigua aún usa estas clases, también se compacta */
.family-sticker-card{
  flex:0 0 150px!important;
  width:150px!important;
  border-radius:20px!important;
  padding:6px!important;
}

.family-sticker-card img{
  height:190px!important;
  border-radius:16px!important;
  object-fit:cover!important;
}

/* Home más compacto para que no ocupe tanto espacio */
.gallery-card .section-title{
  margin-bottom:8px!important;
}

.gallery-card .section-title h2{
  font-size:22px!important;
}

.gallery-card .muted{
  font-size:13px!important;
}

/* Admin: foto pequeña y apreciable, sin agrandarse por conflicto */
.admin-thumb-wrap{
  width:58px!important;
  height:72px!important;
  border-radius:14px!important;
}

.admin-user-avatar,
.admin-user-avatar-v18{
  width:58px!important;
  height:72px!important;
  min-width:58px!important;
  min-height:72px!important;
  max-width:58px!important;
  max-height:72px!important;
  object-fit:cover!important;
  border-radius:14px!important;
}

@media(max-width:980px){
  .participant-gallery-card,
  .memorial-tribute-card,
  .family-sticker-card{
    flex-basis:142px!important;
    width:142px!important;
  }

  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img{
    height:178px!important;
  }
}

@media(max-width:760px){
  .participants-premium-card,
  .premium-memorial-shell{
    padding:14px!important;
  }

  .premium-gallery,
  .premium-memorial-gallery,
  .participants-gallery{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    overflow:visible!important;
    gap:10px!important;
  }

  .participant-gallery-card,
  .memorial-tribute-card,
  .family-sticker-card{
    width:100%!important;
    flex:unset!important;
    border-radius:18px!important;
  }

  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img{
    height:165px!important;
    object-fit:cover!important;
  }

  .participant-gallery-caption b,
  .memorial-tribute-text b{
    font-size:11.5px!important;
  }

  .participant-gallery-caption span,
  .memorial-tribute-text span{
    font-size:9.5px!important;
  }

  .gallery-controls{
    display:none!important;
  }
}

@media(max-width:420px){
  .premium-gallery,
  .premium-memorial-gallery,
  .participants-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }

  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img{
    height:145px!important;
  }

  .participant-gallery-caption,
  .memorial-tribute-text{
    padding:7px 5px!important;
  }
}

@media(max-width:340px){
  .premium-gallery,
  .premium-memorial-gallery,
  .participants-gallery{
    grid-template-columns:1fr!important;
  }

  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img{
    height:170px!important;
  }
}


/* ===== V20 URGENTE: tamaño cromo real, nada gigante ===== */
/* Rompe caché con app.css?v=20. Estas reglas van al final y pisan todo lo anterior. */

/* Hero/inicio: la imagen principal ya no ocupa media pantalla */
.hero{
  grid-template-columns:minmax(0,1fr) 220px!important;
  gap:16px!important;
  align-items:start!important;
}
.hero .photo-card,
.hero .clean-photo,
.hero .cromo-showcase{
  width:220px!important;
  min-height:0!important;
  height:260px!important;
  max-height:260px!important;
  justify-self:end!important;
  border-radius:22px!important;
}
.hero .photo-card img,
.hero .clean-photo img,
.hero .cromo-showcase img{
  width:100%!important;
  height:100%!important;
  max-height:260px!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:22px!important;
}

/* Galerías: mosaico pequeño real en computadora */
.participants-gallery,
.premium-gallery,
.premium-memorial-gallery,
.memorial-gallery{
  display:grid!important;
  grid-template-columns:repeat(auto-fill, minmax(118px, 118px))!important;
  justify-content:start!important;
  align-items:start!important;
  gap:12px!important;
  overflow:visible!important;
  padding:6px 0 10px!important;
}

.participant-gallery-card,
.memorial-tribute-card,
.family-sticker-card,
.memorial-card{
  width:118px!important;
  max-width:118px!important;
  min-width:118px!important;
  flex:0 0 118px!important;
  border-radius:16px!important;
  padding:5px!important;
  margin:0!important;
  box-shadow:0 8px 18px rgba(11,45,107,.14)!important;
}

.participant-gallery-image,
.memorial-tribute-image{
  width:108px!important;
  height:135px!important;
  border-radius:13px!important;
  overflow:hidden!important;
}

.participant-gallery-image img,
.memorial-tribute-image img,
.family-sticker-card img,
.memorial-card img{
  width:108px!important;
  height:135px!important;
  max-width:108px!important;
  max-height:135px!important;
  min-width:108px!important;
  min-height:135px!important;
  object-fit:cover!important;
  object-position:center top!important;
  display:block!important;
  border-radius:13px!important;
}

.participant-gallery-caption,
.memorial-tribute-text{
  width:108px!important;
  margin-top:5px!important;
  padding:5px 4px!important;
  border-radius:10px!important;
  min-height:0!important;
}

.participant-gallery-caption b,
.memorial-tribute-text b{
  font-size:10px!important;
  line-height:1.05!important;
  display:block!important;
}

.participant-gallery-caption span,
.memorial-tribute-text span{
  font-size:8.5px!important;
  line-height:1.1!important;
  display:block!important;
  margin-top:2px!important;
}

/* Tarjetas de sección más compactas */
.gallery-card{
  padding:14px!important;
  margin:12px 0!important;
}
.gallery-card .section-title{
  margin:0 0 8px!important;
}
.gallery-card .section-title h2{
  font-size:20px!important;
}
.gallery-card .section-title .muted{
  font-size:12px!important;
  margin:4px 0 0!important;
}
.gallery-controls{
  display:none!important;
}

/* Admin: foto miniatura fija */
.admin-thumb-wrap,
.admin-user-avatar,
.admin-user-avatar-v18{
  width:48px!important;
  height:60px!important;
  min-width:48px!important;
  min-height:60px!important;
  max-width:48px!important;
  max-height:60px!important;
}
.admin-user-avatar,
.admin-user-avatar-v18{
  object-fit:cover!important;
  border-radius:11px!important;
}

/* Celular: dos o tres cromos por fila, nunca gigantes */
@media(max-width:760px){
  .hero{
    grid-template-columns:1fr!important;
  }
  .hero .photo-card,
  .hero .clean-photo,
  .hero .cromo-showcase{
    width:128px!important;
    height:160px!important;
    max-height:160px!important;
    justify-self:center!important;
    margin-top:8px!important;
  }
  .hero .photo-card img,
  .hero .clean-photo img,
  .hero .cromo-showcase img{
    height:160px!important;
    max-height:160px!important;
    border-radius:18px!important;
  }

  .participants-gallery,
  .premium-gallery,
  .premium-memorial-gallery,
  .memorial-gallery{
    grid-template-columns:repeat(3, 1fr)!important;
    gap:8px!important;
  }

  .participant-gallery-card,
  .memorial-tribute-card,
  .family-sticker-card,
  .memorial-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:4px!important;
    border-radius:14px!important;
  }

  .participant-gallery-image,
  .memorial-tribute-image{
    width:100%!important;
    height:118px!important;
    border-radius:11px!important;
  }

  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img,
  .memorial-card img{
    width:100%!important;
    height:118px!important;
    min-width:0!important;
    max-width:none!important;
    max-height:118px!important;
    object-fit:cover!important;
    border-radius:11px!important;
  }

  .participant-gallery-caption,
  .memorial-tribute-text{
    width:100%!important;
    padding:4px 3px!important;
  }

  .participant-gallery-caption b,
  .memorial-tribute-text b{
    font-size:9px!important;
  }

  .participant-gallery-caption span,
  .memorial-tribute-text span{
    font-size:7.8px!important;
  }
}

@media(max-width:430px){
  .participants-gallery,
  .premium-gallery,
  .premium-memorial-gallery,
  .memorial-gallery{
    grid-template-columns:repeat(3, 1fr)!important;
    gap:7px!important;
  }

  .participant-gallery-image,
  .memorial-tribute-image,
  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img,
  .memorial-card img{
    height:105px!important;
    max-height:105px!important;
  }

  .gallery-card{
    padding:10px!important;
  }
}

@media(max-width:350px){
  .participants-gallery,
  .premium-gallery,
  .premium-memorial-gallery,
  .memorial-gallery{
    grid-template-columns:repeat(2, 1fr)!important;
  }

  .participant-gallery-image,
  .memorial-tribute-image,
  .participant-gallery-image img,
  .memorial-tribute-image img,
  .family-sticker-card img,
  .memorial-card img{
    height:115px!important;
    max-height:115px!important;
  }
}


/* ===== V21 FORZADO: si algo se resiste, esto lo pisa ===== */
.hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 180px!important;
  gap:16px!important;
  align-items:start!important;
}
.hero-card{min-width:0!important}
.photo-card.cromo-showcase.clean-photo{
  width:180px!important;
  max-width:180px!important;
  min-width:180px!important;
  height:230px!important;
  max-height:230px!important;
  min-height:230px!important;
  overflow:hidden!important;
  justify-self:end!important;
}
.photo-card.cromo-showcase.clean-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center top!important;
}

#participantsGallery,
#memorialGallery{
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(110px,110px))!important;
  gap:10px!important;
  justify-content:start!important;
  align-content:start!important;
  overflow:visible!important;
}
#participantsGallery > *,
#memorialGallery > *{
  width:110px!important;
  min-width:110px!important;
  max-width:110px!important;
  margin:0!important;
}
#participantsGallery img,
#memorialGallery img{
  width:100%!important;
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  object-fit:cover!important;
  object-position:center top!important;
}
#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:132px!important;
}
#participantsGallery .participant-gallery-caption,
#memorialGallery .memorial-tribute-text{
  width:100%!important;
  padding:5px 4px!important;
}
#participantsGallery .participant-gallery-caption b,
#memorialGallery .memorial-tribute-text b{
  font-size:10px!important;
}
#participantsGallery .participant-gallery-caption span,
#memorialGallery .memorial-tribute-text span{
  font-size:8px!important;
}

@media(max-width:760px){
  .hero{
    grid-template-columns:1fr!important;
  }
  .photo-card.cromo-showcase.clean-photo{
    width:130px!important;
    max-width:130px!important;
    min-width:130px!important;
    height:165px!important;
    max-height:165px!important;
    min-height:165px!important;
    justify-self:center!important;
  }
  #participantsGallery,
  #memorialGallery{
    grid-template-columns:repeat(3, minmax(0,1fr))!important;
    gap:8px!important;
  }
  #participantsGallery > *,
  #memorialGallery > *{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image{
    height:108px!important;
    min-height:108px!important;
    max-height:108px!important;
  }
  #participantsGallery .participant-gallery-caption b,
  #memorialGallery .memorial-tribute-text b{
    font-size:9px!important;
  }
  #participantsGallery .participant-gallery-caption span,
  #memorialGallery .memorial-tribute-text span{
    font-size:7.5px!important;
  }
}
@media(max-width:390px){
  #participantsGallery,
  #memorialGallery{
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
  }
}


/* ===== V22 ajuste fino: cromos más grandes, completos y sin texto extra ===== */
.hero{
  grid-template-columns:minmax(0,1fr) 150px!important;
}
.photo-card.cromo-showcase.clean-photo{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  background:#07122d!important;
}
.photo-card.cromo-showcase.clean-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#07122d!important;
}

/* Galería compacta pero apreciable: imagen completa */
#participantsGallery,
#memorialGallery{
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(150px,150px))!important;
  gap:14px!important;
  justify-content:start!important;
  overflow:visible!important;
}
#participantsGallery > *,
#memorialGallery > *{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  padding:6px!important;
  border-radius:18px!important;
}
#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  background:#07122d!important;
  border-radius:14px!important;
}
#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#07122d!important;
  border-radius:14px!important;
}
#participantsGallery .participant-gallery-caption{
  padding:6px 4px!important;
}
#participantsGallery .participant-gallery-caption span{
  display:none!important;
}
#participantsGallery .participant-gallery-caption b,
#memorialGallery .memorial-tribute-text b{
  font-size:12px!important;
  line-height:1.12!important;
}
#memorialGallery .memorial-tribute-text span{
  font-size:10px!important;
  line-height:1.2!important;
}

/* En celular: 2 columnas cómodas, nada gigante, imagen completa */
@media(max-width:760px){
  .hero{
    grid-template-columns:1fr!important;
  }
  .photo-card.cromo-showcase.clean-photo{
    width:150px!important;
    max-width:150px!important;
    min-width:150px!important;
    height:190px!important;
    min-height:190px!important;
    max-height:190px!important;
    justify-self:center!important;
  }
  #participantsGallery,
  #memorialGallery{
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:12px!important;
  }
  #participantsGallery > *,
  #memorialGallery > *{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:6px!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:175px!important;
    min-height:175px!important;
    max-height:175px!important;
    object-fit:contain!important;
  }
}
@media(max-width:390px){
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:160px!important;
    min-height:160px!important;
    max-height:160px!important;
  }
}


/* ===== V23: cromos más grandes, completos, sin nombres ===== */
.hero{
  grid-template-columns:minmax(0,1fr) 190px!important;
}
.photo-card.cromo-showcase.clean-photo{
  width:190px!important;
  min-width:190px!important;
  max-width:190px!important;
  height:240px!important;
  min-height:240px!important;
  max-height:240px!important;
  background:#07122d!important;
  justify-self:end!important;
}
.photo-card.cromo-showcase.clean-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#07122d!important;
}

#participantsGallery,
#memorialGallery{
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(185px,185px))!important;
  gap:16px!important;
  justify-content:start!important;
  overflow:visible!important;
}

#participantsGallery > *,
#memorialGallery > *{
  width:185px!important;
  min-width:185px!important;
  max-width:185px!important;
  padding:7px!important;
  border-radius:20px!important;
}

#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:235px!important;
  min-height:235px!important;
  max-height:235px!important;
  background:#07122d!important;
  border-radius:16px!important;
}

#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:235px!important;
  min-height:235px!important;
  max-height:235px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#07122d!important;
  border-radius:16px!important;
}

/* Quitar cualquier texto/nombre dentro de cromos de participantes */
#participantsGallery .participant-gallery-caption,
#participantsGallery .participant-gallery-caption *,
#participantsGallery span,
#participantsGallery b{
  display:none!important;
}

/* Recuerdos conservan texto legible */
#memorialGallery .memorial-tribute-text{
  width:100%!important;
  padding:7px 6px!important;
}
#memorialGallery .memorial-tribute-text b{
  font-size:13px!important;
  line-height:1.15!important;
}
#memorialGallery .memorial-tribute-text span{
  font-size:11px!important;
  line-height:1.25!important;
}

/* Celular: 2 columnas, cromos apreciables y completos */
@media(max-width:760px){
  .hero{
    grid-template-columns:1fr!important;
  }
  .photo-card.cromo-showcase.clean-photo{
    width:170px!important;
    max-width:170px!important;
    min-width:170px!important;
    height:215px!important;
    min-height:215px!important;
    max-height:215px!important;
    justify-self:center!important;
  }
  #participantsGallery,
  #memorialGallery{
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:12px!important;
  }
  #participantsGallery > *,
  #memorialGallery > *{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding:6px!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:205px!important;
    min-height:205px!important;
    max-height:205px!important;
    object-fit:contain!important;
  }
}
@media(max-width:390px){
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:185px!important;
    min-height:185px!important;
    max-height:185px!important;
  }
}


/* ===== V24: cromos más grandes, sin marcos azules, galería con scroll ===== */
.hero{
  grid-template-columns:minmax(0,1fr) 210px!important;
}
.photo-card.cromo-showcase.clean-photo{
  width:210px!important;
  min-width:210px!important;
  max-width:210px!important;
  height:270px!important;
  min-height:270px!important;
  max-height:270px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.photo-card.cromo-showcase.clean-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
}

#participantsGallery,
#memorialGallery{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  padding:8px 2px 12px!important;
  -webkit-overflow-scrolling:touch!important;
}

#participantsGallery::-webkit-scrollbar,
#memorialGallery::-webkit-scrollbar{
  height:10px!important;
}
#participantsGallery::-webkit-scrollbar-thumb,
#memorialGallery::-webkit-scrollbar-thumb{
  background:#c4cde2!important;
  border-radius:999px!important;
}

#participantsGallery > *,
#memorialGallery > *{
  flex:0 0 calc((100% - 48px)/4)!important;
  width:calc((100% - 48px)/4)!important;
  min-width:calc((100% - 48px)/4)!important;
  max-width:calc((100% - 48px)/4)!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:none!important;
  border-radius:0!important;
  scroll-snap-align:start!important;
}

#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:280px!important;
  min-height:280px!important;
  max-height:280px!important;
  background:transparent!important;
  border:none!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}

#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:280px!important;
  min-height:280px!important;
  max-height:280px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  border:none!important;
  border-radius:18px!important;
  box-shadow:none!important;
}

#participantsGallery .participant-gallery-caption,
#participantsGallery .participant-gallery-caption *,
#participantsGallery span,
#participantsGallery b{
  display:none!important;
}

/* Solo recuerdos muestran texto */
#memorialGallery .memorial-tribute-text{
  width:100%!important;
  padding:8px 2px 0!important;
}
#memorialGallery .memorial-tribute-text b{
  font-size:13px!important;
  line-height:1.15!important;
}
#memorialGallery .memorial-tribute-text span{
  font-size:11px!important;
  line-height:1.25!important;
}

@media(max-width:980px){
  #participantsGallery > *,
  #memorialGallery > *{
    flex-basis:calc((100% - 32px)/3)!important;
    width:calc((100% - 32px)/3)!important;
    min-width:calc((100% - 32px)/3)!important;
    max-width:calc((100% - 32px)/3)!important;
  }
}
@media(max-width:760px){
  .hero{
    grid-template-columns:1fr!important;
  }
  .photo-card.cromo-showcase.clean-photo{
    width:180px!important;
    min-width:180px!important;
    max-width:180px!important;
    height:230px!important;
    min-height:230px!important;
    max-height:230px!important;
    justify-self:center!important;
  }
  #participantsGallery,
  #memorialGallery{
    gap:12px!important;
  }
  #participantsGallery > *,
  #memorialGallery > *{
    flex-basis:calc((100% - 12px)/2)!important;
    width:calc((100% - 12px)/2)!important;
    min-width:calc((100% - 12px)/2)!important;
    max-width:calc((100% - 12px)/2)!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:235px!important;
    min-height:235px!important;
    max-height:235px!important;
  }
}
@media(max-width:420px){
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }
}


/* ===== V25: cromos más grandes y flexibles, que entren los que puedan ===== */
.hero{
  grid-template-columns:minmax(0,1fr) 230px!important;
}
.photo-card.cromo-showcase.clean-photo{
  width:230px!important;
  min-width:230px!important;
  max-width:230px!important;
  height:295px!important;
  min-height:295px!important;
  max-height:295px!important;
}
.photo-card.cromo-showcase.clean-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

#participantsGallery,
#memorialGallery{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scroll-behavior:smooth!important;
  padding:8px 2px 14px!important;
  -webkit-overflow-scrolling:touch!important;
}

#participantsGallery > *,
#memorialGallery > *{
  flex:0 0 clamp(220px, 22vw, 280px)!important;
  width:clamp(220px, 22vw, 280px)!important;
  min-width:clamp(220px, 22vw, 280px)!important;
  max-width:clamp(220px, 22vw, 280px)!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:none!important;
  border-radius:0!important;
  scroll-snap-align:start!important;
}

#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:335px!important;
  min-height:335px!important;
  max-height:335px!important;
  border-radius:20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}

#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:335px!important;
  min-height:335px!important;
  max-height:335px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  border-radius:20px!important;
}

#participantsGallery .participant-gallery-caption,
#participantsGallery .participant-gallery-caption *,
#participantsGallery span,
#participantsGallery b{
  display:none!important;
}

@media(max-width:980px){
  #participantsGallery > *,
  #memorialGallery > *{
    flex-basis:clamp(210px, 28vw, 260px)!important;
    width:clamp(210px, 28vw, 260px)!important;
    min-width:clamp(210px, 28vw, 260px)!important;
    max-width:clamp(210px, 28vw, 260px)!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:310px!important;
    min-height:310px!important;
    max-height:310px!important;
  }
}

@media(max-width:760px){
  .photo-card.cromo-showcase.clean-photo{
    width:190px!important;
    min-width:190px!important;
    max-width:190px!important;
    height:245px!important;
    min-height:245px!important;
    max-height:245px!important;
  }
  #participantsGallery,
  #memorialGallery{
    gap:14px!important;
  }
  #participantsGallery > *,
  #memorialGallery > *{
    flex:0 0 58vw!important;
    width:58vw!important;
    min-width:58vw!important;
    max-width:58vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:245px!important;
    min-height:245px!important;
    max-height:245px!important;
  }
}
@media(max-width:430px){
  #participantsGallery > *,
  #memorialGallery > *{
    flex:0 0 64vw!important;
    width:64vw!important;
    min-width:64vw!important;
    max-width:64vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:228px!important;
    min-height:228px!important;
    max-height:228px!important;
  }
}


/* ===== V26: cromos realmente grandes y alineados ===== */
#participantsGallery,
#memorialGallery{
  display:flex!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  scroll-snap-type:x proximity!important;
  scroll-behavior:smooth!important;
  padding:8px 2px 14px!important;
  -webkit-overflow-scrolling:touch!important;
}
#participantsGallery > *,
#memorialGallery > *{
  flex:0 0 25%!important;
  width:25%!important;
  min-width:25%!important;
  max-width:25%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:none!important;
  border-radius:0!important;
  scroll-snap-align:start!important;
}
#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:380px!important;
  min-height:380px!important;
  max-height:380px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:transparent!important;
}
#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:380px!important;
  min-height:380px!important;
  max-height:380px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
}
#participantsGallery .participant-gallery-caption,
#participantsGallery .participant-gallery-caption *,
#participantsGallery span,
#participantsGallery b{display:none!important;}

@media(max-width:1200px){
  #participantsGallery > *, #memorialGallery > *{
    flex-basis:28%!important;width:28%!important;min-width:28%!important;max-width:28%!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:360px!important;min-height:360px!important;max-height:360px!important;
  }
}
@media(max-width:760px){
  #participantsGallery, #memorialGallery{gap:14px!important;}
  #participantsGallery > *, #memorialGallery > *{
    flex:0 0 64vw!important;width:64vw!important;min-width:64vw!important;max-width:64vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:255px!important;min-height:255px!important;max-height:255px!important;
  }
}
@media(max-width:430px){
  #participantsGallery > *, #memorialGallery > *{
    flex:0 0 70vw!important;width:70vw!important;min-width:70vw!important;max-width:70vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:235px!important;min-height:235px!important;max-height:235px!important;
  }
}


/* ===== V27 override final: cromos 40% y uno al lado del otro ===== */
#participantsGallery,
#memorialGallery{
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scroll-behavior:smooth!important;
  padding:10px 0 14px!important;
  -webkit-overflow-scrolling:touch!important;
}
#participantsGallery > *,
#memorialGallery > *{
  flex:0 0 auto!important;
  width:400px!important;
  min-width:400px!important;
  max-width:400px!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  scroll-snap-align:start!important;
}
#participantsGallery .participant-gallery-image,
#memorialGallery .memorial-tribute-image{
  width:100%!important;
  height:560px!important;
  min-height:560px!important;
  max-height:560px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
#participantsGallery img,
#memorialGallery img,
#participantsGallery .participant-gallery-image img,
#memorialGallery .memorial-tribute-image img{
  width:100%!important;
  height:560px!important;
  min-height:560px!important;
  max-height:560px!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
}
#participantsGallery .participant-gallery-caption,
#participantsGallery .participant-gallery-caption *,
#participantsGallery span,
#participantsGallery b{display:none!important;}

@media(max-width:1200px){
  #participantsGallery > *,#memorialGallery > *{
    width:340px!important;min-width:340px!important;max-width:340px!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:500px!important;min-height:500px!important;max-height:500px!important;
  }
}
@media(max-width:760px){
  #participantsGallery,#memorialGallery{gap:16px!important;}
  #participantsGallery > *,#memorialGallery > *{
    width:78vw!important;min-width:78vw!important;max-width:78vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:420px!important;min-height:420px!important;max-height:420px!important;
  }
}
@media(max-width:430px){
  #participantsGallery > *,#memorialGallery > *{
    width:84vw!important;min-width:84vw!important;max-width:84vw!important;
  }
  #participantsGallery .participant-gallery-image,
  #memorialGallery .memorial-tribute-image,
  #participantsGallery img,
  #memorialGallery img,
  #participantsGallery .participant-gallery-image img,
  #memorialGallery .memorial-tribute-image img{
    height:360px!important;min-height:360px!important;max-height:360px!important;
  }
}
