/* Preserve the club's warm paper UI; reserve navy/gold for match and TV moments. */
.speaker-card{align-items:flex-start}.speaker-card>div{min-width:0}.speaker-card>div>p{overflow-wrap:anywhere}.speaker-card>.consult-coach,.speaker-card>.staff-face{flex-shrink:0}
.player-profile-modal .dialog-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.player-profile-modal .dialog-footer .full,.player-profile-modal .dialog-footer .inbox-return{grid-column:1/-1}
.player-profile-modal .dialog-footer .button{min-width:0;font-size:14px;white-space:normal;min-height:44px;padding:10px}
.record-periods{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.record-periods button{font:inherit;font-size:14px;border:1px solid #c9bdad;border-radius:8px;background:#fffaf1;color:#493c30;padding:9px 12px;min-height:44px}.record-periods button.selected{background:#67432e;color:white;border-color:#67432e}
.career-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.career-stat-grid>div{min-width:0;padding:12px 5px;background:#fffdf8;border:1px solid #e0d7c9;border-radius:12px;display:flex;flex-direction:column;gap:6px;text-align:center}.career-stat-grid small{font-size:14px;line-height:1.5}.career-stat-grid b{font-size:18px;overflow-wrap:anywhere}.stat-footnote{font-size:14px;color:#726759;line-height:1.6}.offer-summary,.coach-review-card{border:1px solid #d7c8b1;background:#faf2e2;border-radius:14px;padding:18px;margin:16px 0}.offer-summary>strong{display:block;font-size:24px}.offer-summary p{margin:8px 0}.coach-review-card h3{font-size:18px}.coach-review-card>small{font-size:14px}.captain-bonus{padding:14px;background:#edf1dd;border:1px solid #a5b582;border-radius:10px;font-weight:700}
.inbox-return{min-height:44px}.game-dialog .dialog-footer:has(.inbox-return){flex-wrap:wrap}.game-dialog .dialog-footer>.inbox-return{flex-basis:100%}.peek-dialog .dialog-footer{flex-wrap:wrap}
.handbook details{border-bottom:1px solid #ddd1bf;padding:14px 0}.handbook summary{font-weight:700;font-size:16px;cursor:pointer;min-height:32px}.handbook p{line-height:1.8;font-size:16px}.help-context{font-size:14px;margin:8px 0}
/* Each segment is revealed only as the ball reaches it. The shot endpoint stays hidden. */
.cinematic-replay .pass-trail{stroke-dasharray:100;stroke-dashoffset:100;opacity:.5;animation-timing-function:ease-in-out}.cinematic-replay .trail-pass{animation-name:trail-pass}.cinematic-replay .trail-dribble{animation-name:trail-dribble}.cinematic-replay .trail-shot{animation-name:trail-shot}
@keyframes trail-pass{0%,12%{stroke-dashoffset:100}50%,100%{stroke-dashoffset:0}}@keyframes trail-dribble{0%,50%{stroke-dashoffset:100}68%,100%{stroke-dashoffset:0}}@keyframes trail-shot{0%,68%{stroke-dashoffset:100}85%,100%{stroke-dashoffset:0}}
.news-program-modal{background:#102938;color:#fff4db;max-width:760px}.news-program-modal .dialog-header{color:#e5cc8b}.news-program-modal .dialog-footer{background:#102938;border-top:1px solid #567079}.news-program-modal .dialog-footer .button{color:#fff4db;border-color:#bca76d}.news-program header{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:2px solid #ccb273}.news-program header span{background:#b53736;color:white;font-size:14px;padding:3px 10px}.news-program-lead{font-weight:900;color:#f4d67f;letter-spacing:.06em;font-size:clamp(24px,6vw,42px);margin:20px 0}.news-program-subject{display:flex;gap:20px;align-items:center}.news-program-subject h3{font-size:24px;line-height:1.5}.news-program .breaking-face{flex-shrink:0;width:120px;height:120px}.news-program-report{padding:18px;background:#e8d39a;color:#192e36;font-size:18px;line-height:1.8;animation:report-reveal 1.5s both}.news-program>small{font-size:14px;color:#dfd3b6}.news-station small{font-size:14px}.league-news-card small{font-size:14px}
@keyframes report-reveal{0%,55%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:none}}
@media(max-width:600px){.career-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-program-subject{gap:12px}.news-program-subject h3{font-size:20px}.news-program .breaking-face{width:88px;height:88px}.news-program-modal .dialog-content{padding:18px}}
@media(prefers-reduced-motion:reduce){.news-program-report{animation:none}.cinematic-replay .pass-trail{display:none}.cinematic-replay .cinematic-ball,.cinematic-replay .replay-actor{animation-duration:var(--duration);animation-delay:var(--elapsed);animation-play-state:var(--run);animation-timing-function:steps(1,end)}.cinematic-replay .cinematic-ball{animation-name:reduced-ball}.cinematic-replay .replay-actor{animation-name:reduced-actor}}
@keyframes reduced-ball{0%{left:var(--sx);top:var(--sy)}50%{left:var(--mx);top:var(--my)}68%{left:var(--tx);top:var(--ty)}85%,100%{left:var(--ex);top:var(--ey)}}@keyframes reduced-actor{0%{left:var(--sx);top:var(--sy)}72%,100%{left:var(--ex);top:var(--ey)}}

/* Match cards have independent fixed photo and two-line name tracks. */
.match-panel:has(.broadcast-lineup){overflow-y:auto;display:block}
.broadcast-lineup.lineup-cards,.broadcast-lineup.lineup-formation{height:auto;min-height:0;padding:10px}
.broadcast-lineup .broadcast-heading{gap:10px;align-items:center;margin-bottom:10px}
.broadcast-lineup .broadcast-heading>div{min-width:0}
.broadcast-lineup .broadcast-heading>div>small{font-size:12px;line-height:1.4}
.broadcast-lineup .broadcast-heading>span{flex-shrink:0;font-size:20px}
.broadcast-lineup .broadcast-heading>span>small{display:block;font-size:12px;letter-spacing:0}
.broadcast-lineup .xi-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:6px;flex:none}
.xi-grid{--photo-size:clamp(38px,calc((100dvh - 440px)/4),76px)}.xi-grid .xi-card{display:grid;grid-template-rows:var(--photo-size) 42px;height:calc(var(--photo-size) + 42px);min-height:0}
.xi-grid .xi-photo{height:var(--photo-size);min-height:var(--photo-size);flex:none}
.xi-grid .xi-photo .avatar.xi-face{height:var(--photo-size)!important;width:var(--photo-size);max-width:none}
.xi-grid .xi-position{top:4px;left:3px;font-size:12px;padding:3px}
.xi-grid .xi-position small{font-size:12px;display:block}
.xi-grid .xi-ability{right:3px;bottom:4px;font-size:20px;padding:3px;white-space:nowrap}
.xi-grid .xi-ability small{font-size:10px}
.xi-grid .xi-card>strong{height:42px;min-height:42px;display:grid!important;grid-template-columns:14px minmax(0,1fr) 14px;gap:2px;padding:3px!important;font-size:12px;line-height:1.35}
.xi-grid .xi-card>strong>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
.xi-grid .xi-captain{position:static;display:grid;place-items:center;width:14px;height:16px;font-size:10px;padding:0;border-radius:3px;align-self:center}
.xi-grid .xi-captain.empty{visibility:hidden}
.xi-grid .xi-country{font-size:12px}
.xi-grid .xi-club{min-height:0}
.lineup-formation .formation-key{font-size:12px;color:#e6d8ae;margin:4px 0 8px}
.lineup-formation .compact-formation{display:grid;grid-template-rows:repeat(4,clamp(82px,calc((100dvh - 270px)/4),94px));gap:4px;min-height:0;max-width:520px;padding:8px 3px;box-sizing:border-box;flex:none}
.compact-formation .formation-row{display:flex;align-items:center;justify-content:space-evenly;gap:3px;z-index:1;min-width:0}
.compact-formation .pitch-player{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:22%;max-width:94px;min-width:0;height:100%;min-height:80px;box-sizing:border-box;padding:3px 1px;border:1px solid #9eb4a0;background:#123a3aed;color:#fff;border-radius:6px;transform:none;touch-action:manipulation}
.pitch-player .pitch-face{height:34px;position:relative;width:100%;display:flex;justify-content:center}
.pitch-player .avatar.formation-face{width:34px;height:34px!important;flex:none;border-radius:4px}
.pitch-player .pitch-number,.pitch-player .pitch-captain{position:absolute;top:0;font-size:12px;line-height:16px;left:1px;color:#efd487}
.pitch-player .pitch-captain{left:auto;right:1px}
.pitch-player>small{display:block;font-size:12px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:17px}
.pitch-player .formation-overall{display:block;font-size:18px;line-height:22px;white-space:nowrap;word-break:normal;overflow-wrap:normal;color:#f8d887;background:transparent;padding:0}
.replay-actor{border:0;padding:0;background:none;color:inherit;min-height:0;min-width:0;cursor:pointer}
.replay-actor:disabled{opacity:1;filter:none;cursor:default}
.replay-identities>.crest{width:48px;max-height:62px;flex-shrink:0}
.player-profile-hero>.avatar,.player-detail-top>.avatar,.peek-player-heading>.avatar,.news-article-player>.avatar{flex:none;width:88px;height:88px!important}
.player-profile-hero>div,.player-detail-top>div,.peek-player-heading>div{min-width:0;overflow-wrap:anywhere}
.peek-dialog.player-profile-modal .dialog-footer{display:grid}
/***** News reading: compact navigation and deliberate manual chapters. *****/
.league-news-modal .news-station{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;margin-bottom:14px}
.league-news-modal .news-station b{font-size:14px;line-height:1.4}.league-news-modal .news-station small{font-size:12px;white-space:nowrap;align-self:center}
.league-news-modal .news-filter{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:0 0 10px;margin:0 0 6px;scrollbar-width:thin}
.league-news-modal .news-filter .button{flex:0 0 auto;min-height:44px;padding:9px 13px;font-size:14px;white-space:nowrap;border-radius:22px;box-shadow:none}
.league-news-modal .league-news-card{padding:16px 0;border-bottom:1px solid #dfd3c5}
.news-article-link{display:block;width:100%;border:0;background:none;padding:0;text-align:left;color:inherit;font:inherit}
.news-article-link h3{font-size:18px;line-height:1.5;margin:7px 0}.news-article-link p{font-size:16px;line-height:1.65;margin:0 0 8px}.news-article-link>span{font-size:14px;color:#78523a}
.news-article-player{display:flex;align-items:center;gap:14px;margin:18px 0}.news-article-player>div{min-width:0;overflow-wrap:anywhere}
.news-chapter{padding:16px 0;border-bottom:1px solid #597079;scroll-margin-top:8px}.news-chapter>small{color:#dbc889;font-size:14px}.news-chapter p{font-size:16px;line-height:1.8}.news-chapter h3{font-size:22px;line-height:1.6}.news-chapter-current{animation:chapter-in .28s ease-out}.news-program-modal .dialog-footer .button.dark{background:#ead194;color:#102938}.news-program-modal .news-program-lead{font-size:26px;margin:16px 0 4px}
@keyframes chapter-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.news-chapter-current{animation:none}}
.offer-player{display:grid;grid-template-columns:80px minmax(0,1fr);gap:14px;align-items:center}.offer-player .avatar{width:80px;height:80px!important}.offer-player h3{font-size:21px;line-height:1.45;margin:0;overflow-wrap:anywhere}.offer-player p{font-size:14px;margin:6px 0}.offer-player small{font-size:14px}
.offer-price{padding:18px 0;border-bottom:2px solid #cfb477;margin:12px 0}.offer-price small{display:block;font-size:14px}.offer-price strong{display:block;font-size:32px;color:#684630;margin-top:6px}
.offer-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.offer-decision-grid section{min-width:0}.offer-decision-grid h3{font-size:16px;margin:0 0 8px}.offer-decision-grid p{font-size:14px;line-height:1.7;margin:8px 0}
.sale-offer-modal .dialog-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sale-offer-modal .dialog-footer .button{min-width:0;white-space:normal;font-size:14px;padding:12px 8px}
@media(min-width:700px){.broadcast-lineup .xi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.xi-grid .xi-card{grid-template-rows:100px 44px;height:144px}.xi-grid .xi-photo{height:100px;min-height:100px}.xi-grid .xi-photo .avatar.xi-face{width:100px;height:100px!important}.xi-grid .xi-card>strong{height:44px;font-size:14px}}
/* v18: stable broadcast stage, square portraits, retained narrative. */
#save-status[hidden]{display:none!important}
.news-program-modal{height:min(860px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden}
.news-program-modal .dialog-header{flex:none}
.news-program-modal .dialog-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:14px 20px}
.news-program-modal .dialog-content>h2{flex:none;margin:0 0 8px;font-size:22px}
.news-program-modal .news-program{display:flex;flex-direction:column;flex:1;min-height:0}
.news-program-modal .news-program>header,.news-program-modal .news-program-lead,.news-program-modal .news-program-subject{flex:none}
.news-program-modal .news-program>header{padding:4px 0;font-size:12px}
.news-program-modal .news-program-lead{font-size:22px;margin:8px 0}
.news-program-modal .news-program-subject{height:82px;gap:12px;padding:0 0 8px}
.news-program-modal .news-program-subject>div{min-width:0}
.news-program-modal .news-program-subject h3{margin:0;font-size:18px;line-height:1.3;overflow-wrap:anywhere}
.news-program-modal .news-program-subject p{font-size:13px;margin:4px 0}
.news-program-modal .news-program-subject .avatar,.news-program-modal .news-program-subject .crest{width:68px!important;height:68px!important;min-width:68px;min-height:68px;flex:0 0 68px;aspect-ratio:1;box-sizing:border-box}
.news-reading{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;position:relative;scroll-behavior:smooth;padding-right:4px}
.news-chapter h3{font-size:20px}.news-chapter{padding:10px 0}
.news-program-modal .dialog-footer{flex:none;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px!important}
.news-program-modal .dialog-footer>.button,.news-footer-space{min-height:48px;font-size:15px;grid-column:auto!important}
.offer-player{grid-template-columns:80px minmax(0,1fr)}
.offer-face{display:block;width:80px;height:80px;min-width:80px;min-height:80px;flex:none;align-self:start}
.offer-face .avatar,.offer-player .avatar{display:block!important;position:relative!important;width:80px!important;height:80px!important;min-width:80px!important;min-height:80px!important;max-width:80px!important;max-height:80px!important;aspect-ratio:1;flex:none;box-sizing:border-box}
.offer-conversation{margin:20px 0}.offer-conversation>h3{font-size:17px;margin:20px 0 10px}.offer-conversation .speaker-card{align-items:flex-start}
.news-article-player .avatar,.player-profile-hero>.avatar,.breaking-player>.avatar,.offer-conversation .avatar{flex-shrink:0;aspect-ratio:1}
.growth-leaders{display:grid;gap:12px}.growth-leaders article{display:flex;gap:14px;align-items:center;padding:14px;border-radius:12px;background:#f2e8d5}.growth-leaders h3{margin:4px 0}.growth-leaders p{margin:4px 0}.growth-leaders strong{color:#216448;font-size:24px}.growth-face{display:block!important;width:72px!important;height:72px!important;min-width:72px;flex:0 0 72px;aspect-ratio:1}.growth-table{width:100%;font-size:13px}.growth-table th,.growth-table td{padding:10px 6px;white-space:nowrap}.growth-table td:first-child{min-width:130px;white-space:normal}.growth-table small{display:block;color:#727867}.growth-table .text-button{font-size:14px;text-align:left}
.reunion-card{padding:14px;margin:12px 0;border:1px solid #d1b978;border-radius:12px;background:#214237;color:#fff1d3}.reunion-card>div{display:flex;align-items:center;gap:12px}.reunion-card p{font-size:13px;line-height:1.6}.reunion-card small{display:block;font-size:11px}.reunion-face{display:block!important;width:52px!important;height:52px!important;min-width:52px;flex:0 0 52px;aspect-ratio:1}
@media(max-height:480px){.news-program-modal .dialog-header{padding:8px 16px}.news-program-modal .news-program-lead{font-size:16px;margin:4px 0}.news-program-modal .news-program-subject{height:50px}.news-program-modal .news-program-subject .avatar,.news-program-modal .news-program-subject .crest{width:42px!important;height:42px!important;min-width:42px;min-height:42px;flex-basis:42px}.news-program-modal .dialog-content{padding:8px 14px}.news-program-modal .dialog-content>h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.news-reading{scroll-behavior:auto}}
/* Chapter changes keep the outer window still; only the new paragraph animates. */
.game-dialog.news-program-modal{animation:none}
.news-program-modal .dialog-content>h2{color:#fff1d3}
.news-program-modal .dialog-footer .button.outline{background:transparent;color:#fff1d3}

/* v19: keep identity and financial decisions readable at phone widths. */
.player-profile-hero .profile-name{font-size:clamp(18px,5vw,24px);line-height:1.4;overflow-wrap:anywhere;margin:0 0 7px}
.captain-reason{border-top:1px solid #ded6c8;padding-top:8px;font-size:13px!important;line-height:1.6}
.growth-table{table-layout:fixed;min-width:440px}.growth-table th:first-child{width:43%}.growth-table th:nth-child(2){width:24%}.growth-table th:nth-child(3){width:18%}.growth-table th:last-child{width:15%}
.growth-player{display:flex!important;gap:7px;align-items:center;white-space:normal;min-width:0;width:100%}.growth-player>span:last-child{min-width:0;overflow-wrap:anywhere}
.growth-small-face{display:block!important;width:36px!important;height:36px!important;min-width:36px;flex:0 0 36px;aspect-ratio:1;overflow:hidden;border-radius:7px}
.growth-table .growth-player{font-size:12px}.growth-table small{font-size:10px}.growth-table td,.growth-table th{padding:10px 4px;font-size:11px}
.recovery-card{border:1px solid #b38357;background:#fff7e8;padding:16px;margin:14px 0}.recovery-card h3{margin-top:0}.recovery-card p{line-height:1.65}
.recovery-players{display:grid;gap:8px;margin:16px 0}.recovery-player{display:flex;align-items:center;gap:10px;text-align:left;padding:12px;border:1px solid #d9d0bf;border-radius:10px;background:#fffdf7;color:#342d26}.recovery-player>span:last-child{min-width:0;overflow-wrap:anywhere}.recovery-player small{display:block;line-height:1.6;margin-top:4px}.recovery-player.selected{border:2px solid #396c58;background:#eef5ea}.recovery-player[disabled]{opacity:.6}.recovery-modal .dialog-footer{display:grid;grid-template-columns:1fr}.building-card{scroll-margin-top:12px}.room-bubble{max-width:160px;white-space:normal;line-height:1.4}
@media(max-width:430px){.growth-table{min-width:0}.growth-table th:first-child{width:44%}.growth-table th:nth-child(2){width:25%}.growth-table th:nth-child(3){width:17%}.growth-table th:last-child{width:14%}.growth-table td:nth-child(2){white-space:normal}.growth-table .growth-small-face{width:28px!important;height:28px!important;min-width:28px;flex-basis:28px}.growth-player{gap:5px}.growth-table .growth-player{font-size:11px}}
#main>.inbox-return{position:sticky;top:8px;z-index:4;display:block;width:100%;margin:0 0 12px;background:#fffdf8;box-shadow:0 2px 8px #342d2618}
#main:has(>.inbox-return){scroll-padding-top:72px}

/* v20: speech bubbles have their own intrinsic width, never their small anchor's width. */
.room-bubble{box-sizing:border-box;width:max-content;min-width:76px;max-width:148px;white-space:normal;word-break:normal;overflow-wrap:normal;line-height:1.45;text-align:center;padding:6px 9px;font-size:12px}
.room-object{top:max(68px,var(--y))}.room-object .room-bubble{bottom:calc(100% + 2px)}
.object-news .room-bubble{left:auto;right:0;transform:none}.object-schedule .room-bubble{left:0;transform:none}
.room-staff .room-bubble{bottom:calc(100% + 6px);transform:translateX(-50%)}
.room-staff[data-id="finance"]:has(.room-bubble){z-index:4}
.room-staff[data-id="finance"] .room-bubble{bottom:auto;top:52%;left:80%;transform:none;max-width:120px}
.room-staff[data-id="finance"] .room-bubble:after{top:12px;left:-10px;border-color:transparent #fffbea transparent transparent}
.quality-guide{margin:6px 0 12px;font-size:12px;line-height:1.7}.quality-guide summary{cursor:pointer;min-height:32px;padding:6px 0}.quality-guide p{margin:4px 0}
.tier-change{color:#496f57;font-size:10px;font-weight:600}
.offer-league{font-size:12px!important;line-height:1.6;background:#eee9dd;padding:5px 8px;border-radius:6px;margin-top:8px!important}
.recovery-conversation{padding:12px 0;border-bottom:1px solid #ded6c8}.recovery-conversation>p{font-size:13px;line-height:1.8}.recovery-conversation h3{margin:8px 0}.recovery-story-modal .dialog-footer{display:block}.recovery-story-modal .dialog-footer .button{width:100%}
.recovery-bond{display:flex;flex-wrap:wrap;gap:4px 12px;padding:10px 12px;margin:8px 0;border:1px solid #c8ab61;border-radius:9px;background:#fff6dc;color:#5b482a;font-size:12px;line-height:1.6}.recovery-bond small{display:block;width:100%;font-size:10px}.broadcast-lineup .recovery-bond{flex:none;background:#254c48;color:#fff1c3;padding:5px 8px;margin:3px 0}
@media(max-width:700px){.room-viewport{flex:0 0 auto;min-height:260px}.clubhouse-room{min-height:260px}}

/* v21: ability belongs to list card backgrounds, never to portrait sprites. */
[data-card-quality="ivory"]{--card-bg:#f1eadc;--card-ink:#554b3a}
[data-card-quality="green"]{--card-bg:#d6e9dc;--card-ink:#234a35}
[data-card-quality="blue"]{--card-bg:#d4e4f5;--card-ink:#254970}
[data-card-quality="purple"]{--card-bg:#e5d8f0;--card-ink:#5b3775}
[data-card-quality="gold"]{--card-bg:#f4dda0;--card-ink:#5c4314}
.player-card[data-card-quality]{background:var(--card-bg,#fffdf7);color:var(--card-ink,#342d26);border-color:transparent}
.player-card[data-card-quality] .player-info{position:relative;background:var(--card-bg);color:var(--card-ink);isolation:isolate;overflow:hidden;border-radius:0 0 12px 12px}
.player-card[data-card-quality] .player-info>*{position:relative;z-index:1}
.player-card[data-card-quality="purple"] .player-info,.player-card[data-card-quality="gold"] .player-info{background:linear-gradient(125deg,#ffffff88,transparent 45%,#ffffff55),var(--card-bg)}
.player-card[data-card-quality="purple"] .player-info:before,.player-card[data-card-quality="gold"] .player-info:before{content:'✦';position:absolute;right:12px;top:12px;font-size:23px;color:#fff;opacity:.8;pointer-events:none;z-index:0;text-shadow:-32px 58px 0 #fff9,8px 116px 0 #fff8}
.player-card[data-card-quality="gold"] .player-info:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#fff8 45%,transparent 60%);transform:translateX(-110%);animation:card-shine 9s ease-in-out infinite;pointer-events:none;z-index:0}
@keyframes card-shine{0%,65%{transform:translateX(-110%)}90%,100%{transform:translateX(110%)}}
@media(prefers-reduced-motion:reduce){.player-card[data-card-quality="gold"] .player-info:after{animation:none;display:none}}
.ability-chip{display:inline-block;padding:2px 7px;margin-left:5px;border-radius:5px;background:var(--card-bg,#eee9df);color:var(--card-ink,#342d26);font-size:11px;white-space:nowrap}
.player-profile-modal .player-profile-hero>.detail-avatar{width:112px!important;height:112px!important;min-width:112px;flex:0 0 112px!important;aspect-ratio:1}
.player-profile-modal .dialog-content>h2{display:none}
@media(max-width:700px){.player-profile-modal .player-profile-hero>.detail-avatar{width:96px!important;height:96px!important;min-width:96px;flex-basis:96px!important}}
.preparation-card,.league-briefing,.club-memory{padding:14px;border-radius:12px;background:#eef1e5;margin:12px 0;font-size:13px;line-height:1.7}
.preparation-card p,.league-briefing p,.club-memory p{margin:6px 0}.preparation-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preparation-options button{min-height:56px;white-space:normal;font-size:13px}.preparation-options button[aria-pressed="true"]{background:#396c58;color:white;border-color:#396c58}
.match-review-note{padding:12px;background:#203e49;color:#eef4eb;border-radius:10px;font-size:12px;line-height:1.6;margin:10px 0}.match-review-note summary{cursor:pointer;min-height:30px}.match-review-note p{margin:6px 0}.match-memory{display:flex;gap:10px;align-items:center;margin:8px 0}.match-memory .avatar{width:42px!important;height:42px!important;flex:0 0 42px!important;aspect-ratio:1}
.reunion-summary{padding:8px 0;font-size:12px;line-height:1.6}.reunion-summary summary{cursor:pointer}.reunion-summary .reunion-card{margin:8px 0}
.loan-label{padding:7px 10px;background:#e5edf1;border-radius:8px;font-size:12px;line-height:1.6}
/* Results read from top to bottom; later stories must never shrink own records. */
.match-panel[role="tabpanel"]{display:block;overflow-y:auto;overscroll-behavior:contain}
.match-panel[role="tabpanel"] .match-finished-highlights,.match-panel[role="tabpanel"] .own-goals{display:block}
.match-panel[role="tabpanel"] .own-goal-list{overflow:visible}
