:root {
--background: #205;
--text: #e8ffff;
--accent: var(--text);
--inner-background: #e8ffff;
--inner-text: #242028;
--inner-accent: #205;
}
body {
background: linear-gradient(to bottom right, #105, #405),
url("/basa/purple.png");
background-attachment: fixed;
background-blend-mode: hue, normal;
background-size: 100% 100%, auto;
}
#body-container {
position: relative;
display: grid;
grid-template-columns: 30ch 1fr;
grid-template-rows: auto 1fr;
grid-column-gap: 0px;
grid-row-gap: 0px;
block-size: auto;
min-block-size: 100vh;
inline-size: 50rem;
max-inline-size: 100vw;
margin-inline: auto;
backdrop-filter: blur(1em);
box-shadow: 0 0 3em #000c;
}
#body-container > header {
display: flex;
justify-content: stretch;
align-items: center;
grid-column: 1 / 3;
inline-size: 100%;
font-family: var(--sans-serif);
background-color: #0004;
}
#body-container > header > * {
text-align: center;
}
#body-container > header a {
text-decoration: none;
}
h1 {
margin-block: 0;
flex-grow: 1;
}
h1 a {
display: block;
block-size: 100%;
inline-size: 100%;
padding-block: 0.5em;
}
h1 strong {
font-size: 2.25rem;
font-weight: 900;
}
h1 small.subtitle {
font-size: 0.5em;
font-style: italic;
font-weight: normal;
}
.menu-button {
display: none;
}
#open-menu {
font-family: var(--sans-serif);
}
#open-menu ul {
margin-block: 0;
padding-inline: 0.5em;
padding-block: 0.5em;
}
#open-menu li {
margin: 0;
}
#open-menu li::marker {
content: none;
}
#open-menu li a {
display: grid;
grid-template-columns: 2em 1fr;
grid-template-rows: auto auto;
inline-size: 100%;
padding: 0.5em;
line-height: 1;
text-decoration: none;
border-radius: 0.5em;
}
#open-menu li a:hover,
#open-menu li a:focus {
background-color: #fff2;
}
#open-menu li a .icon {
grid-row: 1 / 3;
align-self: center;
font-size: 1.25rem;
}
.local-page-name {
font-size: 0.9em;
font-weight: bold;
}
.basa-page-name {
font-size: 0.8em;
font-style: italic;
}
main {
--background: var(--inner-background);
--text: var(--inner-text);
--accent: var(--inner-accent);
position: relative;
block-size: 100%;
inline-size: 100%;
max-inline-size: none;
color: var(--text);
text-shadow: 1px 1px #fff4, -1px -1px #0151;
background-color: var(--background);
}
main :lang(art-x-basa),
.ipa.basa {
color: var(--accent);
}
h2,
h3,
h4,
h5,
h6 {
font-family: var(--sans-serif);
text-align: center;
}
main h2:first-child, #source-link + h2 {
margin-block-start: 0;
}
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
font-weight: 900;
}
small.subtitle {
display: block;
font-style: italic;
}
.mobile-only {
display: none;
}
table.fullwidth {
inline-size: 100%;
}
table.zebra th,
table.zebra td {
padding-inline: 1ch 0.25ch;
}
table.zebra tbody th {
text-align: start;
}
table.zebra th {
background-color: #ccc6ff;
}
table.zebra tbody tr:nth-child(2n) td {
background-color: #e5e2ff;
}
table.zebra tbody tr:nth-child(2n + 1) td {
background-color: #eeecff;
}
.two-tables {
display: flex;
align-items: start;
gap: 1ch;
}
:lang(ar-Arab),
:lang(fa-Arab) {
font-family: Amiri, var(--serif);
}
:lang(hi-Deva) {
font-family: Sahitya, var(--serif);
}
:lang(ur-Arab) {
font-family: "Noto Nastaliq Urdu", var(--serif);
}
.language-list {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 1em;
padding-inline-start: 0;
}
.language-list li {
display: block;
text-align: center;
}
.language-list li .names {
color: var(--accent);
font-weight: bold;
line-height: 1.2;
}
#alphabet {
color: var(--accent);
font-family: var(--sans-serif);
font-size: 1.667em;
font-weight: bold;
text-align: center;
}
ul.dictionary {
padding: 0;
margin: 0;
font-size: 0.9em;
text-align: justify;
column-count: 2;
column-rule: 1px solid #2058;
}
ul.dictionary ul {
margin-block-start: 0.667ch;
padding-inline-start: 1em;
}
ul.dictionary li {
line-height: 1.2;
margin-bottom: 0.667ch;
}
ul.dictionary li::marker {
content: none;
}
ul.dictionary ul li::before {
content: "» ";
}
ul.dictionary-index {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 1ch;
margin-block-start: 0;
padding: 0;
font-family: var(--sans-serif);
font-size: 0.9em;
}
ul.dictionary-index li::marker {
content: none;
}
.definition abbr {
font-style: italic;
}
.etymon {
font-size: 0.9em;
line-height: 1;
}
.etymon :lang(ur-Arab),
:lang(hi-Deva),
:lang(ar-Arab),
:lang(fa-Arab) {
line-height: 0;
}
.usage-note {
font-size: 0.9em;
font-style: italic;
}
h3.letter {
margin-block-end: 0.5em;
}
#source-link {
position: absolute;
inset-block-start: 2ch;
inset-inline-end: 2ch;
}
@media only screen and (max-width: 800px) {
#body-container {
grid-template-columns: 100vw;
grid-template-rows: auto 1fr auto;
margin-bottom: 3.5em;
backdrop-filter: none;
}
#body-container > header {
grid-column: 1 / 2;
}
#open-menu {
order: 2;
position: fixed;
bottom: 0;
width: 100vw;
z-index: 100;
}
#open-menu ul {
display: flex;
align-items: center;
gap: 1ch;
height: 3.5em;
padding-block: 0.25em;
overflow-x: auto;
background: linear-gradient(to right, #105, #405);
}
#open-menu li {
flex-grow: 1;
white-space: nowrap;
}
#open-menu li a {
grid-template-columns: 1fr;
grid-template-rows: auto auto auto;
text-align: center;
padding: 0;
}
.local-page-name {
font-size: 0.8em;
}
.basa-page-name {
font-size: 0.75em;
}
.mobile-only {
display: initial;
}
.desktop-only {
display: none;
}
}
@font-face {
font-family: "Alegreya Sans TSF";
src: url("/fonts/alegreyasans-black.woff2") format("woff2");
font-weight: 900;
font-style: normal;
font-display: fallback;
}