Increase font sizes for senior citizen accessibility

- Raised base HTML font size from 18px to 22px
- Increased header logo from 22px to 32px
- Enhanced all text labels from 13-15px to 16-17px for readability
- Made timer display larger (72px to 84px for players, 56px to 52px for mod)
- Increased room codes from 34-44px to 42-52px
- Made tab navigation labels larger (14px to 17px)
- Updated all panel titles and section labels
- Enlarged player names from 16px to 18px
- Increased buzz status and hints from 14-16px to 16-18px
- Made modal text and toast notifications more readable
- Adjusted responsive breakpoints for mobile devices
- All interactive elements (toggles, buttons) preserved unchanged
This commit is contained in:
2026-04-08 18:41:31 -05:00
parent c08c0831b1
commit 7696b6005b

View File

@@ -9,7 +9,7 @@
} }
html { html {
font-size: 18px; font-size: 22px;
scroll-behavior: smooth; scroll-behavior: smooth;
} }
@@ -108,17 +108,17 @@ header {
} }
.logo { .logo {
font-size: 22px; font-size: 32px;
font-weight: 800; font-weight: 800;
letter-spacing: 6px; letter-spacing: 8px;
color: var(--lav); color: var(--lav);
line-height: 1; line-height: 1;
} }
.logo-sub { .logo-sub {
font-size: 11px; font-size: 16px;
color: var(--ov1); color: var(--ov1);
letter-spacing: 2px; letter-spacing: 3px;
} }
.hdr-r { .hdr-r {
@@ -129,13 +129,13 @@ header {
} }
.room-chip { .room-chip {
font-size: 14px; font-size: 18px;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--lav); color: var(--lav);
background: rgba(180,190,254,0.1); background: rgba(180,190,254,0.1);
border: 1px solid rgba(180,190,254,0.3); border: 1px solid rgba(180,190,254,0.3);
padding: 6px 14px; padding: 10px 20px;
border-radius: 6px; border-radius: 8px;
display: none; display: none;
font-weight: 600; font-weight: 600;
} }
@@ -143,14 +143,14 @@ header {
.conn-pill { .conn-pill {
display: flex; display: flex;
align-items: center; align-items: center;
gap: 8px; gap: 12px;
font-size: 13px; font-size: 16px;
color: var(--ov1); color: var(--ov1);
letter-spacing: 1px; letter-spacing: 1.5px;
background: var(--s0); background: var(--s0);
border: 1px solid var(--s1); border: 1px solid var(--s1);
padding: 7px 14px; padding: 10px 20px;
border-radius: 20px; border-radius: 24px;
} }
.conn-dot { .conn-dot {
@@ -201,35 +201,55 @@ header {
.hero-decoration { display: none; } .hero-decoration { display: none; }
.hero h1 { .hero h1 {
font-size: clamp(60px, 14vw, 108px); font-size: clamp(72px, 16vw, 130px);
font-weight: 800; font-weight: 800;
letter-spacing: 16px; letter-spacing: 20px;
color: var(--lav); color: var(--lav);
line-height: 1; line-height: 1;
text-shadow: 0 0 40px rgba(180,190,254,0.4), 0 0 80px rgba(180,190,254,0.15); text-shadow: 0 0 40px rgba(180,190,254,0.4), 0 0 80px rgba(180,190,254,0.15);
} }
.hero p { .hero p {
font-size: 14px; font-size: 18px;
color: var(--sub0); color: var(--sub0);
letter-spacing: 4px; letter-spacing: 5px;
margin-top: 20px; margin-top: 24px;
} }
.hero-badge { .hero-badge {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
gap: 8px; gap: 10px;
margin-top: 16px; margin-top: 20px;
padding: 7px 16px; padding: 10px 20px;
border: 1px solid var(--s2); border: 1px solid var(--s2);
border-radius: 20px; border-radius: 24px;
font-size: 12px; font-size: 16px;
letter-spacing: 2px; letter-spacing: 2.5px;
color: var(--ov2); color: var(--ov2);
background: var(--s0); background: var(--s0);
} }
.rejoin-bar {
font-size: 16px;
color: var(--ov1);
margin-top: -20px;
}
.rejoin-bar a {
color: var(--blue);
text-decoration: none;
letter-spacing: 1.5px;
display: inline-flex;
align-items: center;
gap: 10px;
padding: 14px 24px;
border: 1px solid var(--s1);
border-radius: 10px;
transition: all .2s;
font-size: 16px;
}
.hero-badge-dot { .hero-badge-dot {
width: 8px; width: 8px;
height: 8px; height: 8px;
@@ -283,17 +303,17 @@ header {
} }
.land-card h2 { .land-card h2 {
font-size: 15px; font-size: 20px;
letter-spacing: 2px; letter-spacing: 3px;
color: var(--lav); color: var(--lav);
margin-bottom: -4px; margin-bottom: -6px;
font-weight: 700; font-weight: 700;
} }
.land-card p { .land-card p {
font-size: 15px; font-size: 17px;
color: var(--sub0); color: var(--sub0);
line-height: 1.8; line-height: 2;
} }
.rejoin-bar { .rejoin-bar {
@@ -344,17 +364,17 @@ header {
} }
.setup-title { .setup-title {
font-size: 17px; font-size: 22px;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--lav); color: var(--lav);
font-weight: 700; font-weight: 700;
} }
.setup-sub { .setup-sub {
font-size: 14px; font-size: 16px;
color: var(--sub0); color: var(--sub0);
letter-spacing: 0.5px; letter-spacing: 0.8px;
line-height: 1.7; line-height: 1.8;
} }
/* ── FORM ATOMS ────────────────────────────────────── */ /* ── FORM ATOMS ────────────────────────────────────── */
@@ -366,8 +386,8 @@ header {
label, label,
.lbl { .lbl {
font-size: 14px; font-size: 17px;
letter-spacing: 1.5px; letter-spacing: 2px;
color: var(--sub0); color: var(--sub0);
text-transform: uppercase; text-transform: uppercase;
font-weight: 600; font-weight: 600;
@@ -452,22 +472,22 @@ select option {
} }
.tog-row .lbl { .tog-row .lbl {
font-size: 15px; font-size: 17px;
color: var(--text); color: var(--text);
letter-spacing: 0.3px; letter-spacing: 0.5px;
line-height: 1.4; line-height: 1.5;
text-transform: none; text-transform: none;
font-weight: 600; font-weight: 600;
} }
.lbl-sub { .lbl-sub {
font-size: 13px; font-size: 15px;
color: var(--ov2); color: var(--ov2);
margin-top: 4px; margin-top: 6px;
letter-spacing: 0; letter-spacing: 0;
text-transform: none; text-transform: none;
font-weight: 400; font-weight: 400;
line-height: 1.5; line-height: 1.6;
} }
.tog { .tog {
@@ -615,18 +635,29 @@ select option {
} }
.panel-title { .panel-title {
font-size: 14px; font-size: 17px;
letter-spacing: 2px; letter-spacing: 3px;
color: var(--lav); color: var(--lav);
margin-bottom: 22px; margin-bottom: 26px;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
gap: 10px; gap: 12px;
font-weight: 700; font-weight: 700;
text-transform: uppercase; text-transform: uppercase;
} }
.tag {
display: inline-block;
padding: 6px 16px;
font-size: 15px;
letter-spacing: 1.5px;
border: 1px solid;
border-radius: 6px;
font-family: 'JetBrains Mono', monospace;
font-weight: 600;
}
.panel-title::after { .panel-title::after {
content: ''; content: '';
flex: 1; flex: 1;
@@ -704,24 +735,24 @@ select option {
} }
.side-label { .side-label {
font-size: 13px; font-size: 16px;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--ov1); color: var(--ov1);
margin-bottom: 14px; margin-bottom: 18px;
text-transform: uppercase; text-transform: uppercase;
font-weight: 600; font-weight: 600;
} }
.side-hint { .side-hint {
font-size: 13px; font-size: 15px;
color: var(--ov1); color: var(--ov1);
letter-spacing: 0.5px; letter-spacing: 0.8px;
} }
.side-room-code { .side-room-code {
font-size: 34px; font-size: 42px;
font-weight: 800; font-weight: 800;
letter-spacing: 8px; letter-spacing: 10px;
color: var(--lav); color: var(--lav);
line-height: 1; line-height: 1;
text-shadow: 0 0 20px rgba(180,190,254,0.3); text-shadow: 0 0 20px rgba(180,190,254,0.3);
@@ -734,10 +765,10 @@ select option {
} }
.side-status { .side-status {
font-size: 14px; font-size: 16px;
color: var(--sub0); color: var(--sub0);
line-height: 2; line-height: 2.2;
letter-spacing: 0.5px; letter-spacing: 0.8px;
} }
/* ── TIMER BLOCK ───────────────────────────────────── */ /* ── TIMER BLOCK ───────────────────────────────────── */
@@ -814,10 +845,10 @@ select option {
} }
.tab { .tab {
padding: 16px 22px; padding: 18px 26px;
font-family: 'JetBrains Mono', monospace; font-family: 'JetBrains Mono', monospace;
font-size: 14px; font-size: 17px;
letter-spacing: 1.5px; letter-spacing: 2px;
cursor: pointer; cursor: pointer;
color: var(--ov1); color: var(--ov1);
transition: all .2s; transition: all .2s;
@@ -860,15 +891,15 @@ select option {
} }
.bz-rank { .bz-rank {
width: 42px; width: 52px;
height: 42px; height: 52px;
border-radius: 50%; border-radius: 50%;
background: var(--s1); background: var(--s1);
border: 2px solid var(--s2); border: 3px solid var(--s2);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 18px; font-size: 22px;
font-weight: 700; font-weight: 700;
color: var(--sub0); color: var(--sub0);
flex-shrink: 0; flex-shrink: 0;
@@ -878,17 +909,12 @@ select option {
background: rgba(249,226,175,0.15); background: rgba(249,226,175,0.15);
border-color: var(--yellow); border-color: var(--yellow);
color: var(--yellow); color: var(--yellow);
font-size: 20px; font-size: 24px;
box-shadow: 0 0 16px rgba(249,226,175,0.25); box-shadow: 0 0 16px rgba(249,226,175,0.25);
} }
.bz-info {
flex: 1;
min-width: 0;
}
.bz-name { .bz-name {
font-size: 18px; font-size: 20px;
font-weight: 700; font-weight: 700;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
@@ -896,16 +922,16 @@ select option {
} }
.bz-team { .bz-team {
font-size: 14px; font-size: 16px;
margin-top: 4px; margin-top: 6px;
letter-spacing: 0.5px; letter-spacing: 0.8px;
color: var(--sub0); color: var(--sub0);
} }
.bz-ms { .bz-ms {
font-size: 13px; font-size: 15px;
color: var(--ov1); color: var(--ov1);
margin-top: 3px; margin-top: 5px;
} }
/* ── PLAYERS ───────────────────────────────────────── */ /* ── PLAYERS ───────────────────────────────────────── */
@@ -917,12 +943,31 @@ select option {
.pl-row { .pl-row {
display: flex; display: flex;
align-items: center; align-items: center;
gap: 14px; gap: 16px;
padding: 16px 0; padding: 18px 0;
border-bottom: 1px solid var(--s0); border-bottom: 1px solid var(--s0);
transition: opacity .2s; transition: opacity .2s;
} }
.pl-info {
flex: 1;
min-width: 0;
}
.pl-name {
font-size: 18px;
font-weight: 600;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.pl-meta {
font-size: 15px;
color: var(--ov2);
margin-top: 5px;
}
.pl-row:last-child { .pl-row:last-child {
border-bottom: none; border-bottom: none;
} }
@@ -977,24 +1022,24 @@ select option {
} }
.team-card .tc-n { .team-card .tc-n {
font-size: 13px; font-size: 16px;
letter-spacing: 1.5px; letter-spacing: 2px;
margin-bottom: 12px; margin-bottom: 14px;
text-transform: uppercase; text-transform: uppercase;
font-weight: 700; font-weight: 700;
} }
.team-card .tc-c { .team-card .tc-c {
font-size: 34px; font-size: 40px;
font-weight: 700; font-weight: 700;
line-height: 1; line-height: 1;
} }
.team-card .tc-m { .team-card .tc-m {
font-size: 13px; font-size: 15px;
color: var(--sub0); color: var(--sub0);
margin-top: 10px; margin-top: 12px;
line-height: 1.8; line-height: 2;
} }
/* ── SETTINGS ──────────────────────────────────────── */ /* ── SETTINGS ──────────────────────────────────────── */
@@ -1012,16 +1057,16 @@ select option {
} }
.sl { .sl {
font-size: 15px; font-size: 17px;
font-weight: 600; font-weight: 600;
letter-spacing: 0.3px; letter-spacing: 0.5px;
color: var(--text); color: var(--text);
} }
.sd { .sd {
font-size: 13px; font-size: 15px;
color: var(--ov2); color: var(--ov2);
margin-top: 4px; margin-top: 6px;
letter-spacing: 0; letter-spacing: 0;
} }
@@ -1040,35 +1085,35 @@ select option {
} }
.p-room-lbl { .p-room-lbl {
font-size: 13px; font-size: 16px;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--ov1); color: var(--ov1);
margin-bottom: 8px; margin-bottom: 10px;
text-transform: uppercase; text-transform: uppercase;
font-weight: 600; font-weight: 600;
} }
.p-room-code { .p-room-code {
font-size: 44px; font-size: 52px;
font-weight: 800; font-weight: 800;
letter-spacing: 12px; letter-spacing: 14px;
color: var(--lav); color: var(--lav);
text-shadow: 0 0 24px rgba(180,190,254,0.35); text-shadow: 0 0 24px rgba(180,190,254,0.35);
} }
.p-name-lbl { .p-name-lbl {
font-size: 16px; font-size: 18px;
color: var(--sub0); color: var(--sub0);
margin-top: 12px; margin-top: 14px;
letter-spacing: 0.5px; letter-spacing: 0.8px;
font-weight: 600; font-weight: 600;
} }
/* player timer */ /* player timer */
.p-timer { .p-timer {
font-size: 72px; font-size: 84px;
font-weight: 700; font-weight: 700;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--teal); color: var(--teal);
text-align: center; text-align: center;
font-variant-numeric: tabular-nums; font-variant-numeric: tabular-nums;
@@ -1076,6 +1121,31 @@ select option {
transition: color .3s, text-shadow .3s; transition: color .3s, text-shadow .3s;
} }
.team-picker-title {
font-size: 16px;
letter-spacing: 4px;
color: var(--sub0);
margin-bottom: 22px;
text-align: center;
font-weight: 600;
}
.team-btn {
padding: 26px 20px;
border: 2px solid var(--s1);
border-radius: var(--r);
background: var(--panel);
color: var(--text);
font-family: 'JetBrains Mono', monospace;
font-size: 17px;
letter-spacing: 1.5px;
cursor: pointer;
text-align: center;
transition: all .2s;
box-shadow: var(--shadow-panel);
font-weight: 600;
}
.p-timer.warn { .p-timer.warn {
color: var(--yellow); color: var(--yellow);
text-shadow: 0 0 20px rgba(249,226,175,0.5); text-shadow: 0 0 20px rgba(249,226,175,0.5);
@@ -1273,25 +1343,25 @@ select option {
} }
.buzz-status { .buzz-status {
font-size: 16px; font-size: 18px;
letter-spacing: 2px; letter-spacing: 3px;
color: var(--sub0); color: var(--sub0);
text-align: center; text-align: center;
min-height: 26px; min-height: 32px;
transition: color .3s; transition: color .3s;
text-transform: uppercase; text-transform: uppercase;
font-weight: 600; font-weight: 600;
} }
.spacebar-hint { .spacebar-hint {
font-size: 14px; font-size: 16px;
letter-spacing: 2px; letter-spacing: 3px;
color: var(--ov0); color: var(--ov0);
text-align: center; text-align: center;
text-transform: uppercase; text-transform: uppercase;
opacity: 0; opacity: 0;
transition: opacity .3s; transition: opacity .3s;
margin-top: -12px; margin-top: -16px;
} }
.spacebar-hint.visible { .spacebar-hint.visible {
@@ -1305,14 +1375,34 @@ select option {
} }
.p-panel-title { .p-panel-title {
font-size: 14px; font-size: 17px;
letter-spacing: 3px; letter-spacing: 4px;
color: var(--sub0); color: var(--sub0);
margin-bottom: 16px; margin-bottom: 18px;
text-transform: uppercase; text-transform: uppercase;
font-weight: 700; font-weight: 700;
} }
.feed-entry {
padding: 16px 20px;
background: var(--s0);
border: 1px solid var(--s1);
border-left: 4px solid var(--blue);
margin-bottom: 12px;
font-size: 17px;
border-radius: 0 var(--r) var(--r) 0;
line-height: 1.7;
}
.roster-row {
display: flex;
align-items: center;
gap: 14px;
padding: 14px 0;
border-bottom: 1px solid var(--s0);
font-size: 17px;
}
.feed-entry { .feed-entry {
padding: 14px 18px; padding: 14px 18px;
background: var(--s0); background: var(--s0);
@@ -1372,22 +1462,28 @@ select option {
display: flex; display: flex;
} }
.modal p {
font-size: 17px;
color: var(--ov1);
line-height: 1.8;
}
.modal { .modal {
background: #1a1a2e; background: #1a1a2e;
border: 2px solid var(--s2); border: 2px solid var(--s2);
border-radius: var(--r2); border-radius: var(--r2);
padding: 44px 40px; padding: 52px 48px;
width: 100%; width: 100%;
max-width: 480px; max-width: 480px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 24px; gap: 28px;
box-shadow: 0 20px 60px rgba(0,0,0,0.7); box-shadow: 0 20px 60px rgba(0,0,0,0.7);
} }
.modal h2 { .modal h2 {
font-size: 18px; font-size: 22px;
letter-spacing: 2px; letter-spacing: 3px;
color: var(--lav); color: var(--lav);
font-weight: 700; font-weight: 700;
} }
@@ -1412,11 +1508,11 @@ select option {
} }
.toast { .toast {
padding: 14px 22px; padding: 16px 24px;
background: #24243e; background: #24243e;
border: 2px solid var(--s2); border: 2px solid var(--s2);
font-size: 14px; font-size: 16px;
letter-spacing: 1px; letter-spacing: 1.5px;
border-radius: var(--r); border-radius: var(--r);
max-width: 360px; max-width: 360px;
backdrop-filter: blur(12px); backdrop-filter: blur(12px);
@@ -1424,6 +1520,15 @@ select option {
font-weight: 600; font-weight: 600;
} }
.empty {
font-size: 16px;
color: var(--ov1);
letter-spacing: 2px;
text-align: center;
padding: 40px;
text-transform: uppercase;
}
.toast.ok { .toast.ok {
border-color: rgba(166,227,161,0.5); border-color: rgba(166,227,161,0.5);
color: var(--green); color: var(--green);
@@ -1472,7 +1577,7 @@ select option {
} }
.timer-digits { .timer-digits {
font-size: 44px; font-size: 52px;
} }
.land-card { .land-card {
@@ -1494,8 +1599,8 @@ select option {
} }
.logo { .logo {
font-size: 18px; font-size: 24px;
letter-spacing: 4px; letter-spacing: 5px;
} }
#s-mod { #s-mod {