summaryrefslogtreecommitdiff
path: root/src/styles/index.css
diff options
context:
space:
mode:
Diffstat (limited to 'src/styles/index.css')
-rw-r--r--src/styles/index.css332
1 files changed, 332 insertions, 0 deletions
diff --git a/src/styles/index.css b/src/styles/index.css
new file mode 100644
index 0000000..3856449
--- /dev/null
+++ b/src/styles/index.css
@@ -0,0 +1,332 @@
+:root {
+ --bg: transparent;
+ --color: black;
+ --link-color: darkviolet;
+ --image-border: rgba(0, 0, 0, 0.3);
+ --image-border-hover: rgba(0, 0, 0, 0.7);
+ --image-overlay: rgba(0, 0, 0, 0.7);
+ --theme-btn-bg: white;
+ --theme-btn-border: gray;
+ --theme-btn-color: black;
+ --input-focus-border: lightgray;
+ --action-button-border: #f0f0f0;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root:not([data-theme="light"]) {
+ --bg: rgba(13, 17, 23, 0.92);
+ --color: #e6edf3;
+ --link-color: #b083f0;
+ --image-border: rgba(255, 255, 255, 0.2);
+ --image-border-hover: rgba(255, 255, 255, 0.5);
+ --image-overlay: rgba(0, 0, 0, 0.85);
+ --theme-btn-bg: #21262d;
+ --theme-btn-border: #444c56;
+ --theme-btn-color: #e6edf3;
+ --input-focus-border: #586069;
+ --action-button-border: #30363d;
+ }
+}
+
+[data-theme="dark"] {
+ --bg: rgba(13, 17, 23, 0.92);
+ --color: #e6edf3;
+ --link-color: #b083f0;
+ --image-border: rgba(255, 255, 255, 0.2);
+ --image-border-hover: rgba(255, 255, 255, 0.5);
+ --image-overlay: rgba(0, 0, 0, 0.85);
+ --theme-btn-bg: #21262d;
+ --theme-btn-border: #444c56;
+ --theme-btn-color: #e6edf3;
+ --input-focus-border: #586069;
+ --action-button-border: #30363d;
+}
+
+body {
+ width: 50vw;
+ height: calc(100vh - 2rem);
+ font-family: "Noto Sans", 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ font-size: 14px;
+ background-color: var(--bg);
+ color: var(--color);
+ padding: 0;
+ margin: auto;
+}
+
+header {
+ width: 100%;
+}
+
+header > h1 {
+ font-weight: bold;
+ font-size: 2rem;
+ padding-top: 1rem;
+ padding-bottom: 0.5rem;
+ margin: 0;
+}
+
+header > nav {
+ margin-top: 1rem;
+ margin-bottom: 1rem;
+ padding-left: 0.25rem;
+}
+
+header > nav > ul {
+ display: flex;
+ flex-direction: row;
+ list-style-type: none;
+ margin: 0;
+ padding: 0;
+ gap: 1rem;
+}
+
+header > nav > ul > li {
+ display: flex;
+ align-items: center;
+}
+
+header > nav > ul a {
+ text-decoration: none;
+ color: var(--link-color);
+ font-size: 1rem;
+ border-bottom: 1px solid transparent;
+}
+
+header > nav > ul a:hover {
+ opacity: 0.8;
+ text-decoration: underline;
+}
+
+h1 {
+ font-size: 2.5rem;
+}
+
+h2 {
+ font-size: 1.5rem;
+ margin-bottom: 0rem;
+ margin-top: 2rem;
+}
+
+section {
+ width: 100%;
+}
+
+p {
+ text-align: left;
+}
+
+a {
+ color: var(--link-color);
+}
+
+a:hover {
+ opacity: 0.7;
+}
+
+/* Theme toggle button */
+#theme-toggle {
+ background: none;
+ border: 1px solid var(--theme-btn-border);
+ color: var(--link-color);
+ border-radius: 3px;
+ padding: 0.1rem 0.5rem;
+ cursor: pointer;
+ font-size: 0.85rem;
+ font-family: inherit;
+}
+
+#theme-toggle:hover {
+ opacity: 0.8;
+}
+
+/* Image styling */
+#image_container {
+ display: flex;
+ flex-direction: row;
+ transition: transform 100ms ease-in-out;
+ flex: 0 1 auto;
+ width: 100%;
+ overflow: auto;
+}
+
+#image_container .image_item {
+ width: 240px;
+ transition: opacity 100ms ease-in-out;
+ padding: 0;
+ margin: 0;
+ padding-right: 12px;
+ cursor: pointer;
+ position: relative;
+}
+
+#image_container .image_item:hover > img {
+ border: 2px solid var(--image-border-hover);
+}
+
+.image_item > figcaption {
+ font-size: 10px;
+ font-style: italic;
+}
+
+.image_item > img {
+ width: inherit;
+ border-radius: 3px;
+ border: 2px solid var(--image-border);
+}
+
+.image_item_expanded_container {
+ position: fixed;
+ width: 100vw;
+ height: 100vh;
+ background-color: var(--image-overlay);
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ z-index: 1000;
+}
+
+.image_item_expanded_container > .image_item {
+ width: 35vw;
+ opacity: 1.0 !important;
+}
+
+input {
+ outline: none;
+ border: 1px solid transparent;
+ border-radius: 2px;
+ font-size: 1rem;
+ padding: 0.5rem;
+}
+
+input:focus {
+ border: 1px solid var(--input-focus-border);
+}
+
+.action_button {
+ border: 1px solid var(--action-button-border);
+ border-radius: 2px;
+ width: 108px;
+ height: 2rem;
+}
+
+.action_button:hover {
+ cursor: pointer;
+ opacity: 0.9;
+}
+
+/* Theme display */
+#theme_container {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100vw;
+ height: 100vh;
+ background-color: transparent;
+ z-index: -1;
+}
+
+#theme_canvas {
+ width: 100%;
+ height: 100%;
+ z-index: -1;
+}
+
+/* Theme Selector */
+#theme_section {
+ position: fixed;
+ bottom: 1rem;
+ left: 0;
+ width: 100%;
+ text-align: center;
+}
+
+#theme_selector {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ bottom: 1rem;
+ pointer-events: all;
+ opacity: 1;
+ transition: opacity 150ms linear;
+ gap: 2rem;
+}
+
+#theme_selector.hidden {
+ pointer-events: none;
+ opacity: 0;
+}
+
+#theme_selector > button {
+ width: 6rem;
+ height: 2rem;
+ border-radius: 3px;
+ border: 1px solid var(--theme-btn-border);
+ color: var(--theme-btn-color);
+ background-color: var(--theme-btn-bg);
+ cursor: pointer;
+ transition: opacity 100ms linear;
+}
+
+#theme_selector > button:hover {
+ opacity: 0.8;
+}
+
+#theme_selector > #theme_button_default {
+}
+
+#theme_selector > #theme_button_autumn {
+ background-color: orange;
+}
+
+#theme_selector > #theme_button_winter {
+ background-color: #79C0D7;
+}
+
+#theme_selector > #theme_button_spring {
+ background-color: #00FF7F;
+}
+
+#theme_selector > #theme_button_summer {
+ background-color: yellow;
+}
+
+.theme_button_text {
+ margin-left: 0.5rem;
+}
+
+/* Phone screen adjustments */
+@media only screen and (device-width: 1280px),
+only screen and (max-width:1280px) {
+ header > h1 {
+ font-size: 1.5rem;
+ }
+
+ body {
+ width: 80vw !important;
+ }
+}
+
+@media only screen and (device-width: 960px),
+only screen and (max-width:960px) {
+ #theme_selector {
+ margin-left: 1rem;
+ margin-right: 1rem;
+ }
+ .theme_button_text {
+ display: none;
+ }
+
+ #theme_selector > button {
+ width: 100%;
+ }
+
+ .image_item_expanded_container > .image_item {
+ width: 80vw;
+ }
+
+ #carousel > button {
+ font-size: 6rem;
+ top: calc(50% - 4rem);
+ }
+}