body.light-theme, :root { /* light theme color */ --background: #fff; --background-secondary: #eaeaea; --header: #fafafa; --color: #222; --color-secondary: #999; --border-color: #dcdcdc; /* variables for js, must be the same as these in @custom-media queries */ --phoneWidth: (max-width: 684px); --tabletWidth: (max-width: 900px); } body.dark-theme { /* dark theme colors */ --background: #292a2d; --background-secondary: #3b3d42; --header: #252627; --color: #a9a9b3; --color-secondary: #73747b; --border-color: #4a4b50; } @media (prefers-color-scheme: light) { body:not(.dark-theme) { /* light theme color */ --background: #fff; --background-secondary: #eaeaea; --header: #fafafa; --color: #222; --color-secondary: #999; --border-color: #dcdcdc; } } @media (prefers-color-scheme: dark) { body:not(.light-theme) { /* dark theme colors */ --background: #292a2d; --background-secondary: #3b3d42; --header: #252627; --color: #a9a9b3; --color-secondary: #73747b; --border-color: #4a4b50; } } /* MEDIA QUERIES */ $phone: "max-width: 684px"; $tablet: "max-width: 900px"; @mixin greater-icon($stroke-width: 3px, $width: .95rem, $height: 100%) { .greater-icon { width: $width; height: $height; path { stroke: currentColor; stroke-width: $stroke-width; } } } /* HOW TO USE */ /*@media ($phone) {*/ /*margin-top: 0;*/ /*}*/