:root{font-family:system-ui,-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:#202321;background:#f8f9fa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #12b886;outline-offset:3px}.hidden{display:none!important}.site-header{background:#fff;border-bottom:1px solid #edf0ed}.header-inner{max-width:1200px;margin:auto;min-height:68px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{text-decoration:none;font-size:22px;letter-spacing:-.07em;font-weight:850;color:#202321;white-space:nowrap;display:flex;align-items:center}.brand span:last-child{color:#12b886}.brand-icon{display:inline-grid;place-items:center;border-radius:8px;width:34px;height:34px;background:#12b886;color:#fff;font-size:22px;font-weight:700;margin-right:9px;letter-spacing:0}.header-actions{display:flex;align-items:center;gap:18px}.connection{font-size:12px;color:#7d8981;white-space:nowrap;display:flex;align-items:center;gap:7px}.connection i{width:8px;height:8px;border-radius:50%;background:#eeb454}.connection.online i{background:#12b886}.connection.offline i{background:#ee816b}.mode-button,.refresh{background:#fff;border:1px solid #dfe5e0;border-radius:7px;color:#4e5a52;padding:9px 13px;font-size:12px;font-weight:700;white-space:nowrap}.mode-button:hover,.refresh:hover{border-color:#12b886;color:#09976e}.container{max-width:1200px;margin:0 auto;padding:0 24px}.intro{text-align:center;padding:62px 0 37px}.intro-icon{font-size:29px;line-height:1;margin-bottom:13px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:#12a879;margin:0}.intro h1{font-size:clamp(28px,3.5vw,42px);letter-spacing:-.065em;line-height:1.25;margin:12px 0 13px}.intro-sub{color:#7c8580;font-size:14px;margin:0}.tabs{display:flex;gap:28px;border-bottom:1px solid #e4e9e5;margin-bottom:28px;scroll-margin-top:12px}.nav-item{display:flex;align-items:center;gap:6px;color:#888f8a;background:transparent;border:0;border-bottom:3px solid transparent;padding:15px 3px 13px;font-size:15px;font-weight:750;white-space:nowrap}.nav-item:hover{color:#12a879}.nav-item.active{color:#12b886;border-bottom-color:#12b886}.sample-banner{background:#eaf9f2;border:1px solid #c9eedd;padding:13px 16px;border-radius:8px;color:#46705b;font-size:13px;margin-bottom:25px}.sample-banner strong{color:#098b60;margin-right:8px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 23px}.section-head h2{font-size:26px;letter-spacing:-.055em;margin:6px 0 7px}.section-head>div>p:last-child{font-size:13px;color:#848d86;margin:0}.count{font-size:16px;letter-spacing:0;color:#12b886;vertical-align:3px}.latest-note{margin-left:12px}.toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:21px}.search{display:flex;align-items:center;gap:9px;border:1px solid #e1e8e2;background:#fff;border-radius:7px;padding:0 12px;width:min(330px,100%)}.search span{font-size:21px;color:#9ca8a0}.search:focus-within{border-color:#12b886}.search input{width:100%;padding:12px 0;border:0;outline:0;background:transparent;color:#262d28;font-size:13px}.search input::placeholder{color:#a1aaa3}.filter-group{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin}.filter{border:0;border-radius:6px;background:transparent;color:#777f79;padding:10px 12px;font-size:12px;font-weight:750;white-space:nowrap}.filter:hover{background:#eaf7f0;color:#09976e}.filter.selected{background:#e3f8ee;color:#09976e}.transfer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.transfer-card{background:#fff;border:1px solid #f0f1ef;border-radius:8px;overflow:hidden;box-shadow:0 3px 12px #242d230b;min-width:0;transition:transform .2s,box-shadow .2s}.transfer-card:hover{transform:translateY(-3px);box-shadow:0 9px 24px #242d231a}.card-cover{height:150px;position:relative;overflow:hidden;background:linear-gradient(120deg,#e0f4e8,#cae9d9 58%,#eaf6eb)}.transfer-card:nth-child(4n+2) .card-cover{background:linear-gradient(115deg,#e6f3eb,#d0e7e0 60%,#e9f6f2)}.transfer-card:nth-child(4n+3) .card-cover{background:linear-gradient(115deg,#e3f2ed,#e3eedb 65%,#f1f6e9)}.transfer-card:nth-child(4n) .card-cover{background:linear-gradient(115deg,#dcf3e5,#d9e8eb 60%,#e9f4ef)}.cover-lines{position:absolute;width:320px;height:320px;border:2px solid #ffffffa8;border-radius:50%;right:-35px;top:-87px;box-shadow:0 0 0 52px #ffffff37,0 0 0 104px #ffffff20}.cover-ball{position:absolute;top:35px;right:32px;font-size:74px;filter:grayscale(1);opacity:.24;transform:rotate(-25deg)}.cover-label{position:absolute;bottom:14px;left:20px;color:#288e66;font-weight:850;font-size:10px;letter-spacing:.2em}.card-content{padding:18px 20px 20px}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.badge{font-size:11px;font-weight:750;color:#0c9b70;background:#e7f8ef;padding:5px 9px;border-radius:5px;white-space:nowrap}.badge.out{color:#b47748;background:#fff2e7}.badge.other{color:#6b7e83;background:#eef2f2}.date-cell{font-size:11px;color:#9ba59d;white-space:nowrap}.transfer-card h3{font-size:20px;letter-spacing:-.045em;margin:17px 0 19px;line-height:1.3;overflow-wrap:anywhere}.club-move{display:flex;align-items:center;gap:8px;border-top:1px solid #eef1ee;padding-top:15px;min-height:66px}.club-move>div{min-width:0;flex:1}.club-move small{display:block;font-size:10px;letter-spacing:.08em;color:#a1aca3;margin-bottom:6px;font-weight:700}.club-move strong{display:block;font-size:12px;color:#55645a;line-height:1.35;overflow-wrap:anywhere}.move-arrow{color:#13ad7d;font-size:19px;flex:none}.showing{color:#9aa59b;font-size:12px;text-align:center;margin:28px 0 65px}.empty{padding:60px 20px;text-align:center;color:#8b988e;font-size:13px;background:#fff;border:1px solid #eef1ed;border-radius:8px}.team-search{margin-bottom:22px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:65px}.team-card{border:1px solid #edf1ed;background:#fff;border-radius:8px;color:#2b382e;text-align:left;padding:22px;min-height:132px;display:grid;grid-template-columns:1fr auto;align-content:space-between;box-shadow:0 3px 12px #242d230b}.team-card:hover{border-color:#12b886;box-shadow:0 7px 18px #174b2d18}.club-logo{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e6f7ee;color:#12a879;font-weight:800}.team-card small{color:#9ca99e;font-size:10px;font-weight:800;letter-spacing:.1em}.team-card strong{font-size:17px;grid-column:1;letter-spacing:-.03em}.team-card .arr{color:#12b886;grid-column:2;grid-row:2;justify-self:end}.lookup-form{max-width:610px;background:#fff;border:1px solid #eef1ed;border-radius:8px;padding:25px;margin-bottom:16px}.lookup-form label{display:block;margin-bottom:10px;font-size:12px;font-weight:750}.lookup-form>div{display:flex;gap:9px}.lookup-form input{min-width:0;flex:1;padding:12px;border:1px solid #dfe8e0;border-radius:6px}.lookup-form button{border:0;background:#12b886;color:#fff;border-radius:6px;padding:0 18px;font-weight:750}.detail-result{max-width:610px;min-height:150px;margin-bottom:65px}.detail-card{background:#fff;border:1px solid #eef1ed;border-radius:8px;padding:25px}.detail-card h3{font-size:24px;margin:9px 0}.detail-card p{font-size:12px;color:#8a968d}.detail-card ul{list-style:none;padding:0;margin:20px 0 0}.detail-card li{padding:13px 0;border-top:1px solid #edf1ed;font-size:13px}.detail-card li span:not(.move-arrow){display:block;color:#859287;font-size:11px;margin-top:4px}.error{color:#b84636!important}footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #edf0ec;padding:24px 0 35px;color:#9aa79c;font-size:11px}dialog{background:#fff;color:#26332b;border:1px solid #e2ebe3;border-radius:10px;padding:25px;min-width:min(390px,90vw);max-width:90vw;box-shadow:0 15px 70px #172e1e40}dialog::backdrop{background:#172a1c9c}dialog form{display:flex;justify-content:flex-end}.close{border:0;background:none;color:#12a879;font-size:28px}#teamDetail h3{font-size:24px;margin:10px 0 5px}#teamDetail p{font-size:12px;color:#7e8d80}
@media(max-width:900px){.transfer-grid,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro{padding-top:48px}}
@media(max-width:620px){.header-inner{min-height:60px;padding:0 16px}.brand{font-size:18px}.brand-icon{width:29px;height:29px;font-size:18px}.header-actions{gap:8px}.connection{font-size:0}.connection i{width:9px;height:9px}.mode-button{padding:8px;font-size:11px}.container{padding:0 16px}.intro{padding:36px 0 24px}.intro h1{font-size:28px}.intro-sub{font-size:12px;line-height:1.6}.tabs{gap:18px;overflow-x:auto;margin-bottom:22px}.nav-item{font-size:13px;flex:none}.section-head{align-items:center}.section-head h2{font-size:23px}.section-head>div>p:last-child{font-size:11px;line-height:1.5}.latest-note{display:block;margin:0}.refresh{font-size:0;padding:8px 10px}.refresh::first-letter{font-size:17px}.toolbar{flex-direction:column;align-items:stretch}.search{width:100%}.filter-group{margin:0 -4px}.transfer-grid,.team-grid{grid-template-columns:1fr;gap:14px}.card-cover{height:128px}.card-content{padding:16px 17px 18px}.transfer-card h3{margin:13px 0 15px}.team-card{min-height:115px}.lookup-form{padding:18px}footer span{display:none}}
@media(max-width:360px){.lookup-form>div{flex-direction:column}.lookup-form button{min-height:43px}.brand{font-size:16px}.nav-item{font-size:12px}}
/* Player directory */
.player-search{margin-bottom:20px}.player-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:25px}.player-card{display:flex;align-items:center;gap:14px;min-width:0;text-align:left;background:#fff;border:1px solid #edf1ed;border-radius:8px;padding:18px;color:#29372d;box-shadow:0 3px 12px #242d230b}.player-card:hover{border-color:#12b886;box-shadow:0 7px 18px #174b2d18}.player-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e4f6ed;color:#0da777;font-size:20px;font-weight:800;flex:none}.player-card-copy{display:grid;gap:5px;min-width:0}.player-card-copy small{color:#9da99f;font-size:10px;font-weight:800;letter-spacing:.08em}.player-card-copy strong{font-size:16px;overflow-wrap:anywhere}.player-card-arrow{margin-left:auto;color:#12b886;font-size:18px;flex:none}.lookup-form{margin-top:30px}.detail-result{max-width:none;scroll-margin-top:24px}
@media(max-width:900px){.player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.player-grid{grid-template-columns:1fr;gap:10px}.player-card{padding:14px}.player-search{width:100%}}
/* Expandable transfer timeline */
.transfer-card summary{display:block;cursor:pointer;list-style:none}.transfer-card summary::-webkit-details-marker{display:none}.transfer-card summary:focus-visible{outline:2px solid #12b886;outline-offset:-2px}.transfer-card summary:hover .expand-label{color:#098f68}.expand-label{display:flex;align-items:center;justify-content:space-between;color:#0aa678;font-size:12px;font-weight:800;border-top:1px solid #eef1ee;margin-top:14px;padding-top:14px}.expand-chevron{font-size:20px;line-height:1;transition:transform .2s}.transfer-card[open] .expand-chevron{transform:rotate(180deg)}.transfer-history{border-top:1px solid #eaf0eb;padding:18px 20px 20px;background:#fcfefd}.transfer-history>p{margin:0 0 14px;font-size:11px;color:#729481;font-weight:800}.transfer-history ol{list-style:none;padding:0 0 0 10px;margin:0;border-left:2px solid #cdebdc}.transfer-history li{position:relative;padding:0 0 18px 16px;display:grid;gap:4px}.transfer-history li:last-child{padding-bottom:0}.transfer-history li::before{content:'';position:absolute;left:-15px;top:5px;width:8px;height:8px;border-radius:50%;background:#12b886}.transfer-history time{font-size:11px;color:#91a096}.history-route{font-size:12px;color:#344439;font-weight:700;line-height:1.4;overflow-wrap:anywhere}.history-route span{color:#12b886}.history-type{font-size:10px;color:#739582}
/* Transfer fee ranges */
.fee-toolbar{display:flex;align-items:center;gap:13px;margin:-3px 0 21px}.fee-toolbar>span{color:#859388;font-size:12px;font-weight:750;white-space:nowrap}.fee-toolbar .filter-group{flex-wrap:wrap}.fee-toolbar .filter{background:#fff;border:1px solid #e4ebe5}.fee-toolbar .filter.selected{background:#e3f8ee;border-color:#d4f0e2}.fee-toolbar .filter:disabled{color:#b6c2b9;background:#f5f7f5;cursor:not-allowed}.fee-notice{font-size:12px;color:#8a988c;margin:-9px 0 20px}.card-fee{display:block;color:#0f9d72;font-size:12px;font-weight:750;margin-top:11px}
@media(max-width:620px){.fee-toolbar{align-items:flex-start;gap:10px}.fee-toolbar>span{padding-top:10px}.fee-toolbar .filter-group{flex-wrap:nowrap}}
/* Only the selected card grows when its history opens. */
.transfer-grid{align-items:start}.transfer-grid>.transfer-card{align-self:start}
/* Player portraits from API-Football; initials stay visible if unavailable. */
.card-cover .photo-fallback{position:absolute;z-index:1;right:52px;bottom:-25px;color:#ffffff88;font-size:150px;font-weight:900;line-height:1}.card-cover .player-photo{position:absolute;z-index:2;right:12px;bottom:0;height:94%;max-width:65%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 5px 10px #205a3930)}.card-cover .cover-label{z-index:3}.player-avatar{position:relative;overflow:hidden}.player-avatar .player-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#e6f7ee}
/* Fixed transfer card size; full history opens in its own dialog. */
.transfer-grid{align-items:stretch}.transfer-card{height:390px;display:flex;flex-direction:column}.transfer-card-button{width:100%;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.transfer-card-button:focus-visible{outline:3px solid #12b886;outline-offset:3px}.transfer-card .card-cover{width:100%;flex:none}.transfer-card .card-content{width:100%;flex:1;min-height:0;display:flex;flex-direction:column}.transfer-card h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;margin-bottom:8px}.transfer-card .club-move{margin-top:auto;min-height:57px}.transfer-card .club-move strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.transfer-card .expand-label{margin-top:10px;padding-top:11px}.transfer-card .expand-chevron{font-size:15px}.transfer-card .card-fee{margin-top:6px}.transfer-dialog{width:min(560px,92vw);max-height:85vh;overflow-y:auto}.transfer-dialog h3{font-size:25px;margin:7px 0}.dialog-subtitle{font-size:12px;color:#849286;margin:0 0 18px}.transfer-dialog .transfer-history{padding:18px;background:#f9fcfa;border-radius:8px}.club-logo{position:relative;overflow:hidden;background:#f0f8f3}.club-emblem{position:absolute;inset:0;width:100%;height:100%;padding:4px;object-fit:contain;background:#fff}.team-dialog-heading{display:flex;align-items:center;gap:13px;margin-top:12px}.team-dialog-heading .club-logo{width:54px;height:54px;flex:none}.team-dialog-heading h3{margin:0!important}
@media(max-width:620px){.transfer-card{height:350px}}
/* Latest recorded destination club beside each player. */
.player-card-copy{flex:1;min-width:0}.player-name-row{display:flex;align-items:center;gap:8px;min-width:0}.player-name-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-team-emblem{position:relative;display:grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid #e2ebe4;border-radius:50%;background:#f3f8f4;color:#0ba474;font-size:11px;font-weight:800;overflow:hidden}.player-team-emblem .club-emblem{padding:3px}.player-team-name{font-size:11px;color:#87968a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Player history now opens in the shared dialog. */
.lookup-form{margin-bottom:60px}
/* Five-league club directory */
.league-filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:0 0 23px}.league-filter{min-width:0;min-height:83px;background:#fff;border:1px solid #e8eee9;border-radius:9px;padding:13px;text-align:left;color:#4d5c51;display:flex;flex-direction:column;gap:5px;box-shadow:0 2px 9px #242d2308}.league-filter:hover{border-color:#9ddfbe}.league-filter.selected{border-color:#12b886;background:#eefbf4;box-shadow:0 0 0 1px #12b8862b}.league-filter-meta{font-size:10px;color:#91a197;font-weight:700}.league-filter-name{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.league-filter strong{color:#0ba777;font-size:12px}.league-groups{margin:8px 0 60px}.league-section{margin-bottom:34px}.league-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #e7eee8;margin-bottom:15px;padding-bottom:12px}.league-kicker{font-size:10px;color:#14a77a;font-weight:800;letter-spacing:.13em}.league-heading h3{font-size:20px;letter-spacing:-.04em;margin:5px 0 0}.league-heading h3 span{font-size:12px;color:#11aa7b;margin-left:4px}.league-section .team-grid{margin-bottom:0}.league-section .team-card{min-height:132px}
@media(max-width:1000px){.league-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.league-filters{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(138px,45vw);grid-template-columns:none;overflow-x:auto;margin-right:-16px;padding-right:16px;padding-bottom:7px;scroll-snap-type:x proximity}.league-filter{scroll-snap-align:start;min-height:77px}.league-heading h3{font-size:18px}.league-section{margin-bottom:28px}}
.league-filter:disabled{cursor:not-allowed;background:#f5f7f5;color:#aebbb1;box-shadow:none}.league-filter:disabled .league-filter-meta,.league-filter:disabled strong{color:#b9c5bc}
/* Club roster in the team detail dialog. */
#teamDialog{width:min(520px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:min(85vh,780px);overflow-y:auto}
#teamDialog .team-meta{margin:12px 0 0;color:#839187}
.team-roster{position:relative;isolation:isolate;margin-top:27px;padding:19px 16px 16px;border:1px solid #e5eee7;border-radius:13px;background:linear-gradient(145deg,#f7fcf9,#ecf6f0);overflow:hidden}
.roster-watermark{position:absolute;z-index:0;right:-25px;top:25px;width:240px;height:240px;display:grid;place-items:center;pointer-events:none;opacity:.27;color:#a1c7ae;font-size:160px;font-weight:900;line-height:1;user-select:none}
.roster-mark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:grayscale(.25)}
.roster-heading,.roster-list,.roster-empty{position:relative;z-index:1}
.roster-heading h4{margin:5px 0 13px;font-size:19px;letter-spacing:-.04em}
.roster-heading h4 span{margin-left:4px;color:#12a879;font-size:13px}
.roster-list{list-style:none;margin:0;padding:0;border:1px solid #e8eee9;border-radius:9px;overflow:hidden}
.roster-list li{min-width:0;display:flex;align-items:center;gap:12px;padding:10px 13px;background:rgba(255,255,255,.80)}
.roster-list li+li{border-top:1px solid #edf1ed}
.roster-avatar{position:relative;display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;overflow:hidden;background:#eaf7ef;color:#11a379;font-size:16px;font-weight:750}
.roster-avatar .player-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.roster-name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;color:#26342c}
.roster-list small{flex:none;color:#9ba9a0;font-size:11px}
.roster-empty{margin:0!important;padding:24px 15px;border:1px solid #e8eee9;border-radius:9px;background:#fafcfa;text-align:center;color:#8a998e!important;font-size:13px!important}
@media(max-width:620px){#teamDialog{padding:20px}.team-roster{padding:16px 11px 11px}.roster-watermark{width:180px;height:180px;right:-20px;font-size:120px}.roster-list li{padding:9px 11px}}
/* Journalist posts: source rail and readable editorial feed. */
.posts-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:32px;align-items:start;margin-bottom:70px}
.posts-sidebar{position:sticky;top:24px}.posts-sidebar-title{margin:1px 0 12px;color:#87958a;font-size:11px;font-weight:800;letter-spacing:.13em}.post-sources{display:grid;gap:8px}
.post-source{width:100%;min-width:0;display:flex;align-items:center;gap:11px;text-align:left;padding:12px;background:#fff;border:1px solid #e8eee9;border-radius:9px;color:#293a30;transition:border-color .18s,background .18s}.post-source:hover{border-color:#91d6b4}.post-source.selected{background:#eaf8f0;border-color:#12b886}
.post-source-avatar,.post-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:#e6f6ec;color:#139a6f;font-size:11px;font-weight:850;letter-spacing:-.03em}.post-source.selected .post-source-avatar{background:#12b886;color:#fff}
.post-source-label{display:grid;gap:2px;min-width:0}.post-source-label strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-source-label small{color:#92a097;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-source-count{margin-left:auto;color:#0ea575;font-size:11px;font-weight:800}.posts-help{margin:15px 5px;color:#a1afa4;font-size:11px;line-height:1.5}
.posts-main{min-width:0}.posts-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.posts-toolbar>div{display:grid;gap:4px}.posts-toolbar strong{font-size:18px;letter-spacing:-.04em}.posts-toolbar>div span{font-size:11px;color:#9aa79d}.posts-search{width:min(270px,100%)}.posts-feed{display:grid;gap:14px}.posts-notice{margin:0 0 14px;padding:12px 14px;border-radius:8px;background:#fff7eb;color:#94642a;font-size:12px}
.post-card{min-width:0;padding:24px 27px 18px;background:#fff;border:1px solid #edf1ed;border-radius:10px;box-shadow:0 3px 15px #242d2309}.post-card-head{display:flex;align-items:center;gap:11px}.post-avatar{width:43px;height:43px;font-size:12px;background:#e6f6ee}.post-author{display:grid;gap:3px;min-width:0}.post-author strong{font-size:14px}.post-author span{color:#9aa89c;font-size:11px}.post-card-head time{margin-left:auto;align-self:start;color:#9aa79c;font-size:11px;white-space:nowrap}.post-content{margin:19px 0 24px;color:#344239;font-size:15px;line-height:1.8;overflow-wrap:anywhere;white-space:normal}.post-card-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;border-top:1px solid #f0f2ef;font-size:11px;color:#9aa89c}.post-card-foot a{color:#0d9d70;font-size:12px;font-weight:750;text-decoration:none}.post-card-foot a:hover{text-decoration:underline}
@media(max-width:850px){.posts-layout{grid-template-columns:1fr;gap:18px}.posts-sidebar{position:static}.posts-sidebar-title,.posts-help{display:none}.post-sources{display:flex;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.post-source{flex:0 0 190px}}
@media(max-width:620px){.posts-layout{margin-bottom:48px}.post-source{flex-basis:168px;padding:10px}.posts-toolbar{align-items:stretch;flex-direction:column;gap:12px}.posts-search{width:100%}.post-card{padding:18px 17px 15px}.post-card-head{flex-wrap:wrap}.post-card-head time{width:100%;margin:1px 0 0 54px;font-size:10px}.post-content{font-size:14px;margin:14px 0 19px}}
.post-types{display:flex;gap:7px;overflow-x:auto;margin:0 0 17px;padding-bottom:2px}.post-type{flex:none;border:1px solid #e1ebe4;border-radius:999px;background:#fff;color:#68786c;padding:9px 14px;font-size:12px;font-weight:750;white-space:nowrap}.post-type:hover{border-color:#91d6b4;color:#0a996c}.post-type.selected{border-color:#12b886;background:#eaf8f0;color:#087e5a}.post-type:disabled{opacity:.48;cursor:not-allowed}.post-type span{margin-left:6px;color:#0da478;font-size:11px}
.post-meta{margin:17px 0 -4px}.post-tag{display:inline-block;padding:5px 9px;border-radius:5px;background:#f2f4f2;color:#7d8980;font-size:10px;font-weight:800}.post-tag.transfer{background:#e7f8ee;color:#0a986b}.post-card .post-content{margin-top:13px}
@media(max-width:620px){.post-types{margin-bottom:14px}.post-type{padding:8px 12px}.post-meta{margin-top:14px}}
/* Club posts: EPL now, other league controls can be enabled as data arrives. */
.post-club-picker{margin-top:24px;padding-top:20px;border-top:1px solid #e3eae4}.post-club-picker .posts-sidebar-title{margin-bottom:10px}.post-leagues{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 15px}.post-league{padding:5px 7px;border-radius:5px;background:#f0f2f0;color:#a1aba3;font-size:10px;font-weight:750}.post-league.available{background:#e7f7ec;color:#0c9e70}.post-club-picker label{display:block;margin:0 0 6px;color:#839286;font-size:11px;font-weight:750}.post-club-picker select{width:100%;min-width:0;padding:11px 10px;border:1px solid #dae8dd;border-radius:7px;background:#fff;color:#35453a;font-size:12px;cursor:pointer}.post-club-picker select:focus-visible{outline:2px solid #12b886;outline-offset:2px}.post-club-picker p:last-child{margin:9px 0 0;color:#9ba89e;font-size:10px;line-height:1.6}
.post-team-banner{display:flex;align-items:center;gap:15px;margin:0 0 18px;padding:18px 21px;border:1px solid #dcefe3;border-radius:10px;background:linear-gradient(110deg,#e8f8ed,#f7fcf9)}.post-team-logo{position:relative;display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;overflow:hidden;border:1px solid #d4e9d9;background:#fff;color:#11a477;font-size:22px;font-weight:800}.post-team-banner>div{display:grid;gap:3px;min-width:0}.post-team-banner small{color:#159a70;font-size:10px;font-weight:800;letter-spacing:.1em}.post-team-banner strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#284334;font-size:18px}.post-team-banner div>span{color:#789082;font-size:11px}.team-post-link{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-top:14px;padding:13px 15px;border:1px solid #bde9cf;border-radius:8px;background:#ebf9f1;color:#0b956c;font-size:12px;font-weight:800;text-align:left}.team-post-link:hover{border-color:#12b886;background:#def5e9}
@media(max-width:850px){.post-club-picker{margin-top:16px;padding-top:16px}.post-club-picker .posts-sidebar-title{display:block}.post-club-picker p:last-child{display:block}.post-leagues{margin-bottom:10px}}
@media(max-width:620px){.post-team-banner{padding:13px;gap:11px}.post-team-logo{width:44px;height:44px}.post-team-banner strong{font-size:16px}.post-league{font-size:9px}}
/* Club detail page: one team summary, roster and connected posts. */
.team-page-actions{display:flex;justify-content:space-between;gap:12px;margin:0 0 16px}.team-page-actions button{border:0;background:none;color:#54826a;font-size:12px;font-weight:800;padding:10px 0}.team-page-actions button:hover{color:#0a9a6b}.team-page-hero{position:relative;isolation:isolate;overflow:hidden;padding:30px 34px 25px;border:1px solid #d9ecdf;border-radius:14px;background:linear-gradient(110deg,#e8f7ed 10%,#f8fcf9 75%)}.team-page-watermark{position:absolute;right:-8px;top:-65px;width:290px;height:290px;display:grid;place-items:center;pointer-events:none;color:#7bc59a;opacity:.18;font-size:190px;font-weight:900}.team-page-watermark .club-emblem{padding:25px;background:transparent}.team-page-identity,.team-page-stats{position:relative;z-index:1}.team-page-identity{display:flex;align-items:center;gap:20px}.team-page-emblem{position:relative;display:grid;place-items:center;flex:none;width:74px;height:74px;overflow:hidden;border:1px solid #d5e7db;border-radius:50%;background:#fff;color:#0c9d70;font-size:29px;font-weight:850}.team-page-emblem .club-emblem{padding:8px}.team-page-identity h2{margin:6px 0;font-size:clamp(25px,3vw,38px);letter-spacing:-.06em}.team-page-identity div>span{color:#688677;font-size:12px}.team-page-stats{display:flex;gap:28px;margin-top:27px;padding-top:17px;border-top:1px solid #cfe8d5}.team-page-stats>div{display:grid;gap:3px}.team-page-stats strong{color:#136e4d;font-size:22px}.team-page-stats span{color:#7a9482;font-size:11px}.team-page-columns{display:grid;grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr);gap:23px;align-items:start;margin:25px 0 70px}.team-page-panel{min-width:0;padding:21px;background:#fff;border:1px solid #ebf0eb;border-radius:10px;box-shadow:0 3px 13px #242d2308}.team-page-panel-head{display:flex;justify-content:space-between;align-items:end;gap:10px;margin:0 0 17px}.team-page-panel-head h3{margin:6px 0 0;font-size:20px;letter-spacing:-.05em}.team-page-panel-head h3 span{margin-left:3px;color:#10a779;font-size:13px}.team-page-players{list-style:none;margin:0;padding:0}.team-page-players li{display:flex;align-items:center;gap:11px;min-width:0;padding:10px 2px;border-top:1px solid #eef2ee}.team-page-players strong{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-page-players small{color:#9baaa0;font-size:10px}.team-page-feed{display:grid;gap:12px}.team-page-feed .post-card{padding:18px;border-color:#e8eee9;box-shadow:none}.team-page-feed .post-content{font-size:13px;line-height:1.65}.team-page-posts-more{flex:none;border:0;background:none;padding:4px;color:#099e70;font-size:11px;font-weight:750}.team-page-posts-more:hover{text-decoration:underline}.team-page-empty{padding:35px 15px;border:1px solid #eef2ee;border-radius:8px;background:#fafcfa;color:#87978b;font-size:12px;text-align:center}
@media(max-width:850px){.team-page-columns{grid-template-columns:1fr;gap:16px}.team-page-hero{padding:24px}.team-page-panel{padding:18px}}
@media(max-width:620px){.team-page-hero{padding:20px}.team-page-watermark{width:180px;height:180px;top:-25px;right:-35px;font-size:120px}.team-page-identity{gap:12px}.team-page-emblem{width:56px;height:56px;font-size:22px}.team-page-identity h2{font-size:25px}.team-page-stats{margin-top:20px}.team-page-panel-head h3{font-size:18px}}

.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:28px 0 40px}.pagination button{min-width:92px;padding:11px 17px;border:1px solid #dfe5e0;border-radius:8px;background:#fff;color:#46534c;font-size:13px;font-weight:700}.pagination button:hover:not(:disabled){background:#ebfaf3;border-color:#12b886;color:#09976e}.pagination button:disabled{cursor:default;opacity:.4}.pagination span{min-width:100px;text-align:center;font-size:13px;font-weight:700;color:#69756d}.list-loading{grid-column:1/-1}@media(max-width:480px){.pagination{gap:10px}.pagination button{min-width:78px;padding:10px 12px}.pagination span{min-width:85px}}
