.league { max-width:840px;margin:auto;padding-bottom:100px; }
.league h1 { font-size:25px;line-height:1.45;margin:16px 0; }
.league h2 { font-size:19px;line-height:1.5; }
.league-hero { padding:28px 24px;border-radius:24px;background:linear-gradient(135deg,#007e68,#205b4e);color:white; }
.league-hero p { line-height:1.7;opacity:.88; }
.league-nav { display:flex;flex-wrap:wrap;gap:18px;padding:22px 0; }
.league-nav a { color:var(--tint);font-weight:600; }
.league-quarters { display:grid;gap:16px; }
.league-quarter { display:block;padding:22px;margin:16px 0;background:var(--bg-elevated);border:1px solid var(--separator);border-radius:22px; }
.league-kicker { color:var(--tint);font-size:14px;font-weight:600; }
.league-quarter dt { color:var(--label-2);margin:14px 0 5px; }
.league-quarter dd { margin:0;font-size:14px;line-height:1.6; }
.league-field { display:flex;flex-direction:column;gap:8px;margin:18px 0; }
.league input:not([type=checkbox]):not([type=file]),.league textarea { width:100%;box-sizing:border-box;padding:13px;border:1px solid var(--separator);border-radius:12px;color:var(--label);background:var(--bg-elevated);font:inherit;min-width:0; }
.league-check { display:flex;gap:10px;line-height:1.7;margin:20px 0;align-items:flex-start; }
.league-check input { margin-top:7px;flex-shrink:0; }
.league-rules { padding:15px;background:var(--fill);border-radius:12px;margin:15px 0; }
.league-rules div,.league-pre { white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8; }
.league-rules div { max-height:400px;overflow:auto;margin-top:15px; }
.league-entry-link { color:var(--label);text-decoration:none; }
.league-entry-link span,.league-entry-link p { color:var(--label-2); }
.league-actions { display:flex;gap:10px;flex-wrap:wrap;margin:20px 0; }
.league-notice { padding:16px;background:var(--fill);border-radius:12px;line-height:1.6; }
.league-pages { display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0; }
.league-pages--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.league-pages--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.league-pages>div { min-width:0;font-size:12px; }
.league-image-button { border:0;background:var(--fill);padding:0;width:100%;aspect-ratio:1; }
.league-image-button img { display:block;width:100%;height:100%;object-fit:contain; }
.league-page-tools { display:flex;flex-wrap:wrap;gap:3px;margin-top:6px; }
.league-page-tools button { border:0;background:var(--fill);color:var(--tint);min-height:36px; }
.league-proof { width:180px;max-height:240px;object-fit:contain;display:block; }
.league-viewer { width:94vw;max-width:1000px;height:90vh;padding:12px;background:var(--bg-elevated);border:0; }
.league-viewer::backdrop { background:#000b; }
.league-viewer img { display:block;width:100%;height:auto; }
.league-viewer button { position:sticky;top:0;padding:12px 20px;background:var(--tint);color:white;border:0;border-radius:12px; }
.league-admin-row { display:flex;flex-direction:column;padding:18px 0;gap:6px;border-bottom:1px solid var(--separator);color:var(--label); }
.league-search { display:flex;gap:10px; }
.league-example-card { display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr);gap:20px;align-items:center;padding:20px;margin:10px 0 26px;background:var(--bg-elevated);border:1px solid var(--separator);border-radius:22px; }
.league-example-cover { overflow:hidden;aspect-ratio:3/4;border-radius:12px;background:var(--fill); }
.league-example-cover img { width:100%;height:100%;object-fit:cover;object-position:top; }
.league-example-info { min-width:0; }
.league-example-info h2 { margin:8px 0;overflow-wrap:anywhere; }
.league-example-info p { color:var(--label-2);line-height:1.6;margin:7px 0; }
.league-example-info .btn { margin-top:8px; }
.league-example-header { margin:20px 0; }
.league-example-pages>div { min-width:0; }
.league-example-pages .league-image-button { aspect-ratio:3/4;overflow:hidden;border-radius:8px; }
.league-example-pages .league-image-button img { object-fit:contain; }
.league-example-pages span { display:block;margin-top:5px;color:var(--label-2); }
@media (max-width: 600px) { .league-example-card { grid-template-columns:110px minmax(0,1fr);gap:14px;padding:16px; } }
@media (max-width: 380px) { .league-example-card { grid-template-columns:88px minmax(0,1fr); } }
.home-league-register { display:block;padding:22px;margin:16px var(--gutter);border-radius:22px;background:var(--bg-elevated);color:var(--tint);text-decoration:none; }
.home-league-register strong { display:block;font-size:20px;margin-bottom:8px; }
