.fun-feature{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:24px 0 64px}.fun-feature ul{padding-left:20px;color:var(--muted)}.fun-feature .primary,.fun-promo .primary{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.fun-cover{background:#202944;padding:30px;border-radius:12px}.cover-pitch{min-height:280px;border:1px solid #b8c4df66;border-radius:80px;display:grid;place-content:center;text-align:center;color:#fff;background:repeating-linear-gradient(90deg,#263b52 0 60px,#2a4158 60px 120px)}.cover-pitch span{font-size:4rem}.cover-pitch b{font-size:1.6rem;letter-spacing:.04em;line-height:1.3}
.kick-setup{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;margin:12px 0 40px}.kick-setup h2{font-family:Georgia,serif;line-height:1.3}.kick-setup fieldset,.kick-question fieldset{border:0;padding:0;margin:0 0 20px}.kick-setup legend{font-weight:700;margin-bottom:14px}.kick-modes{display:grid;gap:10px}.kick-modes label{cursor:pointer}.kick-modes label>span{display:flex;align-items:center;gap:16px;padding:13px 16px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.kick-modes input{position:absolute;opacity:0}.kick-modes small{display:block;color:var(--muted);line-height:1.45}.kick-modes b{min-width:65px}.kick-modes input:checked+span{border-color:var(--teal);box-shadow:inset 4px 0 var(--teal);background:var(--accentbg)}.kick-modes input:focus-visible+span{outline:3px solid var(--teal);outline-offset:3px}.kick-rules{padding:24px;background:var(--surface2);border-radius:10px}.kick-rules ol{padding-left:20px;font-size:.95rem}.kick-rules li{margin:12px 0}.kick-rules p{font-size:.8rem;color:var(--muted)}
.kick-match{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,1fr);gap:24px;align-items:start;margin-bottom:24px}.kick-match[hidden],.kick-setup[hidden],[data-results][hidden],[data-review][hidden]{display:none}.kick-field{position:sticky;top:90px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.scoreboard{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:#222d47;color:#fff}.scoreboard>span{display:flex;flex-direction:column;gap:3px;font-size:.8rem}.scoreboard small{font-size:.55rem;color:#c8d1e5;letter-spacing:.06em}.scoreboard strong{white-space:nowrap;font-size:1.8rem;letter-spacing:.06em}.scoreboard time{background:#ffffff16;border-radius:5px;padding:5px 8px;font-size:.85rem}.kick-pitch{position:relative;isolation:isolate;aspect-ratio:1.7;overflow:hidden;background:repeating-linear-gradient(90deg,#304f55 0 12.5%,#36585e 12.5% 25%);border:12px solid #29464c;color:#eef9f1}.pitch-lines{position:absolute;inset:3%;border:1.5px solid #ffffff90}.half-line{position:absolute;left:50%;top:0;height:100%;border-left:1px solid #ffffff90}.center-circle{position:absolute;left:50%;top:50%;width:22%;aspect-ratio:1;border:1px solid #ffffff90;border-radius:50%;transform:translate(-50%,-50%)}.box{position:absolute;top:24%;width:17%;height:52%;border:1px solid #ffffff90}.home-box{left:0;border-left:0}.away-box{right:0;border-right:0}.goal{position:absolute;top:39%;width:4%;height:22%;border:2px solid #fff9;background:repeating-linear-gradient(0deg,transparent 0 5px,#ffffff30 5px 6px)}.home-goal{left:-4%}.away-goal{right:-4%}.footballer{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:26px;height:26px;display:grid;place-items:center;background:#4c78d8;border:2px solid #dbeaff;color:#fff;font:bold 11px Arial;border-radius:50%;box-shadow:0 3px 3px #0005;z-index:2}.footballer.away{background:#c85142;border-color:#ffe1d8}.football{position:absolute;left:50%;top:50%;font-size:23px;transform:translate(-50%,-50%);z-index:3;filter:drop-shadow(0 2px 2px #0009);line-height:1}.pitch-brand{position:absolute;left:6%;bottom:2%;font-size:.48rem;letter-spacing:.13em;color:#fff8}.pitch-goal-label{position:absolute;right:4%;top:2%;font-size:.48rem;letter-spacing:.06em;color:#fffb}.goal-event{box-shadow:inset 0 0 0 3px #edbe6d}.kick-commentary{padding:14px 18px;min-height:90px;background:var(--surface2);display:flex;flex-direction:column;justify-content:center;gap:3px}.kick-commentary b{font-size:.95rem}.kick-commentary span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.kick-meters{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:14px 18px}.kick-meters label{font-size:.7rem;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.kick-meters progress{width:100%;height:8px;accent-color:#4e75bb}.pressure-pips{display:flex;gap:4px;margin-top:8px}.pressure-pips i{height:7px;flex:1;background:var(--line);border-radius:2px}.pressure-pips .filled{background:#d26b50}.kick-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding:8px 12px;font-size:.72rem}.kick-tools button{min-height:40px;padding:5px 8px;font-size:.75rem}.kick-question{background:var(--surface);padding:24px;border:1px solid var(--line);border-radius:10px;scroll-margin-top:95px}.kick-question .eyebrow{font-size:.7rem}.kick-question legend{font-size:1.3rem;line-height:1.45;font-weight:600;margin-bottom:20px}.kick-options{display:grid;gap:10px}.kick-options label{cursor:pointer;position:relative}.kick-options input{position:absolute;left:15px;top:19px;opacity:0}.kick-options span{display:flex;align-items:center;gap:12px;min-height:58px;padding:12px;border:1px solid var(--line);border-radius:6px;font-size:.95rem;line-height:1.45}.kick-options span b{display:grid;place-items:center;flex:0 0 26px;height:26px;background:var(--surface2);border-radius:4px;font-size:.75rem}.kick-options input:checked+span{border-color:var(--teal);background:var(--accentbg);box-shadow:inset 3px 0 var(--teal)}.kick-options input:focus-visible+span{outline:3px solid var(--teal);outline-offset:3px}.kick-options input:disabled+span{cursor:default}.kick-question button{min-height:44px}.answer-feedback{border-left:3px solid #9a702d;background:var(--surface2);padding:14px 16px;margin:16px 0}.answer-feedback.correct{border-color:#4778b4}.answer-feedback p{font-size:.9rem;line-height:1.6;margin:8px 0}.kick-save-note{font-size:.8rem;color:var(--muted);margin-top:24px}.kick-save-note a{text-decoration:underline}.kick-result{padding:clamp(22px,5vw,50px);background:var(--surface);border:1px solid var(--line);border-top:5px solid #b38645;border-radius:10px;text-align:center;max-width:950px;margin:20px auto}.kick-result h2{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.5rem);margin-bottom:24px}.kick-result .eyebrow{justify-content:center}.result-score{display:flex;justify-content:center;align-items:center;gap:25px;margin:24px 0;font-weight:600}.result-score b{font-size:3rem}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:left;margin:30px 0}.result-stats div{padding:16px;background:var(--surface2);border-radius:6px}.result-stats dt{font-size:.75rem;color:var(--muted)}.result-stats dd{margin:6px 0 0;font-size:1.2rem;text-transform:capitalize}.result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.result-actions button{padding:10px 16px;min-height:44px}.kick-result.perfect{border-color:#c5913a;background:linear-gradient(135deg,var(--surface),var(--accentbg))}.review-item{max-width:800px;margin:24px auto;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.review-item h3{font-size:1.15rem;line-height:1.5}.review-item p{font-size:.95rem}.review-item a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.review-item details{font-size:.8rem;margin-top:18px}.second-half .scoreboard{border-bottom:2px solid #d5a350}[data-results],[data-review]{scroll-margin-top:100px}
@media(max-width:1050px){.kick-match{grid-template-columns:minmax(0,1fr) minmax(300px,1fr)}.kick-setup{grid-template-columns:1fr}.kick-rules .kick-pitch{max-width:550px}.scoreboard{padding:12px 10px;gap:7px}.scoreboard strong{font-size:1.4rem}.scoreboard small{display:none}.kick-question{padding:18px}.kick-meters{grid-template-columns:1fr}}
@media(max-width:760px){.fun-feature{grid-template-columns:1fr;gap:24px}.kick-match{grid-template-columns:1fr}.kick-field{position:static}.kick-question legend{font-size:1.15rem}.kick-meters{grid-template-columns:1fr 1fr}.kick-rules{padding:18px}.result-stats{grid-template-columns:1fr 1fr}.result-score{gap:12px;font-size:.8rem}.result-score b{font-size:2rem}.kick-modes label>span{align-items:flex-start}.kick-tools{font-size:.7rem}}
@media(max-width:600px){.kick-pitch{aspect-ratio:.9;max-height:310px;width:100%;background:repeating-linear-gradient(0deg,#304f55 0 12.5%,#36585e 12.5% 25%);border-width:9px}.footballer{left:var(--mx);top:var(--my);width:23px;height:23px;font-size:10px}.half-line{left:0;top:50%;width:100%;height:0;border-left:0;border-top:1px solid #ffffff90}.center-circle{width:30%}.box{left:24%;width:52%;height:17%;top:auto}.home-box{bottom:0;border:1px solid #ffffff90;border-bottom:0}.away-box{top:0;right:auto;border:1px solid #ffffff90;border-top:0}.goal{left:39%;width:22%;height:4%;top:auto}.home-goal{bottom:-4%}.away-goal{top:-4%;right:auto}.pitch-goal-label{left:50%;right:auto;top:1%;transform:translateX(-50%);font-size:0}.pitch-goal-label:after{content:'↑ SHADOW XI GOAL';font-size:.48rem;white-space:nowrap}.kick-commentary{min-height:70px;padding:10px 14px}.kick-meters{padding:10px 14px}.kick-setup .kick-pitch{max-height:250px}.scoreboard{position:relative}.fun-cover{padding:18px}.cover-pitch{min-height:220px}.review-item{padding:18px}.kick-question{scroll-margin-top:85px}}
@media(prefers-reduced-motion:no-preference){.perfect h2{animation:perfect-arrival .5s ease-out}@keyframes perfect-arrival{from{transform:scale(.94)}to{transform:scale(1)}}}
.player-0{--x:14%;--y:50%;--mx:50%;--my:86%}.player-1{--x:29%;--y:24%;--mx:24%;--my:71%}.player-2{--x:30%;--y:73%;--mx:73%;--my:70%}.player-3{--x:47%;--y:42%;--mx:42%;--my:53%}.player-4{--x:61%;--y:65%;--mx:65%;--my:39%}.player-5{--x:78%;--y:38%;--mx:38%;--my:22%}.player-6{--x:88%;--y:50%;--mx:50%;--my:12%}.player-7{--x:75%;--y:22%;--mx:22%;--my:25%}.player-8{--x:72%;--y:77%;--mx:77%;--my:28%}.player-9{--x:58%;--y:35%;--mx:35%;--my:42%}.player-10{--x:45%;--y:66%;--mx:66%;--my:55%}.player-11{--x:34%;--y:48%;--mx:48%;--my:66%}
[data-cyberkick] button:not(.primary){border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);min-height:40px;padding:8px 12px}[data-cyberkick] button:not(.primary):hover{border-color:var(--teal);background:var(--accentbg)}
.footballer{background:#365da7}.footballer.away{background:#b64438}.kick-question:focus,[data-results]:focus,[data-review]:focus{outline:none}[data-game-error]:empty{display:none}.result-actions{margin-bottom:20px}
@media(max-width:600px){.kick-match .kick-field{position:sticky;top:76px;z-index:6;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 4px 14px #0002}.kick-match .scoreboard,.kick-match .kick-meters,.kick-match .kick-tools{grid-column:1/-1}.kick-match .kick-pitch{height:190px;max-height:190px;aspect-ratio:auto}.kick-match .kick-commentary{min-width:0;padding:12px;align-self:stretch;gap:10px}.kick-match .kick-commentary b{font-size:.8rem;line-height:1.5}.kick-match .kick-commentary span{font-size:.64rem}.kick-match .footballer{width:19px;height:19px;font-size:8px}.kick-match .football{font-size:19px}.kick-match .kick-meters{padding:8px 12px}.kick-match .kick-meters label{font-size:.62rem;gap:2px}.kick-match .kick-tools{padding:4px 8px}.kick-match .kick-tools button{padding:5px 7px;min-height:36px}.kick-match .kick-question{scroll-margin-top:420px}.kick-match .pitch-brand{display:none}.kick-match .pitch-goal-label:after{font-size:.37rem}.kick-match .scoreboard{padding:9px 10px}.kick-match .scoreboard b{font-size:.7rem}.kick-match .scoreboard time{font-size:.7rem}.kick-match .kick-question{margin-top:0}}
.nickname-field{display:grid;gap:8px;margin:20px 0;max-width:32rem}.nickname-field small{color:var(--muted);font-weight:400}.nickname-field input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font:inherit}.team-key{display:flex;flex-wrap:wrap;gap:8px 20px;padding:10px 12px;font-size:.78rem;grid-column:1/-1}.team-key span{display:inline-flex;align-items:center;gap:8px}.team-dot{width:12px;height:12px;border-radius:50%;display:inline-block;border:1px solid currentColor}.team-dot.blue{background:#61b4ff}.team-dot.coral{background:#f69a87}.nickname-display{margin:0 12px 8px;font-size:.8rem;grid-column:1/-1}
