packages/widget/examples/landing-page/src/styles/globals.css
:root {
--strong: hsl(240deg 100% 0%);
--primary: hsl(240deg 10% 20%);
--secondary: hsl(240deg 20% 40%);
--separator: hsl(240deg 20% 82%);
--surface: hsl(240deg 20% 82%);
--background: hsl(240deg 92.5% 97.5%);
--tint: hsl(240deg 100% 100%);
--bg-strong: hsl(240deg 100% 99%);
--info-bg: hsl(210deg 100% 95%);
--info-border: hsl(210deg 50% 67%);
--info-text: hsl(210deg 80% 40%);
background: var(--background);
color: var(--primary);
}
@media (prefers-color-scheme: dark) {
:root {
--strong: hsl(240deg 100% 100%);
--primary: hsl(240deg 10% 80%);
--secondary: hsl(240deg 15% 70%);
--separator: hsl(240deg 20% 18%);
--surface: hsl(240deg 20% 18%);
--background: hsl(240deg 25% 8%);
--tint: hsl(240deg 50% 4%);
--bg-strong: hsl(240deg 100% 1%);
--info-bg: hsl(225deg 80% 7.5%);
--info-border: hsl(225deg 100% 20%);
--info-text: hsl(210deg 100% 78%);
}
}
* { box-sizing: border-box }
html { margin: 0 }
body {
margin: 0;
font-family: system-ui;
}
#bridge-container {
resize: both;
overflow: scroll;
border: 1px solid var(--separator);
display: grid;
place-content: center;
padding: 1rem;
min-width: 240px;
max-width: 100vw;
}
#root {
letter-spacing: 0.5px;
margin: auto;
color: var(--primary);
& h1, h2, h3, h4, h5, h6 {
font-weight: 600;
margin: 1.5em 0 .25em 0;
color: var(--strong);
line-height: 1.3;
}
& h3, h4, h5, h6 { font-weight: 500 }
& h1 {
margin: 0;
font-size: 2.5rem;
}
& h2 { font-size: 2rem }
& h3 { font-size: 1.5rem }
& h4 { font-size: 1.25rem }
& p {
margin: .7em 0 .5em 0;
line-height: 1.7;
}
& code, pre {
font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
background: var(--bg-strong);
border-radius: .5rem;
border: 1px solid var(--separator);
overflow: scroll;
line-height: 1.5;
}
& code {
font-size: .875rem;
padding: .25em .375em;
}
& pre { padding: .75em 1.25em; }
}
#root > header {
display: flex;
gap: 1rem;
flex-wrap: wrap;
font-size: 14px;
padding: 1.25rem 0.5rem 1.25rem 1rem;
align-items: center;
max-width: 1024px;
margin: auto;
& nav {
display: flex;
gap: .25rem;
flex-grow: 1;
justify-content: flex-end;
& a {
border: 1px solid transparent;
border-radius: .25rem;
height: fit-content;
padding: .5rem 1rem;
color: var(--strong);
text-align: center;
text-decoration: none;
&:hover { border: 1px solid rgb(217, 70, 239) }
&:active { opacity: .4 !important }
&.selected {
border: 1px solid rgb(217, 70, 239);
color: var(--strong);
&:hover { opacity: .7 }
}
}
}
}
#root > main {
display: flex;
gap: 1rem;
flex-direction: column;
align-items: center;
& header {
display: flex;
flex-direction: column;
gap: .5rem;
align-items: center;
text-align: center;
background: var(--tint);
width: 100vw;
padding: 2rem .5rem;
& p {
font-size: 1.3rem;
margin: .2em 0;
max-width: 40ch;
}
}
& #example-container {
display: flex;
flex-direction: column;
gap: 1rem;
padding: 1rem;
& #bridge-container {
border-radius: .5rem;
box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
}
}
& hr {
width: 100%;
max-width: 80ch;
border: transparent;
border-top: 1px solid var(--separator)
}
& article {
max-width: 80ch;
width: 100%;
padding: 0 1rem;
margin-bottom: 2rem;
& h2 {
display: flex;
gap: .75rem;
align-items: center;
& svg {
width: 1em; height: 1em;
}
}
& h2:not(:first-child) {
border-top: 1px solid var(--separator);
padding-top: 2rem;
}
& a {
text-decoration: underline;
color: var(--info-text);
}
& pre { margin: 1.5em -0.25em }
& .info {
background: var(--info-bg);
border: 1px solid var(--info-border);
padding: .75rem;
margin: 1rem 0;
border-radius: .5rem;
& > *:first-child { margin-top: 0 }
& > *:last-child { margin-bottom: 0 }
}
}
}
#root > footer {
background: var(--tint);
width: 100vw;
margin-top: 2rem;
line-height: 1.7;
& > div {
display: flex;
gap: 1rem;
flex-wrap: wrap;
font-size: .875rem;
padding: 1.25rem;
max-width: 1024px;
margin: auto;
}
& nav {
display: flex;
flex-wrap: wrap;
gap: 1rem;
text-align: right;
justify-content: flex-end;
flex-grow: 1;
& section {
display: flex;
flex-direction: column;
& > header, span {
display: inline-block;
padding: .25rem .5rem;
border-radius: .5rem;
}
& header { font-weight: 500 }
& a { color: var(--secondary) }
& a:hover span {
background: var(--bg-strong);
color: var(--primary)
}
& a:active { opacity: .4 }
}
}
}
@media screen and (max-width: 640px) {
article pre { font-size: 0.75rem }
#bridge-container { resize: none }
.desktop-only { display: none }
}