increase contrast on lane buttons, fix font definition

This commit is contained in:
Lee Hanken
2025-09-04 18:19:56 +01:00
parent f3b156b31f
commit f55f24957a

View File

@@ -25,19 +25,22 @@ https://creativecommons.org/publicdomain/
local("BebasNeue"), local("BebasNeue"),
url("/css/bebas/BebasNeue.woff") format("woff"); url("/css/bebas/BebasNeue.woff") format("woff");
} }
@font-face {
font-family: "PatrickHand";
src:
local("PatrickHand"),
url("/css/patrickhand/PatrickHand-Regular.ttf") format("truetype");
}
:root { :root {
--background-primary: #fffff7/*#fafafa#fbfbee #dfdfdf */; --background-primary: #fffff7/*#fafafa#fbfbee #dfdfdf */;
--text-primary: #4d4d4d; /* HPR Grey */ --text-primary: #4d4d4d; /* HPR Grey */
--banner-text-primary: #000000; --banner-text-primary: #000000;
--banner-background-color: #40a5b9; --background-secondary: #4d4d4d;
/* --background-secondary: #4d4d4d; */
--background-secondary: #00003e;
--text-secondary: #dfdfdf; --text-secondary: #dfdfdf;
--link-primary: #004852 /*#154a60*/; --link-primary: #004852 /*#154a60*/;
--link-primary-hover: #b54c08/*#f8961e*/; --link-primary-hover: #b54c08/*#f8961e*/;
--link-secondary: #a8f8ff; --link-secondary: #a8f8ff;
--link-secondary-hover: #f9e9c2; --link-secondary-hover: #f9e9c2;
--link-title-color: #00003e;
--lane-button-border: #80b4c0; --lane-button-border: #80b4c0;
--input-border-primary: #4d4d4d; --input-border-primary: #4d4d4d;
@@ -50,22 +53,12 @@ https://creativecommons.org/publicdomain/
--shadow-main-header-color: hsl(190deg 48% 49% / 0.2); --shadow-main-header-color: hsl(190deg 48% 49% / 0.2);
--shadow-secondary-color: hsl(0, 0%, 30.2%); --shadow-secondary-color: hsl(0, 0%, 30.2%);
--shadow-cards: var(--shadow-secondary-color); --shadow-cards: var(--shadow-secondary-color);
--content-max-width: 1080pt;
/* screen breakpoints */ /* screen breakpoints */
--for-phone-only: 599px; --for-phone-only: 599px;
--for-tablet-portrait-up: 600px; --for-tablet-portrait-up: 600px;
--for-tablet-landscape-up: 900px; --for-tablet-landscape-up: 900px;
--for-desktop-up: 1200px; --for-desktop-up: 1200px;
--for-big-desktop-up: 1800px; --for-big-desktop-up: 1800px;
--default-header-x-font-weight: bold;
--default-header-x-margin: 1.25rem 0 0.75rem 0;
--default-header-1-font-size: 1.5rem;
--default-header-2-font-size: 1.45rem;
--default-header-3-font-size: 1.25rem;
--default-header-4-font-size: 1.15rem;
} }
html { html {
@@ -87,27 +80,24 @@ body {
padding: 0; padding: 0;
min-height: 100vh; min-height: 100vh;
} }
#top_navigation {
display: flex; body > nav {
flex-direction: row-reverse;
justify-content: space-between;
background-color: var(--background-secondary); background-color: var(--background-secondary);
color: var(--text-secondary); color: var(--text-secondary);
padding: 0.5rem;
} }
#top_navigation > nav a { body > nav a {
color: var(--link-secondary); color: var(--link-secondary);
} }
#top_navigation > nav a:hover { body > nav a:hover {
color: var(--link-secondary-hover); color: var(--link-secondary-hover);
} }
#top_navigation > nav menu { body > nav ul {
background-color: inherit; background-color: inherit;
color: inherit; color: inherit;
margin: 0; margin: 0;
padding: 0.25rem; padding: 0.25rem;
} }
#top_navigation > nav menu li { body > nav ul li {
display: inline-block; display: inline-block;
background-color: inherit; background-color: inherit;
color: inherit; color: inherit;
@@ -116,30 +106,23 @@ body {
padding: 0; padding: 0;
padding-right: var(--link-spacing-horizontal); padding-right: var(--link-spacing-horizontal);
} }
#top_navigation > nav menu li a { body > nav ul li a {
padding: 0.25rem 0; padding: 0.25rem 0;
} }
body > header { body > header {
padding: clamp(0.5rem, -0.25rem + 3vw, 1rem) 0.25rem;
background-color: var(--banner-background-color);
background-image: url("/images/main-header-background.png");
background-size: cover;
background-repeat: no-repeat;
background-position: left top;
color: var(--banner-text-primary);
align-items: center;
border-top: var(--background-secondary) solid 1rem;
}
body > header .bounding-box {
background: none;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
flex-flow: wrap; flex-flow: wrap;
justify-content: space-between; justify-content: space-between;
max-width: var(--content-max-width); padding: 0.25rem;
margin: 0 auto; background-image: url("/images/hpr-splatter-logo.svg"), url("/images/main-header-background.png");
background-size: 59%, cover;
background-repeat: no-repeat, no-repeat;
background-position: right -15px top -20px, left top;
color: var(--banner-text-primary);
align-items: center;
} }
body > header .bounding-box > * { body > header > * {
margin: 0; margin: 0;
padding: 0; padding: 0;
flex: 1 1 auto; flex: 1 1 auto;
@@ -149,9 +132,6 @@ body > header .bounding-box > * {
body > main { body > main {
flex: 1 0 auto; flex: 1 0 auto;
padding: 0.25rem; padding: 0.25rem;
max-width: var(--content-max-width);
margin-left: auto;
margin-right: auto;
} }
body > footer { body > footer {
flex: 0 1 auto; flex: 0 1 auto;
@@ -162,10 +142,6 @@ body > footer {
text-align: center; text-align: center;
line-height: 1.25; line-height: 1.25;
} }
body > footer #copyright {
max-width: var(--content-max-width);
margin: 0 auto;
}
body > footer a { body > footer a {
color: var(--link-secondary); color: var(--link-secondary);
} }
@@ -198,27 +174,27 @@ blockquote {
} }
h1 { h1 {
font-size: var(--default-header-1-font-size); font-size: 1.5rem;
margin: var(--default-header-x-margin); margin: 1.25rem 0 0.75rem 0;
} }
h2, h2,
article * h1, article * h1,
section > header:first-child { section > header:first-child {
font-size: var(--default-header-2-font-size); font-size: 1.45rem;
margin: var(--default-header-x-margin); margin: 1.25rem 0 0.75rem 0;
} }
h3, h3,
article * h2 { article * h2 {
font-size: var(--default-header-3-font-size); font-size: 1.25rem;
margin: var(--default-header-x-margin); margin: 1.25rem 0 0.75rem 0;
} }
h4, h4,
article * h3 { article * h3 {
font-size: var(--default-header-4-font-size); font-size: 1.15rem;
margin: var(--default-header-x-margin); margin: 1.25rem 0 0.75rem 0;
} }
img { img {
@@ -226,7 +202,7 @@ img {
height: auto; height: auto;
} }
dl, ul { ul {
padding-left: 1.15rem; padding-left: 1.15rem;
} }
@@ -237,28 +213,9 @@ li {
li:last-child { li:last-child {
margin-bottom: 0.25rem; margin-bottom: 0.25rem;
} }
dt, dd {
line-height: 1.25;
}
dt {
display: list-item;
list-style-type: disc;
margin-bottom: 0.15rem;
}
dd {
margin-bottom: 0.35rem;
margin-left: 1rem;
}
a { a {
text-decoration: none;
color: var(--link-primary); color: var(--link-primary);
text-decoration-style: dotted;
text-decoration-color: inherit;
text-decoration-thickness: .125rem;
text-underline-offset: 0.2rem;
} }
a:hover { a:hover {
cursor: pointer; cursor: pointer;
@@ -300,21 +257,15 @@ article > p,
flex-wrap: wrap; flex-wrap: wrap;
gap: 1.0rem; gap: 1.0rem;
justify-content: space-around; justify-content: space-around;
} justify-items: space-around;
.lane.stack {
flex-direction: column;
justify-content: flex-start;
}
.lane.stack > * {
flex: 1 0 100%;
} }
#podcast_lane > .lane, #podcast_lane > .lane,
#project_lane > .lane, #project_lane > .lane,
#latest_lane.lane { #latest_lane.lane {
justify-content: flex-between; justify-content: flex-start;
} }
.lane > article, .lane > article {
#hosts tr {
/* Add shadows to create the "card" effect */ /* Add shadows to create the "card" effect */
border-top: thin solid var(--shadow-cards); border-top: thin solid var(--shadow-cards);
border-left: thin solid var(--shadow-cards); border-left: thin solid var(--shadow-cards);
@@ -327,8 +278,7 @@ article > p,
overflow-x: scroll; overflow-x: scroll;
padding-bottom: 1rem; padding-bottom: 1rem;
} }
.lane > article:hover, .lane > article:hover {
#hosts tr:hover {
box-shadow: box-shadow:
4px 8px 8px var(--shadow-cards), 4px 8px 8px var(--shadow-cards),
8px 16px 16px var(--shadow-cards); 8px 16px 16px var(--shadow-cards);
@@ -337,8 +287,7 @@ article > p,
margin-left: 1rem; margin-left: 1rem;
margin-right: 1rem; margin-right: 1rem;
} }
.lane > article > header, .lane > article > header {
.lane > article > h3 {
background: var(--background-secondary); background: var(--background-secondary);
padding: 1.5rem 1rem 1rem 1rem; padding: 1.5rem 1rem 1rem 1rem;
margin: 0; margin: 0;
@@ -346,50 +295,35 @@ article > p,
font-size: 1.45rem; font-size: 1.45rem;
color: var(--background-primary); color: var(--background-primary);
} }
.lane > article > header a, .lane > article > header a {
.lane > article > h3 a {
color: var(--link-secondary); color: var(--link-secondary);
} }
.lane > article > header a:hover, .lane > article > header a:hover {
.lane > article > h3:hover {
color: var(--link-secondary-hover); color: var(--link-secondary-hover);
} }
.lane.stack> * > header * {
margin-top: 0;
margin-bottom: 0;
}
.lane.stack > * > header p {
font-size: var(--default-header-4-font-size);
margin-left: 22px;
}
a.lane-button { a.lane-button {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: center; justify-content: center;
margin: 0.5rem var(--link-spacing-horizontal); margin: 0.5rem var(--link-spacing-horizontal);
padding: 0.5rem 0.25rem; padding: 0.5rem 0.25rem;
border-radius: 10px 25px 10px 25px; border-width: 3.5px;
border-width: 4px;
border-color: var(--lane-button-border); border-color: var(--lane-button-border);
border-style: solid; border-style: solid;
border-radius: 10px; border-radius: 10px;
text-align: center; text-align: center;
image-rendering: pixelated;
background-image: url("../images/lane-button-background.png"); background-image: url("../images/lane-button-background.png");
} }
a.lane-button p { a.lane-button p {
font-family: 'Patrick Hand', cursive; font-family: 'PatrickHand', sans-serif;
text-transform: lowercase; text-transform: lowercase;
font-weight: bold; font-size: 1.4em;
font-size: 1.2em; mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png");
mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png");
mask-size: 20%;
mask-repeat: repeat; mask-repeat: repeat;
mask-size: 10%;
background-clip: text; background-clip: text;
color: black;
margin: -0.25rem; margin: -0.25rem;
transform: scaleY(1.1);
letter-spacing: 1px; letter-spacing: 1px;
padding: 0.25rem; padding: 0.25rem;
} }
@@ -399,120 +333,76 @@ a.lane-button:hover {
2px 4px 4px var(--link-primary-hover); 2px 4px 4px var(--link-primary-hover);
} }
a.lane-button img { a.lane-button img {
height: clamp(95px, calc(100vw - var(--for-tablet-portrait-up)), 110px); height: clamp(100px, calc(100vw - var(--for-tablet-portrait-up)), 110px);
transform: scaleX(0.9); transform: scaleX(0.9);
mask-image: url("../images/charcoal.png"); mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png");
mask-size: 60%;
mask-repeat: repeat; mask-repeat: repeat;
padding: 0.7rem; mask-size: 70%;
padding: 0.5rem;
box-sizing: border-box; box-sizing: border-box;
} }
#podcast_lane a.lane-button:first-of-type img { #podcast_lane a.lane-button:first-of-type img {
mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png"); mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png");
mask-size: 95%; mask-repeat: repeat;
padding: 0px; mask-size: 60%;
padding: 0.1rem;
} }
#podcast_lane a.lane-button:first-of-type p { #podcast_lane a.lane-button:first-of-type p {
mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.1)), url("../images/charcoal.png"); font-size: 1.5rem;
font-size: 1.3em;
} }
section:nth-of-type(odd) .lane a:nth-of-type(1) { section:nth-of-type(odd) .lane a:nth-of-type(1) {
border-radius: 20px 15px 25px 15px; border-radius: 20px 15px 25px 15px;
background-size: 400%;
background-position: 50% 0%;
} }
section:nth-of-type(odd) .lane a:nth-of-type(2) { section:nth-of-type(odd) .lane a:nth-of-type(2) {
border-radius: 20px 15px 25px 15px; border-radius: 20px 15px 25px 15px;
background-size: 200%;
background-position: 0% 50%;
} }
section:nth-of-type(odd) .lane a:nth-of-type(3) { section:nth-of-type(odd) .lane a:nth-of-type(3) {
border-radius: 10px 25px 15px 20px; border-radius: 10px 25px 15px 20px;
background-size: 400%;
background-position: 75% 0%;
} }
section:nth-of-type(odd) .lane a:nth-of-type(4) { section:nth-of-type(odd) .lane a:nth-of-type(4) {
border-radius: 15px 15px 10px 20px; border-radius: 15px 15px 10px 20px;
background-size: 200%;
background-position: 25% 0%;
} }
section:nth-of-type(even) .lane a:nth-of-type(1) { section:nth-of-type(even) .lane a:nth-of-type(1) {
border-radius: 25px 10px 15px 15px; border-radius: 25px 10px 15px 15px;
} }
section:nth-of-type(even) .lane a:nth-of-type(2) { section:nth-of-type(even) .lane a:nth-of-type(2) {
border-radius: 20px 10px 15px 10px; border-radius: 20px 10px 15px 10px;
background-size: 200%;
background-position: 50% 0%;
} }
section:nth-of-type(even) .lane a:nth-of-type(3) { section:nth-of-type(even) .lane a:nth-of-type(3) {
border-radius: 10px 20px 10px 15px; border-radius: 10px 20px 10px 15px;
background-size: 200%;
background-position: % 50%;
} }
section:nth-of-type(even) .lane a:nth-of-type(4) { section:nth-of-type(even) .lane a:nth-of-type(4) {
border-radius: 15px 10px 25px 30px; border-radius: 15px 10px 25px 30px;
background-size: 800%;
background-position: 55% 50%;
} }
#tag_line, #tag_line,
#title { #title {
text-transform: uppercase; text-transform: uppercase;
} }
#tag_line { #tag_line {
line-height: 1.1; line-height: 1;
} }
#tag_line *, #tag_line *,
#title * { #title * {
margin: 0; margin: 0;
padding: 0; padding: 0;
flex: 1 1 auto;
background: none;
} }
#title { #title h1 {
background-image: url("/images/hpr-splatter-logo.svg");
background-repeat: no-repeat;
background-size: 15rem;
background-position: left 8.5em top -2em;
}
#title a {
color: var(--link-title-color);
}
#title a:hover {
color: var(--link-primary-hover);
}
#title #site_acronym {
font-size: 7.5rem; font-size: 7.5rem;
letter-spacing: -0.65rem; letter-spacing: -0.65rem;
line-height: 0.75; line-height: 0.75;
margin-bottom: 0.25rem;
color: transparent;
} }
#title #site_acronym a { #tag_line h2 {
text-decoration: none;
text-shadow: 0 1px var(--link-secondary);
}
#title #site_name {
font-size: var(--default-header-2-font-size);
font-weight: bold;
}
#tag_line {
text-align: center;
}
#tag_line #tag1,
#tag_line #tag2 {
text-transform: uppercase; text-transform: uppercase;
font-family: "BebasNeue", sans-serif; font-family: "BebasNeue", sans-serif;
font-size: clamp(1.03rem, -0.25rem + 3vw, var(--default-header-4-font-size)); font-size: 1.15rem;
font-weight: var(--default-header-x-font-weight);
letter-spacing: 0.05rem; letter-spacing: 0.05rem;
} }
#tag_line #tag1 { #tag_line h2:first-child {
font-size: clamp(2.1rem, calc(100vw - 360px + 2.1rem), 2.3rem); font-size: 2rem;
} }
#tag_line #tag3 { #tag_line h3 {
text-align: center;
text-transform: capitalize; text-transform: capitalize;
font-weight: var(--default-header-x-font-weight); font-size: 1.15rem;
} }
#site_url { #site_url {
font-family: "GNUTypewriter", monospace; font-family: "GNUTypewriter", monospace;
@@ -539,7 +429,7 @@ fieldset > table {
width: calc(100vw + -16vw + -1rem); width: calc(100vw + -16vw + -1rem);
max-width: 100%; max-width: 100%;
} }
fieldset > input,
fieldset > table td input, fieldset > table td input,
fieldset > table td textarea { fieldset > table td textarea {
width: calc(100vw + -16vw + -1.5rem); width: calc(100vw + -16vw + -1.5rem);
@@ -574,127 +464,41 @@ fieldset > table td input[type="radio"] {
width: initial; width: initial;
margin-bottom: 0.5rem; margin-bottom: 0.5rem;
} }
#search form {
flex: 1 1 auto fieldset > input {
} background: var(--background-secondary);
#search fieldset { color: white;
padding-top: 1rem; font-weight: 600;
} padding: 0.5rem;
#search fieldset > legend { border: thin solid var(--input-border-primary);
font-weight: var(--default-header-x-font-weight); border-radius: 0.2rem;
}
#search fieldset > input {
width: 94%;
}
#search fieldset > input[type="submit"] {
background-color: var(--background-secondary);
color: var(--text-secondary);
width: 100%;
}
#search fieldset > input[type="submit"]:hover {
background-color: var(--link-primary-hover);
color: var(--background-primary);
}
#search fieldset > p {
margin-top: 0.5rem;
margin-bottom: 0.5rem;
} }
.no-css { .no-css {
display: none; display: none;
} }
#tags .date {
margin:0;
font-size: 1rem;
}
#tags #tag_initial_letter_index {
columns: 3 auto;
}
#tags #tag_initial_letter_index li {
font-weight: bold;
list-style: none;
}
#tags .tag-index {
columns: 3 calc(var(--for-tablet-landscape-up) /3 );
column-gap: 1rem;
}
#tags .index-link {
text-align: right;
}
#comments > article > .show-meta {
font-size: smaller;
}
#hosts tr {
gap: 0;
justify-content: flex-start;
}
#hosts td {
display: inline-block;
}
#hosts td:nth-child(-n+2) {
background: var(--background-secondary);
color: var(--background-primary);
}
#hosts td:nth-child(-n+2) a {
color: var(--link-secondary);
}
#hosts td:nth-child(-n+2) a:hover {
color: var(--link-secondary-hover);
}
#hosts td:nth-child(2) {
padding: 0.25rem 0 0 8px;
width: calc(100% - 90px);
}
#hosts td:nth-last-child(-n+2) {
padding: 0.5rem 0 0 95px;
}
#hosts td:nth-last-child(2)::before {
content: ;
content: "License: ";
}
#hosts td:nth-last-child(1)::before {
content: "Last Show: ";
}
#hosts td > img {
border-radius: 0.25rem;
}
.series-description {
margin: 0;
padding: 0;
font-style: italic;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0;
}
@media (min-width: 600px) { @media (min-width: 600px) {
body > header .bounding-box { body > header {
background-size: 200pt, cover;
background-position: left 128pt top -12pt, left top;
justify-content: space-between; justify-content: space-between;
} }
#tag_line { #tag_line {
line-height: 1; text-align: center;
} }
#title #tag1 { #title h1 {
font-size: 7.5rem; font-size: 7.5rem;
letter-spacing: -0.65rem; letter-spacing: -0.65rem;
line-height: 0.75; line-height: 0.75;
} }
#tag_line #tag2 { #tag_line h2 {
font-size: 1.82rem; font-size: 1.82rem;
letter-spacing: 0.05rem; letter-spacing: 0.05rem;
} }
#tag_line #tag1 { #tag_line h2:first-child {
font-size: 4rem; font-size: 4rem;
} }
#tag_line #tag3 { #tag_line h3 {
font-size: 1.85rem; font-size: 1.85rem;
letter-spacing: 0.05rem;
margin-left: 5rem; margin-left: 5rem;
} }
#qr_code { #qr_code {
@@ -745,39 +549,23 @@ fieldset > table td input[type="radio"] {
margin-bottom: 1.0rem; margin-bottom: 1.0rem;
width: 100%; width: 100%;
} }
#search fieldset > input {
width: 55%;
}
#search fieldset > input[type="submit"] {
width: 40%;
}
body > main { body > main {
padding: 0.25rem 2rem; padding: 0.25rem 2rem;
} }
.lane > article {
max-height: 40vw;
overflow-y: scroll
}
#latest_lane.lane section > ul { #latest_lane.lane section > ul {
margin: 0.5rem 3rem 0 1rem; margin: 0.5rem 3rem 0 1rem;
} }
#hosts tbody.lane.stack {
flex-direction: row;
justify-content: space-between;
gap: 1rem
}
#hosts tr {
flex: 1 1 45%;
max-width: 45%;
}
} }
@media (min-width: 900px) { @media (min-width: 900px) {
#podcast_lane > .lane, .lane > article {
#project_lane > .lane { flex-basis: 32%;
justify-content: flex-start; max-width: 32%;
gap: 2rem;
} }
#latest_lane.lane section { #latest_lane.lane section {
flex: 1; flex: 1;
} }
#hosts tr {
flex: 1 1 30%;
max-width: 30%;
}
} }