aboutsummaryrefslogtreecommitdiff
path: root/examples/starlog/src/styles/layout.scss
diff options
context:
space:
mode:
Diffstat (limited to 'examples/starlog/src/styles/layout.scss')
-rw-r--r--examples/starlog/src/styles/layout.scss295
1 files changed, 295 insertions, 0 deletions
diff --git a/examples/starlog/src/styles/layout.scss b/examples/starlog/src/styles/layout.scss
new file mode 100644
index 000000000..3a5f8d173
--- /dev/null
+++ b/examples/starlog/src/styles/layout.scss
@@ -0,0 +1,295 @@
+@use 'sass:color';
+@use './colors.scss' as colors;
+@use './type.scss' as type;
+
+$container: 1040px;
+$tablet: 768px;
+$mobile: 420px;
+
+* {
+ box-sizing: border-box;
+}
+
+body {
+ margin: 0 auto;
+ padding: 0 1em;
+ width: 1040px;
+ max-width: 100%;
+ background-color: colors.$white;
+ @media (prefers-color-scheme: dark) {
+ background-color: colors.color(gray, 950);
+ }
+ @media (max-width: $tablet) {
+ font-size: 16px;
+ }
+}
+
+.glow {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ z-index: -1;
+ top: 0;
+ left: 0;
+ overflow: hidden;
+
+ &:after {
+ content: '';
+ display: block;
+ position: absolute;
+ top: -120px;
+ left: calc(50% - 360px);
+ width: 720px;
+ height: 240px;
+ background: radial-gradient(
+ 50% 50% at 50% 50%,
+ rgba(colors.color(orange, 500), 0.2) 0%,
+ rgba(colors.color(orange, 500), 0) 100%
+ );
+ @media (prefers-color-scheme: dark) {
+ background: radial-gradient(
+ 50% 50% at 50% 50%,
+ rgba(255, 255, 255, 0.06) 0%,
+ rgba(255, 255, 255, 0) 100%
+ );
+ }
+ }
+}
+
+::selection {
+ background: colors.color(orange, 200);
+ @media (prefers-color-scheme: dark) {
+ background: colors.color(orange, 600);
+ }
+}
+
+a,
+a:visited {
+ color: colors.color(orange, 600);
+ transition: 0.1s ease;
+ @media (prefers-color-scheme: dark) {
+ color: colors.color(orange, 300);
+ }
+
+ &:hover {
+ color: colors.color(orange, 500);
+ }
+}
+
+hr {
+ margin: 1em 0;
+ border: 0;
+ border-bottom: 1px solid colors.color(gray, 100);
+ @media (prefers-color-scheme: dark) {
+ border-color: colors.color(gray, 900);
+ }
+}
+
+nav {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin: 0 0 2em 0;
+ padding: 2em 0;
+
+ a {
+ transition: 0.1s ease;
+ &:hover {
+ opacity: 0.6;
+ }
+ }
+
+ #site_title {
+ margin: 0;
+ }
+ #site_title a {
+ display: flex;
+ align-items: center;
+ gap: 10px;
+ color: colors.color(gray, 950);
+ font-size: 16px;
+ font-weight: 700;
+ letter-spacing: 2px;
+ line-height: 1;
+ text-decoration: none;
+ text-transform: uppercase;
+ @media (prefers-color-scheme: dark) {
+ color: colors.$white;
+ }
+ }
+ .links a {
+ margin-left: 1em;
+ color: colors.color(gray, 800);
+ @media (prefers-color-scheme: dark) {
+ color: colors.color(gray, 200);
+ }
+ }
+}
+
+.content {
+ ol,
+ ul {
+ padding-left: 2em;
+ margin-bottom: 1em;
+ }
+
+ ul {
+ list-style: none;
+
+ li {
+ position: relative;
+ margin-bottom: 0.75em;
+
+ &:before {
+ content: '';
+ display: block;
+ position: absolute;
+ left: -1em;
+ top: 0.63em;
+ width: 8px;
+ height: 8px;
+ background: linear-gradient(25deg, colors.color(purple, 500), colors.color(orange, 500));
+ border-radius: 99px;
+ }
+ }
+ }
+}
+
+.page_title {
+ margin: 1.5em 0;
+ @media (max-width: $tablet) {
+ margin: 0.5em 0;
+ }
+}
+
+.posts {
+ list-style: none;
+ padding: 0;
+}
+
+.post {
+ display: flex;
+ width: 100%;
+ @media (max-width: $tablet) {
+ flex-flow: column;
+ }
+
+ &:last-child .content,
+ &.single .content {
+ border-bottom: 0;
+ }
+}
+
+.version_wrapper {
+ flex-basis: 260px;
+ flex-grow: 0;
+ flex-shrink: 0;
+ margin: 4.5em 0 0 0;
+ @media (max-width: $container) {
+ flex-basis: 140px;
+ }
+ @media (max-width: $tablet) {
+ flex-basis: 0;
+ margin-top: 2em;
+ }
+
+ .version_info {
+ position: sticky;
+ top: 1em;
+ @media (max-width: $tablet) {
+ position: relative;
+ top: 0;
+ }
+ }
+
+ a {
+ float: left;
+ color: colors.$white;
+ text-decoration: none;
+ transition: 0.1s ease;
+
+ &:hover {
+ opacity: 0.6;
+ }
+ }
+}
+
+.version_number {
+ display: inline-block;
+ font-family: type.$codeFont;
+ line-height: 1;
+ margin-bottom: 8px;
+ padding: 4px 12px;
+ color: colors.$white;
+ background: linear-gradient(
+ 25deg,
+ colors.color(purple, 800),
+ colors.color(purple, 700),
+ color.mix(colors.color(purple, 500), colors.color(orange, 500)),
+ colors.color(orange, 500)
+ );
+ border-radius: 8px;
+}
+
+.date {
+ clear: both;
+ color: colors.color(gray, 800);
+ font-family: type.$codeFont;
+ font-size: type.$fontSizeSmall;
+ @media (max-width: $tablet) {
+ display: inline;
+ margin-left: 1em;
+ }
+ @media (prefers-color-scheme: dark) {
+ color: colors.color(gray, 200);
+ }
+}
+
+.content {
+ margin: 0;
+ padding: 4em 0;
+ border-bottom: 1px solid colors.color(gray, 100);
+ @media (max-width: $tablet) {
+ margin: 1em 0;
+ padding: 0 0 2em 0;
+ }
+ @media (prefers-color-scheme: dark) {
+ border-color: colors.color(gray, 900);
+ }
+ *:first-child {
+ margin-top: 0;
+ }
+ img {
+ max-width: 100%;
+ height: auto;
+ border-radius: 12px;
+ border: 1px solid colors.color(gray, 200);
+ @media (prefers-color-scheme: dark) {
+ border-color: colors.color(gray, 800);
+ }
+ }
+}
+
+footer {
+ display: flex;
+ padding: 2em 0;
+ color: colors.color(gray, 500);
+ justify-content: space-between;
+ border-top: 1px solid colors.color(gray, 100);
+ @media (max-width: $tablet) {
+ padding: 1em 0;
+ }
+ @media (prefers-color-scheme: dark) {
+ border-color: colors.color(gray, 900);
+ }
+
+ a {
+ margin-left: 1em;
+ color: colors.color(gray, 500);
+ text-decoration: none;
+ &:hover {
+ color: colors.color(gray, 500);
+ opacity: 0.6;
+ }
+ }
+}