/*
Theme Name: BootyNet Pride (Blocks)
Description: Block theme for bootynet.gay. Rainbow logo in June only. Fonts self-hosted (OFL).
Requires at least: 6.4
Version: 1.0.1
Text Domain: bootynet-pride-blocks
*/
@font-face { font-family:"Big Shoulders Display"; src:url("https://cdn.bootynet.gay/gay/assets/fonts/BigShouldersDisplay-Variable.woff2") format("woff2"); font-weight:100 900; font-display:swap; }
@font-face { font-family:"Space Grotesk"; src:url("https://cdn.bootynet.gay/gay/assets/fonts/SpaceGrotesk-Variable.woff2") format("woff2"); font-weight:300 700; font-display:swap; }

:root {
  --bg:#f3f5f7; --ink:#1b2430; --muted:#566170; --grey-logo:#8a939e; --line:#cfd6de; --panel:#fff;
  --btn-bg:#1b2430; --btn-ink:#f3f5f7;
  --rainbow:linear-gradient(90deg,#e40303,#ff8c00,#f2c200,#008026,#004dff,#750787);
  --display:"Big Shoulders Display",Impact,"Arial Narrow",sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --bg:#11161d; --ink:#e9edf2; --muted:#9aa5b3; --grey-logo:#6f7a87; --line:#2a3340; --panel:#181f28; --btn-bg:#e9edf2; --btn-ink:#11161d; }
}
html { scroll-padding-top:env(safe-area-inset-top,0px); }
body { padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px); }
a:focus-visible, button:focus-visible { outline:3px solid #004dff; outline-offset:3px; }

/* the one moving part: grey until colour is on */
.pg, .brand a { display:inline-block; color:var(--grey-logo); transition:color .4s; }
:root[data-colour="on"] .pg, :root[data-colour="on"] .brand a { background:var(--rainbow); -webkit-background-clip:text; background-clip:text; color:transparent; }

.site-header { max-width:60rem; margin-inline:auto; padding:1.25rem 1.5rem; gap:.75rem 2rem; }
.brand { font-family:var(--display); font-weight:900; font-size:1.9rem; line-height:1; margin:0; }
.brand a { text-decoration:none; }
.site-header .wp-block-navigation a { text-decoration:none; font-weight:500; }
.site-header .wp-block-navigation a:hover { text-decoration:underline; }
button.bn-preview { margin-left:auto; font:inherit; font-weight:500; background:var(--btn-bg); color:var(--btn-ink); border:0; border-radius:.375rem; padding:.6rem 1rem; cursor:pointer; }

.wordmark { font-family:var(--display); font-weight:900; font-size:clamp(3.75rem,16vw,11.5rem); line-height:.88; letter-spacing:-.01em; margin:1rem 0 1.5rem; text-wrap:balance; }
main .section { margin-top:4.5rem; }
main .lead { font-size:1.25rem; line-height:1.5; }
main p { max-width:62ch; }
main .wp-block-table { overflow-x:auto; }
main table { border-collapse:collapse; width:100%; min-width:38rem; background:var(--panel); }
main th, main td { text-align:left; padding:.85rem 1rem; border:1px solid var(--line); vertical-align:top; }
main td:first-child { font-weight:500; white-space:nowrap; }
.bn-dl { margin:0; display:grid; grid-template-columns:minmax(0,14rem) 1fr; gap:.9rem 2rem; max-width:52rem; }
.bn-dl dt { font-weight:700; } .bn-dl dd { margin:0; color:var(--muted); }
@media (max-width:40rem) { .bn-dl { grid-template-columns:1fr; gap:.2rem; } .bn-dl dd { margin-bottom:.8rem; } }

.site-footer { border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
.site-footer p { max-width:70ch; }
.bn-status { color:var(--ink); font-weight:500; }
@media (prefers-reduced-motion: reduce) { .pg, .brand a { transition:none; } }
.wp-site-blocks .site-footer > * { margin-left: 0 !important; margin-right: 0 !important; max-width: 70ch; }
main .bn-dl { margin: 1rem 0 0 !important; max-width: none; }
.wp-site-blocks .bn-badges { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .75rem 1rem; margin: 1.5rem 0 0 !important; max-width: none; }