/* NEXO v0.9 · Catálogo deportivo y clasificaciones.
   Identidad original del periódico: marfil, azul noche, granate y acentos coral. */

.nc-hub,.nc-detail{margin:0 auto;padding:28px 0 64px;max-width:1220px;color:#172a47}
.nc-page-intro{padding:22px 0 24px;border-bottom:1px solid #e0e6ee;margin-bottom:22px}
.nc-overline{font-size:11px;letter-spacing:2px;font-weight:900;color:#a03d5a}
.nc-page-intro h1{font:800 clamp(39px,4.8vw,61px)/1.08 Georgia,serif;letter-spacing:-1.7px;margin:10px 0 10px;color:#142946}
.nc-page-intro p{font-size:16px;line-height:1.65;color:#6c7a8c;max-width:750px;margin:0}
.nc-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:3px 0 20px}
.nc-filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.nc-filter{background:#f1f4f8;border:1px solid #e3e8f0;border-radius:18px;padding:8px 13px;color:#4e6180;font-size:12px;font-weight:800;cursor:pointer}
.nc-filter.active{background:#183258;color:white;border-color:#183258}
.nc-filter:hover:not(.active){background:#e7edf5;color:#213955}
.nc-search{display:flex;align-items:center;gap:8px;background:white;border:1px solid #dfe5ed;padding:8px 12px;border-radius:11px;color:#77869c}
.nc-search span{font-size:24px;line-height:1}.nc-search input{min-width:190px;border:0;outline:0;background:transparent;font:500 13px inherit;color:#1a2c46}
.nc-search input::placeholder{color:#8290a4}
.nc-group{margin:10px 0 29px;border-radius:15px;overflow:hidden;border:1px solid #dfe6ef;background:white;box-shadow:0 5px 20px rgba(17,33,56,.04)}
.nc-group-head{display:flex;gap:14px;align-items:center;background:#f1f4f8;padding:19px 21px;border-bottom:1px solid #e0e5ed}
.nc-group-flag{display:grid;place-items:center;font-size:29px;background:#e7edf4;width:51px;height:51px;border-radius:13px;flex-shrink:0}
.nc-group-head>div{flex:1}.nc-group-head h2{font:800 24px Georgia,serif;margin:0 0 4px;color:#243b5b}
.nc-group-head p{font-size:12px;color:#708198;margin:0;line-height:1.4}
.nc-group-count{font-size:12px;font-weight:850;border:1px solid #d5dfe8;border-radius:999px;background:white;padding:5px 10px;color:#4c627b}
.nc-list{display:grid;grid-template-columns:1fr 1fr;column-gap:0}
.nc-comp-row{display:flex;min-width:0;align-items:center;border-bottom:1px solid #edf0f5;transition:background .15s ease}
.nc-comp-row:nth-child(odd){border-right:1px solid #edf0f5}
.nc-comp-row:hover{background:#f8fafc}
.nc-comp-row:last-child{border-bottom:0}
.nc-comp-main{flex:1;min-width:0;display:flex;gap:15px;align-items:center;padding:14px 5px 14px 18px;text-decoration:none;color:#182a48}
.nc-comp-main:hover .nc-comp-info strong{text-decoration:underline;text-decoration-color:#ba5270;text-underline-offset:3px}
.nc-comp-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.nc-comp-info strong{font-size:14px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nc-comp-info small{font-size:11px;font-weight:500;color:#7b8ca2}
.nc-enter{font-size:19px;font-weight:700;color:#a6b1c1}
.nc-pin{background:transparent;border:0;cursor:pointer;color:#a3afbd;font-size:22px;line-height:1;padding:12px 18px}
.nc-pin:hover,.nc-pin.is-pinned{color:#ae365c}
.nc-logo{position:relative;display:grid;place-items:center;overflow:hidden;width:54px;height:54px;flex-shrink:0;border-radius:12px;background:#eef3f9;border:1px solid #e4eaf1}
.nc-logo--eu{background:#1c3158;border-color:#1c3158}
.nc-logo--esp{background:#f6f2f2}
.nc-logo--int{background:#f0f4f7}
.nc-logo--sel{background:#e9f1f6}
.nc-logo img{position:absolute;inset:0;margin:auto;width:76%;height:76%;object-fit:contain;z-index:1}
.nc-logo--eu img{filter:brightness(0) invert(1)}
.nc-logo-glyph{font-weight:900;font-family:Georgia,serif;font-size:19px;color:#9b3258}
.nc-logo--eu .nc-logo-glyph{color:#ecf3ff}
.nc-logo--small{width:38px;height:38px;border-radius:9px}
.nc-logo--small .nc-logo-glyph{font-size:13px}
.nc-caption,.nc-trust-note{font-size:11px;line-height:1.6;color:#76869a;margin-top:17px}
.nc-notfound{padding:35px 0 70px}
.nc-crumb{display:flex;gap:10px;align-items:center;font-size:12px;color:#9aa7b7;margin:0 0 18px}
.nc-crumb a{color:#5b6f89;text-decoration:none;font-weight:700}
.nc-crumb a:hover{color:#a03d5a}
.nc-detail-hero{position:relative;display:flex;align-items:center;gap:22px;min-height:188px;background:linear-gradient(115deg,#112440,#1d3657 62%,#53374a);border-radius:17px;color:white;padding:27px 31px;overflow:hidden}
.nc-detail-hero:after{content:"";pointer-events:none;position:absolute;width:330px;height:330px;border:1px solid #ffffff12;border-radius:50%;right:-105px;top:-110px}
.nc-detail-hero--esp{background:linear-gradient(115deg,#1d2f4c 0%,#46445a 62%,#8e3857 100%)}
.nc-detail-hero--eu{background:linear-gradient(115deg,#071634,#112b5b 70%,#304d8d 100%)}
.nc-detail-hero--int{background:linear-gradient(115deg,#123246,#1d485a 65%,#386d66)}
.nc-detail-hero--sel{background:linear-gradient(115deg,#172a42,#335778 80%)}
.nc-detail-hero .nc-overline{color:#c1d5ed}
.nc-detail-hero-logo{display:grid;place-items:center;min-width:95px;min-height:95px;background:#ffffff14;border:1px solid #ffffff2c;border-radius:20px}
.nc-detail-hero-logo .nc-logo{width:78px;height:78px;border:0;background:transparent}
.nc-detail-hero-logo .nc-logo--eu img{filter:brightness(0) invert(1)}
.nc-detail-hero-logo .nc-logo-glyph{color:#f3eef3}
.nc-detail-hero>div:nth-child(2){flex:1;min-width:0;z-index:1}
.nc-detail-hero h1{font:800 clamp(28px,3.5vw,45px)/1.09 Georgia,serif;letter-spacing:-.65px;margin:8px 0}
.nc-detail-hero p{font-size:13px;line-height:1.55;max-width:610px;color:#d6dfeb;margin:7px 0}
.nc-official-link{z-index:1;display:inline-flex;align-self:flex-end;white-space:nowrap;font-size:12px;font-weight:800;text-decoration:none;color:#e9eef8;background:#ffffff20;border:1px solid #ffffff36;border-radius:8px;padding:11px 12px}
.nc-official-link:hover{background:#ffffff35}
.nc-detail-tabs{display:flex;align-items:center;gap:22px;overflow-x:auto;border-bottom:1px solid #dce3ec;margin:10px 0 24px;scrollbar-width:thin}
.nc-detail-tabs button{flex:none;background:none;border:0;border-bottom:3px solid transparent;margin:0;padding:18px 3px 14px;color:#8793a6;font-size:14px;font-weight:800;cursor:pointer}
.nc-detail-tabs button.active{border-color:#a52e55;color:#243850}
.nc-detail-tabs button:hover{color:#a52e55}
.nc-detail-dynamic{min-height:300px}
.nc-group-standings{font:800 21px Georgia,serif;color:#203653;margin:17px 0}
.nc-table-scroll{overflow-x:auto;border:1px solid #e1e7ef;border-radius:11px;background:white;box-shadow:0 4px 16px #24364e08}
.nc-table{width:100%;border-collapse:collapse;table-layout:auto;min-width:575px}
.nc-table th{font-size:11px;letter-spacing:.25px;font-weight:800;color:#8390a3;background:#f3f6f9}
.nc-table td,.nc-table th{padding:13px 11px;white-space:nowrap;text-align:center;border-bottom:1px solid #edf0f4}
.nc-table tbody tr:last-child td{border-bottom:0}
.nc-table tr:hover td{background:#f7f9fb}
.nc-table .nc-team{text-align:left;width:48%;min-width:150px}
.nc-table td.nc-team{display:table-cell;font-size:12px;font-weight:750;text-overflow:ellipsis;overflow:hidden;max-width:280px}
.nc-table .nc-team .crest-new{display:inline-grid;vertical-align:middle;width:31px;height:31px;min-width:31px;margin-right:10px}
.nc-table .nc-team span:last-child{vertical-align:middle}
.nc-table .nc-rank{color:#39465a;font-weight:900;font-size:12px}
.nc-table td{color:#66778d;font-size:12px;font-variant-numeric:tabular-nums}
.nc-table .nc-points{color:#162e4d;font-weight:900;font-size:14px}
.nc-table-qualification .nc-rank{box-shadow:inset 3px 0 #3d896e}
.nc-table-danger .nc-rank{box-shadow:inset 3px 0 #cb5d65}
.nc-attribution{font-size:11px;line-height:1.7;color:#8993a3;margin:12px 0 20px}
.nc-attribution a{font-weight:800;color:#905374}
.nc-empty{background:#f6f8fb;border:1px dashed #cbd5e1;border-radius:12px;padding:18px;text-align:center;color:#60728a;font-size:13px}
.nc-empty strong{display:block;color:#283c57;font-size:14px;margin-bottom:6px}
.nc-empty p{line-height:1.65;margin:5px auto 13px;max-width:490px}
.nc-empty a{color:#943555;text-decoration:underline;font-weight:850}
.nc-empty-wide{padding:40px 20px;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.nc-empty-wide>span{font-size:35px;color:#a55370}.nc-empty-wide h3{font:800 26px Georgia,serif;color:#1c3453;margin:7px 0}
.nc-loading{display:flex;align-items:center;justify-content:center;gap:10px;background:#f5f8fb;border-radius:10px;padding:32px;color:#77849a;font-size:13px}
.nc-spinner{width:16px;height:16px;border:2px solid #d5dfea;border-top-color:#9d3959;border-radius:50%;animation:nexo-spinner .8s linear infinite}
@keyframes nexo-spinner{to{transform:rotate(360deg)}}
.nc-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:17px 0 16px}
.nc-stat-card{display:flex;flex-direction:column;background:white;border:1px solid #e2e7ef;border-radius:13px;padding:18px 16px;gap:9px}
.nc-stat-card span{font-size:11px;color:#6a7c93;line-height:1.3}.nc-stat-card strong{font:800 35px Georgia,serif;color:#af375e}
.nc-stat-card small{font-size:13px;color:#233752;font-weight:800}
.nc-front-table{margin:24px 0 30px;border:1px solid #dce3ed;border-radius:13px;background:white;padding:18px;box-shadow:0 7px 21px #101e310d}
.nc-front-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px}
.nc-front-head h2{font:800 clamp(23px,2.5vw,32px) Georgia,serif;color:#1b2e4c;margin:7px 0}
.nc-front-head p{font-size:12px;color:#76859a;margin:3px 0}
.nc-front-browse{display:inline-flex;align-items:center;text-decoration:none;color:#9e3659;font-size:12px;font-weight:850;white-space:nowrap}
.nc-mini-title{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f3f5f9;padding:10px 14px;border-radius:8px 8px 0 0}
.nc-mini-title span{font-size:12px;color:#324965;font-weight:850}.nc-mini-title a{font-size:11px;text-decoration:none;color:#a5365c;font-weight:800}
.nc-home-standings .nc-table-scroll{border-radius:0 0 8px 8px;border-color:#e7eaf0}
.nc-home-standings .nc-table-compact{min-width:320px}
.nc-home-standings .nc-table-compact td,.nc-home-standings .nc-table-compact th{padding:8px 9px}
.nc-home-standings .nc-table-compact .nc-team .crest-new{width:29px;height:29px;min-width:29px;margin-right:8px}
.nc-home-standings .nc-table-compact .nc-team{width:auto}
.nc-home-standings .nc-table-compact td.nc-team{max-width:450px}
.nc-home-standings .nc-attribution{margin:10px 4px 0}
@media(max-width:930px){
 .nc-list{grid-template-columns:1fr}.nc-comp-row:nth-child(odd){border-right:0}
 .nc-toolbar{flex-wrap:wrap}.nc-search{flex:1;min-width:200px}.nc-search input{width:100%}
 .nc-stats-grid{grid-template-columns:repeat(2,1fr)}
 .nc-official-link{align-self:center}
}
@media(max-width:650px){
 .nc-hub,.nc-detail{padding-top:18px;padding-bottom:43px}
 .nc-page-intro{padding:12px 0 19px}.nc-page-intro h1{font-size:38px;letter-spacing:-.8px}.nc-page-intro p{font-size:14px}
 .nc-filter{font-size:11px;padding:7px 10px}.nc-toolbar{gap:11px}.nc-search{width:100%}
 .nc-group-head{padding:13px 14px}.nc-group-head h2{font-size:22px}.nc-group-head p{font-size:11px}
 .nc-group-flag{width:44px;height:44px;font-size:23px}
 .nc-comp-main{gap:11px;padding:12px 4px 12px 12px}
 .nc-comp-info strong{font-size:13px}.nc-comp-info small{font-size:10px}
 .nc-logo{width:46px;height:46px;border-radius:10px}
 .nc-pin{padding:12px 13px}
 .nc-detail-hero{padding:19px 18px;gap:12px;min-height:140px;flex-wrap:wrap}
 .nc-detail-hero-logo{min-width:69px;min-height:69px;border-radius:12px}
 .nc-detail-hero-logo .nc-logo{width:59px;height:59px}
 .nc-detail-hero h1{font-size:30px}.nc-detail-hero p{font-size:12px}
 .nc-official-link{margin-left:auto;padding:8px 11px;font-size:11px}
 .nc-detail-tabs{gap:18px;margin:8px 0 18px}
 .nc-detail-tabs button{font-size:12px;padding:13px 1px 12px}
 .nc-table{min-width:520px}.nc-table td,.nc-table th{padding:10px 7px}
 .nc-home-standings .nc-table-compact{min-width:280px}
 .nc-front-table{padding:12px;margin:18px 0 23px}
 .nc-front-head h2{font-size:23px}.nc-front-head p{font-size:11px}
 .nc-front-browse{font-size:11px}.nc-stats-grid{gap:8px}
 .nc-stat-card{padding:13px}.nc-stat-card strong{font-size:29px}
}

/* v0.10 · No emoji flags, no letter/logo overlap, team crests from ESPN */
.nc-group-flag{background:#e7edf4;border:1px solid #dce5ed;border-radius:10px;width:52px;height:52px;display:grid;place-items:center;flex:0 0 52px}
.nc-group-flag .nc-flag-svg{display:block;width:44px;height:34px}
.nc-flag-svg{width:100%;height:100%;display:block;object-fit:contain}
.nc-logo{position:relative;isolation:isolate;background:#f4f7fa;border:1px solid #dce4ee}
.nc-logo--eu{background:#f4f7fa;border-color:#dce4ee}
.nc-logo--eu .nc-logo-glyph{color:#143266}
.nc-logo--eu img{filter:none}
.nc-logo-fallback{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;z-index:1}
.nc-logo-fallback .nc-flag-svg{width:39px;height:31px}
.nc-logo-fallback .nc-logo-glyph{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(145deg,#e6edf5,#f8faff);border:1px solid #d3dfe9;color:#2b4e70;font:850 14px Inter,system-ui,sans-serif;letter-spacing:-.4px}
.nc-logo img{position:absolute;inset:0;z-index:2;width:78%;height:78%;display:block;object-fit:contain}
.nc-detail-hero-logo .nc-logo{background:#f4f7fa}
.nc-detail-hero-logo .nc-logo--eu img{filter:none}
.nc-detail-hero .nc-overline .nc-flag-svg{display:inline-block;width:24px;height:19px;vertical-align:middle;margin-right:5px}
.nc-team-crest{display:inline-grid;position:relative;place-items:center;width:31px;height:31px;min-width:31px;margin-right:10px;vertical-align:middle;background:#eef2f8;border-radius:50%;overflow:hidden}
.nc-team-crest-fallback{font:850 9px Inter,system-ui,sans-serif;color:#3f5e7d}
.nc-team-crest img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#f9fbfd;padding:1px}
.nc-table .nc-team .nc-team-crest{vertical-align:middle;margin-right:9px}
.nc-group-head .nc-group-flag{line-height:0}
@media(max-width:650px){.nc-group-flag{width:44px;height:44px;flex-basis:44px}.nc-group-flag .nc-flag-svg{width:37px;height:29px}.nc-logo-fallback .nc-flag-svg{width:34px;height:27px}}

/* v0.11 · Escudos sin recortes circulares */
.nc-team-crest{border-radius:7px;overflow:visible;background:transparent;border:0}
.nc-team-crest img{background:transparent;border-radius:0;object-fit:contain;padding:1px}
.nc-team-crest-fallback{display:grid;place-items:center;width:100%;height:100%;background:#f0f3f7;border:1px solid #e2e7ed;border-radius:7px}
