/* Extras for the 'Building a football data warehouse' blog series (code, tables, figures, series nav). */
.col h3{font-size:20px;letter-spacing:-.02em;margin:30px 0 8px}
.col h4{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#39725b;margin:20px 0 6px}
.col a.in{color:#2d7a57;font-weight:700}
pre{background:#13231c;color:#e6f2ec;border-radius:12px;padding:16px 18px;overflow-x:auto;font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;margin:14px 0 18px}
pre .c{color:#7fa596}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:#e3ebe6;padding:1px 5px;border-radius:4px}
pre code{background:none;padding:0;font-size:inherit}
figure.fig{margin:22px 0 24px}
figure.fig img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #dfe5e0;background:#fff}
figure.fig a{display:block}
figure.fig figcaption{font-size:13px;color:var(--soft);margin-top:8px}
figure.fig.narrow img{max-width:460px;margin:0 auto}
table.t{width:100%;border-collapse:collapse;font-size:15px;background:#fff;border:1px solid #dfe5e0;border-radius:12px;overflow:hidden;margin:14px 0 20px}
table.t th,table.t td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #edf1ee}
table.t th{background:#f4f7f5;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#285c46}
table.t td.n,table.t th.n{text-align:right;font-variant-numeric:tabular-nums}
table.t tr:last-child td{border-bottom:0}
table.t td code{white-space:nowrap}
.scroll{overflow-x:auto}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0 20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 20px}
.box{background:#fff;border:1px solid #dfe5e0;border-radius:12px;padding:16px 18px}
.box h4{margin:0 0 6px!important}
.box p,.box li{font-size:15px!important;margin:0!important;color:#33443c}
.box ul{margin:0!important;padding-left:18px}
.box li+li{margin-top:4px!important}
.box.bronze{border-top:4px solid #d9a066}
.box.silver{border-top:4px solid #a9b4ae}
.box.gold{border-top:4px solid #e8c14f}
.box.hl{border-color:#39a675;box-shadow:inset 0 0 0 1px #39a675}
.checklist{list-style:none;padding:0!important}
.checklist li{position:relative;padding-left:30px}
.checklist li:before{content:"✓";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:#d6eee3;color:#285c46;font-size:12px;font-weight:900;display:grid;place-items:center}
.callout.warn{background:#fff8e6;border-left-color:#d6a417}
.callout.warn p{color:#5c4710}
.series{background:#e7f5ef;border:1px solid #cfe3d8;border-radius:14px;padding:16px 18px;margin:0 0 34px}
.series .lbl{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#39725b;margin-bottom:10px}
.series ol{list-style:none;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.series li{margin:0!important}
.series li a,.series li span{display:block;height:100%;background:#fff;border:1px solid #cfe3d8;border-radius:10px;padding:10px 12px;font-size:14px!important;font-weight:700;color:#13231c}
.series li a:hover{border-color:#39a675}
.series small{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#39725b;margin-bottom:2px}
.series .cur{background:#13231c;color:#fff;border-color:#13231c}
.series .cur small{color:var(--mint)}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}
.pn a{display:block;background:#fff;border:1px solid #dfe5e0;border-radius:12px;padding:16px 18px;font-weight:800;color:#13231c}
.pn a:hover{border-color:#39a675}
.pn a small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#39725b;margin-bottom:4px}
.pn .nx{text-align:right;grid-column:2}
@media(max-width:760px){.grid2,.grid3,.pn{grid-template-columns:1fr}.pn .nx{grid-column:auto}.series ol{grid-template-columns:1fr 1fr}}
