/* Mystery Card */
.green{--accent:#7ee29a}
.game-nav.green .nav-number{background:#7ee29a;color:#0d2016}
.game-nav.green.active{border-color:#7ee29a}
.home-card.green{background:radial-gradient(ellipse at 80% 0,#1f5a3a2a,transparent 70%),var(--surface);border-color:#2f5140}
.home-card.green .card-bottom>span,.home-card.green .card-status{color:#7ee29a}
.mini-card{width:96px;height:132px;margin:auto;display:grid;grid-template-rows:auto 1fr auto;padding:10px 8px;border-radius:14px 14px 22px 22px;background:linear-gradient(160deg,#f7e39a,#d2a83c 55%,#9e7a22);box-shadow:0 10px 30px #d2a83c33;color:#3b2a07;transform:rotate(-6deg)}
.mini-card b{font:800 26px/1 Arial,sans-serif}.mini-card span{display:grid;place-items:center;font:800 44px Georgia,serif;opacity:.55}.mini-card i{font:700 9px 'Courier New',monospace;font-style:normal;text-align:center;letter-spacing:1px}

/* Page layout: card beside the clue list; the result spans the board below */
.card-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:32px;align-items:start}
.card-stack{width:100%;max-width:360px;margin:0 auto;text-align:center;filter:drop-shadow(0 18px 28px #0009)}
.card-edition-tag{display:inline-block;margin:0 auto 12px;padding:6px 14px;border-radius:999px;background:#ffffff14;border:1px solid #ffffff22;font:800 15px/1 Arial,Helvetica,sans-serif;letter-spacing:1.5px;color:#fff}
.card-side{min-width:0}
.clue-title{margin:0 0 10px;font:700 12px 'Courier New',monospace;letter-spacing:2px;color:var(--muted);text-transform:uppercase}
.clue-ladder{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:5px}
.clue-ladder li{display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;min-height:36px;padding:6px 12px;border:1px solid var(--line);border-radius:9px;background:#111a24;color:#6b7a8d}
.clue-n{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#1f2a37;font:700 11px Arial,sans-serif;color:#8c9aab}
.clue-label{font-size:13px}
.clue-ladder strong{font-size:15px;display:flex;align-items:center;gap:6px;white-space:nowrap}
.clue-ladder strong img{display:block;border-radius:2px;box-shadow:0 1px 2px #0006}
.clue-ladder li.is-open{border-color:#2f5140;background:#15241d;color:var(--ink)}
.clue-ladder li.is-open .clue-n{background:#7ee29a;color:#0d2016}
.clue-ladder li.is-next{border-style:dashed;border-color:#f5c66577;color:#f5c665}
.clue-ladder li.is-next strong{font:700 10px 'Courier New',monospace;letter-spacing:1px;text-transform:uppercase}
.clue-ladder li.is-fresh{animation:clue-in .6s cubic-bezier(.3,1.4,.5,1)}
@keyframes clue-in{from{transform:scale(.96);background:#2f5140}to{transform:none}}
.card-side .misses .hit{color:#7ee29a;font-weight:700}
.card-result{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.card-board .result h3{margin-top:0}

/* ---- The card (our own drawings of each year's gold card; flags are public domain, clubs are text badges) ---- */
.fut-card{position:relative;width:100%;aspect-ratio:1/1.4;display:grid;grid-template-columns:30% 1fr;column-gap:3%;padding:8% 8% 9%;color:#3b2a0c;text-align:left;container-type:inline-size;overflow:hidden;isolation:isolate}
.fut-card>*{position:relative;z-index:1}
.fut-rating{grid-area:rating;display:flex;flex-direction:column;align-items:center;line-height:1}
.fut-rating b{font:700 16cqw/.9 Arial,Helvetica,sans-serif;letter-spacing:-.5cqw}
.fut-rating>span{font:700 6cqw/1 Arial,sans-serif;margin-top:1cqw}
.fut-rating .is-hidden{opacity:.4}
.fut-badges{grid-area:badges;display:flex;flex-direction:column;align-items:center;gap:2cqw;margin-top:2cqw}
.fut-badges i{font-style:normal;display:grid;place-items:center;min-height:7cqw}
.fut-flag img{width:11cqw;height:auto;display:block;box-shadow:0 .3cqw .8cqw #0005}
.fut-club-badge{display:block;max-width:24cqw;padding:.8cqw 1.4cqw;border-radius:1cqw;background:#0000001c;font:700 3.2cqw/1.15 Arial,sans-serif;text-align:center;overflow-wrap:anywhere}
.fut-unknown{display:grid;place-items:center;width:9cqw;height:7cqw;border:.4cqw dashed currentColor;border-radius:1cqw;font:700 4cqw Arial,sans-serif;opacity:.4}
.fut-face{grid-area:face;display:grid;place-items:end center;min-height:0}
.fut-face .player-photo{width:62cqw;height:60cqw;border:0;border-radius:0;box-shadow:none;background:transparent;-webkit-mask:radial-gradient(ellipse 50% 52% at 50% 46%,#000 62%,transparent 100%);mask:radial-gradient(ellipse 50% 52% at 50% 46%,#000 62%,transparent 100%)}
.fut-face .photo-fallback{font:700 14cqw Arial,sans-serif;color:inherit;opacity:.35}
.fut-silhouette{width:40cqw;height:46cqw;background:currentColor;opacity:.25;-webkit-mask:radial-gradient(circle at 50% 30%,#000 0 26%,transparent 27%),radial-gradient(ellipse at 50% 102%,#000 0 58%,transparent 59%);mask:radial-gradient(circle at 50% 30%,#000 0 26%,transparent 27%),radial-gradient(ellipse at 50% 102%,#000 0 58%,transparent 59%)}
.fut-name{grid-area:name;font:700 6.8cqw/1.1 Arial,sans-serif;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fut-stats{grid-area:stats}
.card-stat b{font:700 7cqw/1 Arial,sans-serif}
.card-stat span{font:700 4.8cqw/1 Arial,sans-serif;opacity:.85}
.card-stat:not(.is-open) b{opacity:.35}
.card-stat.is-fresh b,.fut-rating .is-fresh,.fut-flag.is-fresh,.fut-club.is-fresh{animation:card-flip .6s cubic-bezier(.3,1.4,.5,1)}
@keyframes card-flip{from{transform:rotateX(90deg);opacity:0}to{transform:none;opacity:1}}
.fut-mark,.fut-bgflag{display:none}

/* Layouts */
.lay-top{grid-template-rows:auto auto 1fr auto;grid-template-areas:"rating name" "badges face" ". face" "stats stats"}
.lay-top .fut-name{text-align:right;align-self:start;padding-top:1.4cqw}
.lay-banner{grid-template-rows:auto auto auto 1fr auto;grid-template-areas:"name name" "rating face" "badges face" ". face" "stats stats";padding-top:5%}
.lay-banner .fut-name{text-align:center;padding:1.4cqw 0 2cqw}
.lay-below{grid-template-rows:auto auto 1fr auto auto;grid-template-areas:"rating face" "badges face" ". face" "name name" "stats stats";padding:8% 9% 16%}
.lay-below .fut-name{text-align:center;padding:1.4cqw 0;border-top:.35cqw solid #0000002a;border-bottom:.35cqw solid #0000002a;margin:0 4cqw 1.6cqw}
.lay-fc{grid-template-rows:auto 1fr auto auto auto;grid-template-areas:"rating face" ". face" "name name" "stats stats" "badges badges";padding:9% 9% 15%}
.lay-fc .fut-name{text-align:center;text-transform:none;font-size:7.8cqw;padding:1cqw 0 1.4cqw}
.lay-fc .fut-badges{flex-direction:row;justify-content:center;gap:5cqw;margin-top:2.4cqw}
.lay-fc .fut-flag img{width:9cqw}
.lay-fc .fut-face{place-items:end end}
.lay-fc .fut-face .player-photo{width:74cqw;height:70cqw;margin-right:-6cqw}
/* Stats: two columns (92 PAC · 93 DRI) to FIFA 23, one row of six from EA SPORTS FC 24 */
.lay-top .fut-stats,.lay-banner .fut-stats,.lay-below .fut-stats,.ed-classic .fut-stats{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,auto);grid-auto-flow:column;gap:.6cqw 7cqw;padding:2cqw 5cqw}
.lay-top .card-stat,.lay-banner .card-stat,.lay-below .card-stat,.ed-classic .card-stat{display:flex;align-items:baseline;gap:1.6cqw}
.lay-top .card-stat b,.lay-banner .card-stat b,.lay-below .card-stat b,.ed-classic .card-stat b{min-width:8.6cqw;text-align:right}
.lay-below .fut-stats{position:relative;padding:0 6cqw}
.lay-below .fut-stats:before{content:'';position:absolute;top:10%;bottom:10%;left:50%;border-left:.35cqw solid #0000002a}
.lay-fc .fut-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:.6cqw}
.lay-fc .card-stat{display:flex;flex-direction:column;align-items:center;gap:1cqw}
.lay-fc .card-stat span{font-size:4.2cqw;order:-1}
.lay-fc .card-stat b{font-size:7cqw}

/* FIFA 05-09: before Ultimate Team, a plain player card */
.ed-classic{grid-template-rows:auto auto 1fr auto auto;grid-template-areas:"rating face" "badges face" ". face" "name name" "stats stats";border-radius:3cqw;background:linear-gradient(170deg,#f3e2a4,#d9b95d 45%,#b28a2e);box-shadow:inset 0 0 0 1.4cqw #fff5}
.ed-classic .fut-name{text-align:center;padding:1.4cqw 0}

/* FIFA 10: gold frame, the national flag filling the card behind the player */
.ed-fifa10{border-radius:.8cqw;background:linear-gradient(180deg,#d9c07a,#b99546);box-shadow:inset 0 0 0 2cqw #caa651,inset 0 0 0 2.6cqw #fff2b0;padding:7% 7% 6%}
.ed-fifa10 .fut-bgflag{display:block;position:absolute;inset:2.6cqw 2.6cqw 30% 2.6cqw;background-size:cover;background-position:center;opacity:.85;z-index:0;-webkit-mask:linear-gradient(180deg,#000 60%,transparent);mask:linear-gradient(180deg,#000 60%,transparent)}
.ed-fifa10 .fut-rating b,.ed-fifa10 .fut-name,.ed-fifa10 .fut-rating>span{color:#fff;text-shadow:0 .4cqw 1cqw #000c}
.ed-fifa10 .fut-rating{background:#fff3;border-radius:1cqw;padding:1cqw}
.ed-fifa10 .fut-rating b,.ed-fifa10 .fut-rating>span{color:#1d1606;text-shadow:none}
.ed-fifa10 .fut-name{color:#1d1606;text-shadow:none;background:#ffffffb8;padding:1cqw 2cqw;border-radius:.8cqw;justify-self:end}
.ed-fifa10 .fut-stats{background:linear-gradient(180deg,#d8bb63,#c4a24a);margin:0 -2cqw -2cqw;border-top:.5cqw solid #fff2b0}
/* FIFA 11: muted beige and silver */
.ed-fifa11{border-radius:.8cqw;background:linear-gradient(170deg,#e6dfcc,#cbbf9f 55%,#a79a79);box-shadow:inset 0 0 0 1.4cqw #b3a684,inset 0 0 0 1.9cqw #f3ecd6;color:#57503c;padding:7% 7% 6%}
.ed-fifa11 .fut-stats{background:#0000000f;border-radius:.8cqw;color:#6d6552}
/* FIFA 12: thick yellow frame around a silver panel, stats on the frame colour */
.ed-fifa12{border-radius:1cqw;background:linear-gradient(180deg,#f5f3ec,#d8d5ca 60%,#bfbbae);box-shadow:inset 0 0 0 3cqw #f2c417,inset 0 0 0 3.6cqw #fff3a6;padding:8% 8% 7%}
.ed-fifa12 .fut-stats{background:#f2c417;margin:0 -5cqw -5cqw;padding:2.4cqw 7cqw 3cqw}
/* FIFA 13: orange-gold, name in mixed case */
.ed-fifa13{border-radius:1cqw;background:radial-gradient(ellipse at 70% 30%,#fbe089,#f0b93a 55%,#d88f16);box-shadow:inset 0 0 0 1.8cqw #f7c93c,inset 0 0 0 2.3cqw #ffe79a;padding:7% 7% 6%}
.ed-fifa13 .fut-name{text-transform:none;font-size:7.4cqw}
.ed-fifa13 .fut-stats{border-top:.4cqw solid #0000002a}
/* FIFA 14-15: name on a banner across the top, stats on a darker band */
.ed-fifa14 .fut-name,.ed-fifa15 .fut-name{background:#ffffff38;margin:0 -8cqw;padding:1.4cqw 0;font-size:6.6cqw}
.ed-fifa14 .fut-stats,.ed-fifa15 .fut-stats{background:#0000001f;margin:0 -8cqw;padding:2.4cqw 12cqw 6cqw}
.ed-fifa14 .fut-rating,.ed-fifa15 .fut-rating{flex-direction:row;gap:2cqw;align-items:baseline}
.ed-fifa14 .fut-rating>span,.ed-fifa15 .fut-rating>span{border-left:.4cqw solid #0003;padding-left:2cqw}
/* FIFA 18-19: the year printed large and faint behind the player */
.ed-fifa18 .fut-mark,.ed-fifa19 .fut-mark{display:block;position:absolute;left:4%;top:18%;z-index:0;font:900 44cqw/1 Arial,sans-serif;color:#00000010;letter-spacing:-2cqw}
.ed-fifa19 .fut-mark{left:auto;right:4%;top:14%;font-size:38cqw}
/* EA SPORTS FC 24: orange gold with diagonal stripes */
.ed-fc24{color:#3a2106}
.ed-fifa14{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 11Q0 5 8 4L32 2Q50 0 68 2L92 4Q100 5 100 11V121Q100 127 94 129L56 139Q50 140 44 139L6 129Q0 127 0 121Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 11Q0 5 8 4L32 2Q50 0 68 2L92 4Q100 5 100 11V121Q100 127 94 129L56 139Q50 140 44 139L6 129Q0 127 0 121Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(180deg,#e8c24a,#d4a52a 45%,#b98a17)}
.ed-fifa15{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 12Q0 5 10 4L40 1Q50 0 60 1L90 4Q100 5 100 12V122Q100 128 94 130L56 139Q50 140 44 139L6 130Q0 128 0 122Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 12Q0 5 10 4L40 1Q50 0 60 1L90 4Q100 5 100 12V122Q100 128 94 130L56 139Q50 140 44 139L6 130Q0 128 0 122Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:radial-gradient(ellipse at 50% 20%,#f4d468,#dcb135 50%,#b98c1c)}
.ed-fifa16{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 14Q0 2 14 2H86Q100 2 100 14V112Q100 120 92 124L58 138Q50 141 42 138L8 124Q0 120 0 112Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 14Q0 2 14 2H86Q100 2 100 14V112Q100 120 92 124L58 138Q50 141 42 138L8 124Q0 120 0 112Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#fbf0c0,#efd88a 45%,#dcbd5e)}
.ed-fifa17{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 8Q6 8 8 2Q9 0 12 0H88Q91 0 92 2Q94 8 100 8V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 8Q6 8 8 2Q9 0 12 0H88Q91 0 92 2Q94 8 100 8V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#f8e28c,#ecc85a 45%,#d4a93c)}
.ed-fifa18{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 14Q0 4 10 3Q30 0 50 0Q70 0 90 3Q100 4 100 14V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 14Q0 4 10 3Q30 0 50 0Q70 0 90 3Q100 4 100 14V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#fbeab0,#efd27a 45%,#d9b453)}
.ed-fifa19{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M8 0H92L100 8V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114V8Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M8 0H92L100 8V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114V8Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#f8e7a8,#ecd07c 50%,#d6b153)}
.ed-fifa20{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 10Q7 9 9 2L10 0H90L91 2Q93 9 100 10V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 10Q7 9 9 2L10 0H90L91 2Q93 9 100 10V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#fcf1c6,#f1dc98 45%,#dfc26f)}
.ed-fifa21{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 9L6 6L9 0H91L94 6L100 9V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 9L6 6L9 0H91L94 6L100 9V114Q100 121 93 124L56 138Q50 140 44 138L7 124Q0 121 0 114Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#f6e3a0,#e7c974 45%,#cfa84c)}
.ed-fifa22{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M4 0H96Q100 0 100 4V112Q100 119 94 122L56 138Q50 140 44 138L6 122Q0 119 0 112V4Q0 0 4 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M4 0H96Q100 0 100 4V112Q100 119 94 122L56 138Q50 140 44 138L6 122Q0 119 0 112V4Q0 0 4 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#f8e8ad,#ead07f 45%,#d0ab55)}
.ed-fifa23{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M7 0H93L100 7V114Q100 120 94 123L56 139Q50 141 44 139L6 123Q0 120 0 114V7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M7 0H93L100 7V114Q100 120 94 123L56 139Q50 141 44 139L6 123Q0 120 0 114V7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(170deg,#f6e3a3,#e5c678 45%,#c9a14d)}
.ed-fc24{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M8 0H92Q100 0 100 8V120Q100 128 93 131L57 139Q50 141 43 139L7 131Q0 128 0 120V8Q0 0 8 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M8 0H92Q100 0 100 8V120Q100 128 93 131L57 139Q50 141 43 139L7 131Q0 128 0 120V8Q0 0 8 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:repeating-linear-gradient(125deg,#ffffff00 0 6cqw,#ffffff1a 6cqw 7cqw),linear-gradient(165deg,#f7c565,#eba43c 45%,#d17f19)}
.ed-fc25{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M12 0H88Q100 0 100 12V108Q100 114 94 118L57 137Q50 140 43 137L6 118Q0 114 0 108V12Q0 0 12 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M12 0H88Q100 0 100 12V108Q100 114 94 118L57 137Q50 140 43 137L6 118Q0 114 0 108V12Q0 0 12 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(165deg,#f7e2a6,#ebcb80 40%,#cfa653 80%)}
.ed-fc26{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M10 0H90L97 7Q100 10 100 14V104Q100 112 93 116L57 136Q50 140 43 136L7 116Q0 112 0 104V14Q0 10 3 7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M10 0H90L97 7Q100 10 100 14V104Q100 112 93 116L57 136Q50 140 43 136L7 116Q0 112 0 104V14Q0 10 3 7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:repeating-conic-gradient(from 180deg at 88% 8%,#fff0 0deg 5deg,#ffffff1f 5deg 8deg),linear-gradient(170deg,#f6e2a2 0%,#e9cd7e 35%,#d8b25a 70%,#c29a45 100%)}
.ed-fc27{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M10 0H90L97 7Q100 10 100 14V104Q100 112 93 116L57 136Q50 140 43 136L7 116Q0 112 0 104V14Q0 10 3 7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M10 0H90L97 7Q100 10 100 14V104Q100 112 93 116L57 136Q50 140 43 136L7 116Q0 112 0 104V14Q0 10 3 7Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:repeating-conic-gradient(from 180deg at 88% 8%,#fff0 0deg 5deg,#ffffff1f 5deg 8deg),linear-gradient(170deg,#f6e2a2 0%,#e9cd7e 35%,#d8b25a 70%,#c29a45 100%)}

@media(max-width:760px){.card-layout{grid-template-columns:1fr;gap:18px}.card-stack{max-width:300px}.clue-ladder{grid-template-columns:1fr 1fr}.clue-ladder li{min-height:34px;padding:5px 9px;gap:7px;grid-template-columns:20px 1fr auto}.clue-label{font-size:12px}.clue-ladder strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.card-stat.is-fresh b,.fut-rating .is-fresh,.fut-flag.is-fresh,.fut-club.is-fresh,.clue-ladder li.is-fresh{animation:none}}

/* ---- Second pass: patterns and details from each year's card ---- */
/* FIFA 05-09 in the FIFA 09 style: white border, flag behind, stats spelled out */
.ed-classic{border-radius:1cqw;background:linear-gradient(170deg,#f6e7b0,#e3c164 55%,#c99d3a);box-shadow:inset 0 0 0 2cqw #fff;padding:8% 8% 7%}
.ed-classic .fut-bgflag{display:block;position:absolute;inset:18% 2cqw 38% 2cqw;background-size:cover;background-position:center;opacity:.9;z-index:0}
.ed-classic .fut-rating b{font-style:italic;color:#fff;text-shadow:0 .4cqw 1cqw #000a}
.ed-classic .fut-rating>span{color:#fff;text-shadow:0 .3cqw .8cqw #000a}
.ed-classic .fut-stats{grid-template-rows:repeat(3,auto);gap:.4cqw 5cqw;padding:2cqw 3cqw;border-top:.4cqw solid #ffffffaa}
.ed-classic .card-stat{justify-content:space-between;flex-direction:row-reverse}
.ed-classic .card-stat span{font:800 3.6cqw/1.2 Arial,sans-serif;letter-spacing:.2cqw}
.ed-classic .card-stat b{font:800 italic 4.6cqw/1.2 Arial,sans-serif;min-width:0}
/* FIFA 10: rating in a white box, flag sweeping across */
.ed-fifa10 .fut-rating{background:#fff;border-radius:.6cqw;padding:1.2cqw 1.6cqw;box-shadow:0 .4cqw 1cqw #0004}
/* FIFA 11: white panel with grey diagonal stripes, beige header and stats */
.ed-fifa11{background:repeating-linear-gradient(118deg,#fff0 0 5cqw,#c9c9c955 5cqw 12cqw),linear-gradient(90deg,#f7f7f5,#e2e2de);box-shadow:inset 0 0 0 1.8cqw #cdb98a,inset 0 0 0 2.3cqw #efe4c2}
.ed-fifa11 .fut-stats{background:linear-gradient(180deg,#d8c79b,#c9b584);margin:0 -1cqw -1cqw;border-radius:0;color:#5d5236}
/* FIFA 12: yellow header and stats band around a striped silver panel */
.ed-fifa12{background:linear-gradient(180deg,#f2c417 0 20%,#fff0 20% 72%,#f2c417 72%),repeating-linear-gradient(120deg,#fff0 0 6cqw,#ffffff66 6cqw 14cqw),linear-gradient(90deg,#e9e9e4,#c9c8c1)}
.ed-fifa12 .fut-stats{background:transparent;margin:0}
.ed-fifa12 .card-stat{border-bottom:.3cqw solid #0000001f}
/* FIFA 13: dark rating box on a gold hexagon pattern */
.ed-fifa13{background:radial-gradient(circle at 50% 50%,#ffffff26 0 1.2cqw,#fff0 1.3cqw) 0 0/6cqw 5.2cqw,radial-gradient(ellipse at 70% 30%,#fbe089,#f0b93a 55%,#d88f16)}
.ed-fifa13 .fut-rating{background:#7a4a0c;color:#fff;border-radius:1cqw;padding:1.2cqw 2cqw}
.ed-fifa13 .card-stat{border-bottom:.3cqw solid #00000022}
/* FIFA 14: square top, bottom stepping in to a short flat base */
.ed-fifa14{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M4 0H96Q100 0 100 4V106L86 126L60 140H40L14 126L0 106V4Q0 0 4 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M4 0H96Q100 0 100 4V106L86 126L60 140H40L14 126L0 106V4Q0 0 4 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:linear-gradient(180deg,#e9c448,#d8ab2c 55%,#bb8b18)}
.ed-fifa14 .fut-stats{padding-bottom:9cqw}
/* FIFA 15: rounded card, rings behind the player */
.ed-fifa15{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M6 0H94Q100 0 100 6V118L92 130L60 140H40L8 130L0 118V6Q0 0 6 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M6 0H94Q100 0 100 6V118L92 130L60 140H40L8 130L0 118V6Q0 0 6 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;background:repeating-radial-gradient(circle at 68% 34%,#fff0 0 5cqw,#ffffff24 5cqw 6.2cqw),linear-gradient(180deg,#eccb52,#d7a92c 55%,#bd8b18)}
/* FIFA 16: faceted, crystal-like gold */
.ed-fifa16{background:linear-gradient(60deg,#fff0 0 30%,#ffffff2e 30% 45%,#fff0 45%),linear-gradient(-50deg,#fff0 0 55%,#ffffff26 55% 70%,#fff0 70%),linear-gradient(20deg,#0000 0 62%,#b8912a33 62% 78%,#0000 78%),linear-gradient(170deg,#fbeda8,#efd27a 45%,#d9b650)}
/* FIFA 17: glossy diagonal stripes */
.ed-fifa17{background:repeating-linear-gradient(115deg,#fff0 0 4cqw,#ffffff22 4cqw 5cqw,#fff0 5cqw 11cqw),linear-gradient(170deg,#f8e28c,#ecc85a 45%,#d4a93c)}
/* FIFA 18: darker strip down the left with FUT 18 running up it */
.ed-fifa18{background:linear-gradient(90deg,#d2ab45 0 17%,#fff0 17%),linear-gradient(170deg,#fbeab0,#efd27a 45%,#d9b453)}
.ed-fifa18 .fut-mark{left:1%;top:auto;bottom:12%;font:900 7cqw/1 Arial,sans-serif;color:#0000002a;transform:rotate(-90deg);transform-origin:left bottom;translate:10cqw 0;letter-spacing:.5cqw}
/* FIFA 19: FUT 19 printed large across the middle */
.ed-fifa19 .fut-mark{left:0;right:0;top:38%;text-align:center;font:900 italic 21cqw/1 Arial,sans-serif;color:#00000012;letter-spacing:-.5cqw}
/* FIFA 20-23: soft waves, ribbons and curves */
.ed-fifa20{background:repeating-radial-gradient(ellipse at 100% 100%,#fff0 0 3cqw,#ffffff30 3cqw 3.6cqw),linear-gradient(170deg,#fcf1c6,#f1dc98 45%,#dfc26f)}
.ed-fifa21{background:repeating-linear-gradient(160deg,#fff0 0 7cqw,#ffffff26 7cqw 7.6cqw),linear-gradient(170deg,#f6e3a0,#e7c974 45%,#cfa84c)}
.ed-fifa22{background:linear-gradient(135deg,#fff0 0 40%,#ffffff3a 40% 44%,#fff0 44% 58%,#ffffff2a 58% 61%,#fff0 61%),linear-gradient(170deg,#f8e8ad,#ead07f 45%,#d0ab55)}
.ed-fifa23{background:repeating-radial-gradient(ellipse at 110% -10%,#fff0 0 6cqw,#ffffff26 6cqw 6.6cqw),linear-gradient(170deg,#f6e3a3,#e5c678 45%,#c9a14d)}
/* EA SPORTS FC 24: gold with a bright ribbon streak */
.ed-fc24{color:#3b2a0c;background:linear-gradient(135deg,#fff0 0 22%,#f39a1d 22% 26%,#ffe7a8 26% 29%,#fff0 29%),linear-gradient(165deg,#f8e2a0,#ebcb78 45%,#cfa24d)}
/* EA SPORTS FC 25: geometric lines */
.ed-fc25{background:linear-gradient(35deg,#fff0 0 58%,#ffffff55 58% 58.6%,#fff0 58.6%),linear-gradient(-25deg,#fff0 0 40%,#ffffff55 40% 40.6%,#fff0 40.6%),linear-gradient(75deg,#fff0 0 70%,#ffffff44 70% 70.5%,#fff0 70.5%),linear-gradient(115deg,#fff0 0 64%,#ffffff44 64% 64.6%,#fff0 64.6%),linear-gradient(165deg,#f7e2a6,#ebcb80 40%,#cfa653 80%)}
/* EA SPORTS FC 26-27: sweeping lines */
.ed-fc26,.ed-fc27{background:repeating-radial-gradient(circle at 115% 105%,#fff0 0 2.4cqw,#ffffff33 2.4cqw 2.8cqw),linear-gradient(170deg,#f6e2a2 0%,#e9cd7e 35%,#d8b25a 70%,#c29a45 100%)}
/* Cutout player: stands on the card, fading out at the bottom like a card render */
.fut-face:has(.fut-cutout-wrap){position:relative}
.fut-cutout-wrap{position:absolute;inset:-2cqw -4cqw 0 -4cqw;display:flex;align-items:flex-end;justify-content:center}
.fut-cutout{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 1cqw 1.4cqw #0005);-webkit-mask:linear-gradient(to bottom,#000 78%,transparent);mask:linear-gradient(to bottom,#000 78%,transparent)}
.fut-cutout{height:100%;max-height:100%}
.lay-fc .fut-cutout-wrap{inset:-4cqw -8cqw 0 -2cqw;justify-content:flex-end}
.card-cutout-note{margin:.4rem 0 0;font-size:.72rem;opacity:.7}
/* Layout fixes */
/* FIFA 10: the nation flag is a faint wash behind the player, not the whole card */
.ed-fifa10 .fut-bgflag{opacity:.32;inset:2.6cqw 2.6cqw 34% 2.6cqw;filter:saturate(.8)}
.ed-fifa10 .fut-club-badge,.ed-classic .fut-club-badge{background:#fffffff0;color:#1d1606;box-shadow:0 .3cqw .8cqw #0003}
/* Club names break between words, never inside one ("LEVERKUSE N") */
.fut-club-badge{overflow-wrap:normal;word-break:keep-all;hyphens:none}
.lay-fc .fut-club-badge{max-width:none;white-space:nowrap;font-size:3.6cqw;padding:.9cqw 1.8cqw}
/* Cutouts fade out at the sides too, so a shoulder cut off by the photo's edge never ends in a hard line */
.fut-cutout{-webkit-mask:linear-gradient(to bottom,#000 78%,transparent),linear-gradient(to right,transparent,#000 14%,#000 86%,transparent);-webkit-mask-composite:source-in;mask:linear-gradient(to bottom,#000 78%,transparent),linear-gradient(to right,transparent,#000 14%,#000 86%,transparent);mask-composite:intersect}
/* FC 25's narrower shield: more room between the name and the stat labels */
.lay-fc .fut-name{margin-bottom:1.2cqw}
.ed-fc25{padding-bottom:17%}
.ed-fc25 .fut-name{margin-bottom:2cqw}
/* Fit the whole game (card, clues, guess box) in one screen, no scrolling */
@media(min-width:761px){
 .card-stack{max-width:max(250px,min(360px,calc((100svh - 240px)/1.4)))}
 .card-layout{grid-template-columns:auto minmax(0,1fr)}
 .card-stack{width:max(250px,min(360px,calc((100svh - 240px)/1.4)))}
 .clue-ladder{grid-template-columns:1fr 1fr;gap:5px 6px}
 .clue-ladder li{min-height:34px;padding:5px 10px;gap:8px;grid-template-columns:22px minmax(0,1fr) auto}
 .clue-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:760px){
 .card-layout{grid-template-columns:minmax(0,56%) minmax(0,1fr);gap:8px;align-items:start}
 .card-stack{max-width:none;filter:drop-shadow(0 10px 16px #0008)}
 .card-edition-tag{font-size:11px;padding:5px 10px;margin-bottom:8px;letter-spacing:1px}
 .clue-title{display:none}
 .clue-ladder{grid-template-columns:1fr;gap:3px;margin-bottom:10px}
 .clue-ladder li{min-height:0;padding:3px 7px;gap:6px;grid-template-columns:16px minmax(0,auto) minmax(0,1fr);border-radius:7px}
 .clue-n{width:16px;height:16px;font-size:9px}
 .clue-label{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .clue-ladder li{padding:4px 7px}
 .clue-ladder strong [aria-label=locked]{font-size:10px;line-height:1}
 .clue-ladder strong{font-size:12px;justify-content:flex-end;min-width:0;overflow:hidden;text-overflow:ellipsis}
 .clue-ladder strong img{width:14px;height:auto}
 .clue-ladder li.is-next strong{font-size:8px;letter-spacing:.5px}
 .card-side{display:contents}
 .card-stack{grid-column:1;grid-row:1}
 .clue-ladder{grid-column:2;grid-row:1;align-self:center}
 .card-side>:not(.clue-ladder){grid-column:1/-1}
}
/* A long value (Paris Saint-Germain) shortens with an ellipsis; the clue's label is never cut */
.clue-ladder li{grid-template-columns:22px auto minmax(0,1fr)}
.clue-label{overflow:visible;text-overflow:clip}
.clue-ladder strong{display:block;min-width:0;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clue-ladder strong img{display:inline-block;vertical-align:-2px;margin-right:6px}
@media(max-width:760px){.clue-ladder li{grid-template-columns:16px auto minmax(0,1fr)}}
/* Long club and league names are shown in full: a touch smaller, wrapping to a second line if they must */
.clue-ladder strong.is-long{white-space:normal;overflow:visible;text-overflow:clip;font-size:13px;line-height:1.15}
@media(max-width:760px){.clue-ladder strong.is-long{font-size:10.5px}}
/* A narrow clue column (smaller laptop windows): drop the number circles so labels and values keep their room */
@media(min-width:761px){
 .card-side{container-type:inline-size}
 @container (max-width:400px){
  .clue-ladder li{grid-template-columns:auto minmax(0,1fr);padding:5px 8px;gap:6px}
  .clue-n{display:none}
  .clue-label{font-size:12px}
  .clue-ladder strong{font-size:14px}
  .clue-ladder strong.is-long{font-size:12px}
 }
}
@media(max-width:760px){.clue-ladder li.is-next strong{font-size:0}.clue-ladder li.is-next strong:after{content:'◂';font:700 13px Arial,sans-serif}}
/* FIFA 05–09 (classic): the flag is a faint wash inside the photo window, not a banner across the card */
.ed-classic .fut-bgflag{inset:8% 8% 36% 8%;opacity:.3;border-radius:1cqw;filter:saturate(.7);-webkit-mask:linear-gradient(180deg,#000 55%,transparent);mask:linear-gradient(180deg,#000 55%,transparent)}
.ed-classic .fut-rating b{font-style:normal;color:#2b1d05;text-shadow:none}
.ed-classic .fut-rating>span{color:#2b1d05;text-shadow:none}
.ed-classic .fut-name{border-top:.35cqw solid #0000002a;border-bottom:.35cqw solid #0000002a;margin:1cqw 2cqw 1.4cqw}
.ed-classic .fut-stats{border-top:0}
/* The card's own frame and borders are sized in cqw: measure them against the card's wrapper, not the window
   (without this, the white frame of FIFA 05–09 and FIFA 10–12 cards grew with the screen width). */
.card-stack{container-type:inline-size}
