/* ATB9 public compact/mobile surfaces — working build 2026-09-27 */
.page-compact{max-width:960px;padding-bottom:18px}
.page-head{margin:12px auto 10px;display:flex;align-items:end;justify-content:space-between;gap:12px}
.page-head h1{font-size:clamp(24px,4vw,36px);line-height:1;margin:3px 0 0;letter-spacing:-.03em}
.page-head p{margin:5px 0 0;color:var(--muted);font-size:12px;max-width:680px}
.small-link{font-size:10px;font-weight:850;color:#8e6a12;white-space:nowrap}
.club-selector{display:flex;gap:7px;overflow:auto;padding:2px 0 7px;scrollbar-width:none}.club-selector::-webkit-scrollbar{display:none}
.club-selector button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer}.club-selector button.active{background:#0d6f3d;color:#fff;border-color:#0d6f3d}
.club-player{display:grid;grid-template-columns:220px 1fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}
.club-visual{min-height:330px;background:#0c5c36;position:relative;overflow:hidden}.club-visual img.hero{width:100%;height:100%;object-fit:cover;object-position:center 43%}.club-logo{position:absolute;left:10px;top:10px;width:58px;height:58px;object-fit:contain;background:rgba(255,255,255,.94);border-radius:50%;padding:5px;box-shadow:0 4px 16px rgba(0,0,0,.18)}
.club-visual-empty{width:100%;height:100%;min-height:330px;display:grid;place-items:center;text-align:center;padding:20px;background:linear-gradient(145deg,#111,#252525);color:#fff}.club-visual-empty b{font-size:28px}.club-visual-empty span{display:block;color:#bbb;font-size:10px;margin-top:5px}
.club-panel{padding:17px;min-width:0}.club-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.club-title-row h2{margin:2px 0 3px;font-size:24px;line-height:1}.club-state{font-size:8px;font-weight:900;letter-spacing:.08em;border-radius:999px;padding:5px 7px;background:#eaf6ee;color:#0d6f3d;white-space:nowrap}
.club-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0}.club-meta-grid div{border:1px solid var(--line);border-radius:10px;padding:8px;background:#fbfaf6}.club-meta-grid small{display:block;font-size:8px;color:var(--muted)}.club-meta-grid b{display:block;margin-top:2px;font-size:10px;line-height:1.25}
.player-tabs{display:flex;gap:5px;overflow:auto;margin:8px 0 10px}.player-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:850;white-space:nowrap}.player-tabs button.active{background:#111;color:#fff;border-color:#111}
.club-tab{display:none}.club-tab.active{display:block}.club-tab p{font-size:11px;color:#555;margin:5px 0}.club-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.club-links a{font-size:9px;font-weight:850;border:1px solid var(--line);border-radius:9px;padding:7px 9px;background:#fff}.club-links a.primary{background:#0d6f3d;color:#fff;border-color:#0d6f3d}
.match-mini-list{display:grid;gap:5px}.match-mini{display:grid;grid-template-columns:70px 1fr auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff}.match-mini time{font-size:9px;font-weight:900}.match-mini b{font-size:10px}.match-mini small{font-size:8px;color:var(--muted)}.match-mini strong{font-size:11px}
.sync-note{border-left:3px solid #d6b336;background:#fff9e7;border-radius:8px;padding:8px 10px;font-size:9px;color:#65531a;margin-top:8px}
.pro-contact{margin-top:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px}.pro-contact summary{cursor:pointer;font-size:11px;font-weight:900}.pro-contact form{margin-top:10px}.pro-contact .form input,.pro-contact .form select,.pro-contact .form textarea{font-size:13px;min-height:38px}.pro-contact .form textarea{min-height:80px}
.match-feature{display:grid;grid-template-columns:170px 1fr;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.match-feature-media{background:#0b5f39;min-height:210px}.match-feature-media img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.match-feature-copy{padding:15px}.match-feature-copy h2{font-size:22px;line-height:1.05;margin:4px 0 7px}.match-feature-copy p{font-size:11px;color:#565656;margin:0}.status-chip{display:inline-flex;border-radius:999px;padding:5px 7px;font-size:8px;font-weight:900;background:#fff0cf;color:#7b5a08}
.match-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.season-list,.standing-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px}.season-list h2,.standing-box h2{font-size:17px;margin:0 0 8px}.season-row{display:grid;grid-template-columns:66px 1fr auto;gap:7px;padding:8px 0;border-bottom:1px solid #eee}.season-row:last-child{border:0}.season-row time{font-size:9px;font-weight:900}.season-row b{font-size:10px}.season-row small{display:block;font-size:8px;color:var(--muted)}.season-row strong{font-size:10px}.standing-box .empty-rank{border:1px dashed #cfc8b8;border-radius:11px;padding:14px;text-align:center;font-size:10px;color:#777}
.atv-head{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center;background:#0b0c0e;color:#fff;border-radius:18px;padding:12px;border:1px solid #262626}.atv-head img{width:120px;aspect-ratio:4/5;object-fit:cover;border-radius:12px}.atv-head h1{font-size:29px;line-height:1;margin:3px 0 6px}.atv-head p{font-size:11px;color:#d2d2d2;margin:0}.atv-presenter{display:flex;align-items:center;gap:8px;margin-top:9px}.next-badge{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d6b336;color:#111;font-size:9px;font-weight:950}.atv-presenter b{font-size:10px;display:block}.atv-presenter span{font-size:8px;color:#aaa;display:block}
.atv-player{margin-top:10px;background:#0b0c0e;color:#fff;border-radius:18px;overflow:hidden;border:1px solid #262626}.atv-stage{aspect-ratio:16/9;background:#000}.atv-stage iframe,.atv-stage video{width:100%;height:100%;border:0}.atv-meta{padding:11px 13px}.atv-meta h2{font-size:16px;margin:2px 0 4px}.atv-meta p{margin:0;color:#bbb;font-size:9px}
.atv-playlist{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.atv-item{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;text-align:left;padding:0;cursor:pointer}.atv-item img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#111}.atv-item span{display:block;padding:8px}.atv-item b{font-size:9px;display:block}.atv-item small{font-size:8px;color:var(--muted)}
@media(max-width:700px){
 .page-compact{width:min(100% - 16px,960px)}.page-head{align-items:flex-start;margin:8px auto}.page-head h1{font-size:24px}.page-head p{font-size:10px}.small-link{font-size:9px}
 .club-player{grid-template-columns:100px 1fr;border-radius:15px}.club-visual{min-height:250px}.club-visual-empty{min-height:250px;padding:8px}.club-visual-empty b{font-size:16px}.club-logo{width:38px;height:38px;left:6px;top:6px}.club-panel{padding:10px}.club-title-row h2{font-size:18px}.club-state{font-size:7px;padding:4px 5px}
 .club-meta-grid{grid-template-columns:repeat(2,1fr);gap:4px;margin:8px 0}.club-meta-grid div{padding:6px}.club-meta-grid b{font-size:9px}.player-tabs{margin:6px 0}.player-tabs button{font-size:8px;padding:5px 7px}.club-tab p{font-size:9px}.match-mini{grid-template-columns:54px 1fr auto;padding:6px;gap:5px}.match-mini time,.match-mini b{font-size:8px}.match-mini small{font-size:7px}.club-links a{font-size:8px;padding:6px 7px}
 .match-feature{grid-template-columns:95px 1fr}.match-feature-media{min-height:170px}.match-feature-copy{padding:10px}.match-feature-copy h2{font-size:17px}.match-feature-copy p{font-size:9px}.match-grid{grid-template-columns:1fr}.season-list,.standing-box{padding:10px}.season-row{grid-template-columns:54px 1fr auto;padding:6px 0}.season-row time,.season-row b,.season-row strong{font-size:8px}.season-row small{font-size:7px}
 .atv-head{grid-template-columns:82px 1fr;padding:9px}.atv-head img{width:82px;border-radius:9px}.atv-head h1{font-size:21px}.atv-head p{font-size:9px}.atv-playlist{grid-template-columns:1fr 1fr}.atv-item:nth-child(3){grid-column:1/-1}.atv-meta h2{font-size:14px}
}
@media(max-width:420px){
 .club-player{grid-template-columns:86px 1fr}.club-visual{min-height:230px}.club-panel{padding:8px}.club-title-row h2{font-size:16px}.club-meta-grid b{font-size:8px}.club-meta-grid small{font-size:7px}
 .match-feature{grid-template-columns:84px 1fr}.match-feature-copy h2{font-size:15px}
}
.archive-poster{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 20%,#303030 0%,#151515 46%,#090909 100%);color:#fff;border-bottom:1px solid #2c2c2c}
.archive-poster b{font-size:18px;letter-spacing:.12em;color:#d8af43}.archive-poster span{margin-top:4px;font-size:10px;font-weight:900}.archive-poster small{margin-top:2px;font-size:7px;color:#aaa}

/* Center compact public headers on phone */
@media(max-width:700px){
 .page-head{text-align:center!important;display:block!important}
 .page-head .small-link{display:inline-block!important;margin-top:6px!important}
 .atv-head{text-align:center!important;grid-template-columns:1fr!important}
 .atv-head img{margin:0 auto!important}
 .atv-presenter{justify-content:center!important}
 .club-title-row{text-align:center!important;display:block!important}
 .club-state{display:inline-block!important;margin-top:5px!important}
 .club-meta-grid{text-align:center!important}
 .club-links{justify-content:center!important}
 .match-feature-copy{text-align:center!important}
 .match-feature-copy .club-links{justify-content:center!important}
}

/* Public video policy: only the approved tournament item remains visible. */
.atv-playlist .atv-item:nth-child(1),.atv-playlist .atv-item:nth-child(3){display:none!important}
.atv-playlist{grid-template-columns:1fr!important;max-width:430px;margin-left:auto;margin-right:auto}
.atv-stage{position:relative}
.atv-stage>video{display:none!important}
.atv-stage:has(>video)::before{content:"Vidéo publique validée : sélectionnez le tournoi ASM 34 ci-dessous.";position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;background:radial-gradient(circle at 50% 20%,#303030,#111 58%,#070707);color:#fff;font-size:12px;font-weight:850;z-index:1}
.atv-stage:has(>iframe)::before{display:none}

.rank-current{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;border:1px solid #d9c16b;background:#fff9e8;border-radius:12px;padding:9px;margin:7px 0 9px}
.rank-current strong{font-size:22px;line-height:1;color:#8a680f}.rank-current span{font-size:11px;font-weight:900}.rank-current small{grid-column:2;font-size:8px;color:var(--muted)}
.rank-table{display:grid;gap:3px}.rank-row{display:grid;grid-template-columns:24px 1fr auto;gap:6px;align-items:center;padding:5px 6px;border-bottom:1px solid #eee;font-size:8px}.rank-row b{font-size:8px}.rank-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row strong{font-size:8px}.rank-row.is-current{background:#eef8f1;border-radius:7px;border-bottom-color:transparent;color:#0d6f3d}
@media(max-width:700px){.rank-current strong{font-size:18px}.rank-current span{font-size:9px}.rank-row{grid-template-columns:20px 1fr auto;font-size:7px}.rank-row b,.rank-row strong{font-size:7px}}
