/* Foresportia — World Cup 2026 favorites page.
   File: /css/pages/world_cup_favorites.css
*/

.wc-fav-hero .fs-hero-card h1{max-width:980px;margin-left:auto;margin-right:auto}
.wc-fav-page{--fav-surface:#fff;--fav-soft:#f4f7fb;--fav-border:rgba(15,23,42,.10);--fav-border-strong:rgba(15,23,42,.18);--fav-text:var(--text,#0f172a);--fav-muted:var(--muted,#64748b);--fav-blue:#2563eb;--fav-blue-dark:#1e3a8a}
[data-theme="dark"] .wc-fav-page{--fav-surface:#14213d;--fav-soft:#1b2c4d;--fav-border:rgba(148,163,184,.16);--fav-border-strong:rgba(148,163,184,.30);--fav-text:#e8eefb;--fav-muted:#a8b8d0;--fav-blue:#60a5fa;--fav-blue-dark:#93c5fd}
.wc-fav-section .tp-container{min-width:0}
.wc-fav-kpi-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.wc-fav-kpi{min-width:0}
.wc-fav-kpi-label,.wc-fav-eyebrow{display:block;color:var(--fav-muted);font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.wc-fav-kpi strong{display:block;margin-top:4px;color:var(--fav-text);font-size:clamp(1.3rem,3vw,2.1rem);line-height:1.05;overflow-wrap:anywhere}
.wc-fav-kpi small{display:block;margin-top:4px;color:var(--fav-muted);font-weight:600}
.wc-fav-top-panel,.wc-fav-ranking-panel,.wc-fav-guide,.wc-fav-related{min-width:0}
.wc-fav-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.wc-fav-panel-head--stack{align-items:stretch}
.wc-fav-panel-head h2{margin:4px 0 0;color:var(--fav-text);font-size:clamp(1.25rem,2.6vw,1.8rem);line-height:1.18}
.wc-fav-panel-lead{max-width:760px;margin:8px 0 0;color:var(--fav-muted);line-height:1.55}
.wc-fav-soft-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid rgba(37,99,235,.18);border-radius:999px;background:rgba(37,99,235,.08);color:var(--fav-blue-dark);font-size:.9rem;font-weight:800;text-decoration:none;white-space:nowrap}
.wc-fav-soft-link:hover,.wc-fav-soft-link:focus-visible{border-color:rgba(37,99,235,.34);background:rgba(37,99,235,.13)}
.wc-fav-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.wc-fav-podium-card{position:relative;min-width:0;padding:16px;border:1px solid var(--fav-border);border-radius:18px;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 34%),var(--fav-soft)}
.wc-fav-podium-card .wc-fav-rank{margin-bottom:12px}
.wc-fav-podium-pct{display:block;margin-top:14px;color:var(--fav-text);font-size:clamp(1.45rem,4vw,2.35rem);line-height:1;font-variant-numeric:tabular-nums}
.wc-fav-podium-caption{display:block;margin-top:4px;color:var(--fav-muted);font-size:.9rem;font-weight:700}
.wc-fav-tools{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(180px,.7fr);gap:10px;align-items:end}
.wc-fav-search,.wc-fav-select{display:grid;gap:6px;min-width:0}
.wc-fav-search span,.wc-fav-select span{color:var(--fav-muted);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.wc-fav-search input,.wc-fav-select select{width:100%;min-height:42px;border:1px solid var(--fav-border);border-radius:12px;background:var(--fav-soft);color:var(--fav-text);font:inherit;font-weight:700;padding:9px 12px;outline:none}
.wc-fav-search input:focus,.wc-fav-select select:focus{border-color:rgba(37,99,235,.55);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.wc-fav-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.wc-fav-filter{min-height:34px;padding:7px 12px;border:1px solid var(--fav-border);border-radius:999px;background:var(--fav-soft);color:var(--fav-muted);font:inherit;font-size:.86rem;font-weight:800;cursor:pointer}
.wc-fav-filter.is-active{border-color:rgba(37,99,235,.30);background:rgba(37,99,235,.10);color:var(--fav-blue-dark)}
.wc-fav-count{margin:10px 0 12px;color:var(--fav-muted);font-size:.92rem;font-weight:700}
.wc-fav-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--fav-border);border-radius:16px;background:var(--fav-surface)}
.wc-fav-table{width:100%;min-width:920px;border-collapse:collapse;table-layout:auto}
.wc-fav-table caption{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}
.wc-fav-table th,.wc-fav-table td{padding:11px 10px;border-bottom:1px solid var(--fav-border);color:var(--fav-text);font-size:.92rem;line-height:1.25;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.wc-fav-table tr:last-child th,.wc-fav-table tr:last-child td{border-bottom:0}
.wc-fav-table thead th{position:sticky;top:0;z-index:1;background:var(--fav-soft);color:var(--fav-muted);font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.wc-fav-table th:nth-child(2),.wc-fav-table td:nth-child(2){text-align:left;white-space:normal;min-width:220px}
.wc-fav-table thead button{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}
.wc-fav-table thead button::after{content:"↕";opacity:.55;font-size:.72rem}
.wc-fav-table thead button.is-active::after{content:"↓";opacity:1}
.wc-fav-table tbody tr:hover{background:rgba(37,99,235,.045)}
.wc-fav-rank{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:26px;padding:3px 8px;border-radius:999px;background:rgba(37,99,235,.09);color:var(--fav-blue-dark);font-size:.82rem;font-weight:900}
.wc-fav-team{display:inline-flex;align-items:center;gap:9px;min-width:0;max-width:100%}
.wc-fav-team>span{display:grid;gap:2px;min-width:0}
.wc-fav-team strong{color:var(--fav-text);font-weight:900;overflow-wrap:anywhere}
.wc-fav-team small{color:var(--fav-muted);font-size:.78rem;font-weight:700}
.wc-fav-flag{flex:0 0 auto;width:40px;height:28px;border-radius:4px;object-fit:cover;background:var(--fav-soft);box-shadow:0 0 0 1px var(--fav-border)}
.wc-fav-bucket{display:inline-flex;align-items:center;justify-content:center;padding:4px 9px;border:1px solid var(--fav-border);border-radius:999px;background:var(--fav-soft);color:var(--fav-muted);font-size:.76rem;font-weight:900;white-space:nowrap}
.wc-fav-bucket--top_favorite{border-color:rgba(22,163,74,.22);background:rgba(22,163,74,.12);color:#15803d}
.wc-fav-bucket--contender{border-color:rgba(37,99,235,.22);background:rgba(37,99,235,.11);color:#1d4ed8}
.wc-fav-bucket--dark_horse{border-color:rgba(217,119,6,.24);background:rgba(245,158,11,.13);color:#b45309}
.wc-fav-bucket--outsider{border-color:rgba(100,116,139,.25);background:rgba(100,116,139,.10);color:#475569}
.wc-fav-bucket--longshot{border-color:rgba(148,163,184,.24);background:rgba(148,163,184,.10);color:#64748b}
[data-theme="dark"] .wc-fav-bucket--top_favorite{color:#86efac}
[data-theme="dark"] .wc-fav-bucket--contender{color:#93c5fd}
[data-theme="dark"] .wc-fav-bucket--dark_horse{color:#fcd34d}
[data-theme="dark"] .wc-fav-bucket--outsider,[data-theme="dark"] .wc-fav-bucket--longshot{color:#cbd5e1}
.wc-fav-mobile-list{display:none}
.wc-fav-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.wc-fav-guide-grid>div{min-width:0;padding:14px;border:1px solid var(--fav-border);border-radius:16px;background:var(--fav-soft)}
.wc-fav-guide-grid h3{margin:0 0 6px;color:var(--fav-text);font-size:1rem}
.wc-fav-guide-grid p,.wc-fav-disclaimer{margin:0;color:var(--fav-muted);line-height:1.55}
.wc-fav-disclaimer{margin-top:14px;padding:12px 14px;border-left:3px solid var(--fav-blue);border-radius:10px;background:rgba(37,99,235,.07);color:var(--fav-text)}
.wc-fav-ad-section{max-width:1100px;margin:4px auto 20px;padding:0 16px}
.wc-fav-ad-section--mid{margin-top:20px}
.wc-fav-ad-shell{min-height:92px}
.wc-fav-ad-slot{min-height:90px}
.wc-fav-error{margin:10px 0 0;color:var(--fav-muted);font-size:.92rem;font-weight:700}
@media (max-width:900px){
  .wc-fav-kpi-row,.wc-fav-podium,.wc-fav-guide-grid{grid-template-columns:1fr}
  .wc-fav-panel-head,.wc-fav-panel-head--stack{flex-direction:column}
  .wc-fav-soft-link{width:fit-content}
  .wc-fav-tools{grid-template-columns:1fr;width:100%}
  .wc-fav-table-wrap{display:none}
  .wc-fav-mobile-list{display:grid;gap:10px}
  .wc-fav-mobile-card{padding:13px;border:1px solid var(--fav-border);border-radius:16px;background:var(--fav-surface);box-shadow:0 1px 2px rgba(15,23,42,.05)}
  .wc-fav-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
  .wc-fav-mobile-head .wc-fav-team{flex:1 1 auto;justify-content:flex-end}
  .wc-fav-mobile-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
  .wc-fav-mobile-main div{padding:8px;border-radius:12px;background:var(--fav-soft);text-align:center}
  .wc-fav-mobile-main span{display:block;color:var(--fav-muted);font-size:.72rem;font-weight:900;text-transform:uppercase}
  .wc-fav-mobile-main strong{display:block;margin-top:3px;color:var(--fav-text);font-size:.95rem;font-variant-numeric:tabular-nums}
}
@media (max-width:520px){
  .wc-fav-mobile-head{align-items:flex-start}
  .wc-fav-mobile-head .wc-fav-team{justify-content:flex-start}
  .wc-fav-mobile-main{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wc-fav-filter{flex:1 1 auto}
}
