diff --git a/.gitignore b/.gitignore index 2736ed59..31437c3a 100755 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ # See https://help.github.com/ignore-files/ for more about ignoring files. # dependencies -/node_modules/* +**/node_modules/* /.astro/* # testing diff --git a/.vscode/dictionaries/project-words.txt b/.vscode/dictionaries/project-words.txt index 3ffb2d53..a662e2f6 100755 --- a/.vscode/dictionaries/project-words.txt +++ b/.vscode/dictionaries/project-words.txt @@ -48,6 +48,7 @@ kmeans Kolkata letterpad linalg +lintify lucide LXXX Madhyam diff --git a/CHANGELOG.md b/CHANGELOG.md index d30bfa22..5616996b 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,11 @@ Created Repo from template - Added Nakshtra Page - Home Page Redesign +## [3.2.0] - 2025-07-20 + +- Added Poem section +- update CNAME + ### [Unreleased] Here we write upgrading notes for brands. It's a team effort to make them as straightforward as possible. diff --git a/CNAME b/CNAME index 64cb1414..808cb444 100644 --- a/CNAME +++ b/CNAME @@ -1 +1 @@ -parixan.xyz \ No newline at end of file +abcdkbd.com \ No newline at end of file diff --git a/abcd.code-workspace b/abcd.code-workspace index ad0233ad..ff629e3b 100644 --- a/abcd.code-workspace +++ b/abcd.code-workspace @@ -64,7 +64,7 @@ "editor.inlayHints.enabled": "offUnlessPressed", "editor.insertSpaces": true, "editor.linkedEditing": true, - "editor.minimap.enabled": false, + "editor.minimap.enabled": true, "editor.minimap.renderCharacters": false, "editor.minimap.size": "fill", "editor.multiCursorModifier": "alt", diff --git a/package-lock.json b/package-lock.json index 15a0dbde..fd2ff0bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@recursivezero/abcd", - "version": "3.0.0", + "version": "3.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@recursivezero/abcd", - "version": "3.0.0", + "version": "3.2.0", "license": "MIT", "dependencies": { "@astrojs/check": "0.9.4", @@ -20,8 +20,6 @@ "clsx": "2.1.0", "dotenv": "16.4.5", "dotenv-expand": "11.0.6", - "nanostores": "1.0.1", - "tailwind-merge": "2.2.0", "typescript": "5.6.2", "zod": "3.25.67" }, @@ -269,6 +267,7 @@ "version": "7.27.6", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.6.tgz", "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -7186,20 +7185,6 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/nanostores": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nanostores/-/nanostores-1.0.1.tgz", - "integrity": "sha512-kNZ9xnoJYKg/AfxjrVL4SS0fKX++4awQReGqWnwTRHxeHGZ1FJFVgTqr/eMrNQdp0Tz7M7tG/TDaX8QfHDwVCw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "engines": { - "node": "^20.0.0 || >=22.0.0" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -9188,19 +9173,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tailwind-merge": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.2.0.tgz", - "integrity": "sha512-SqqhhaL0T06SW59+JVNfAqKdqLs0497esifRrZ7jOaefP3o64fdFNDMrAQWZFMxTLJPiHVjRLUywT8uFz1xNWQ==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.23.5" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/dcastil" - } - }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", diff --git a/package.json b/package.json index 6c3835d1..299251d6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@recursivezero/abcd", - "version": "3.1.0", + "version": "3.2.0", "description": "A website for our kids trial phase of abcdkbd.com", "homepage": "https://parixan.xyz", "displayName": "abcd", @@ -120,8 +120,6 @@ "clsx": "2.1.0", "dotenv": "16.4.5", "dotenv-expand": "11.0.6", - "nanostores": "1.0.1", - "tailwind-merge": "2.2.0", "typescript": "5.6.2", "zod": "3.25.67" }, diff --git a/public/CNAME b/public/CNAME deleted file mode 100644 index b87fe653..00000000 --- a/public/CNAME +++ /dev/null @@ -1 +0,0 @@ -parixan.xyz diff --git a/public/assets/images/abcd.png b/public/assets/images/abcd.png index 306d497d..e2aabde3 100644 Binary files a/public/assets/images/abcd.png and b/public/assets/images/abcd.png differ diff --git a/public/assets/images/background.png b/public/assets/images/background.png new file mode 100644 index 00000000..87985001 Binary files /dev/null and b/public/assets/images/background.png differ diff --git a/public/assets/images/background1.png b/public/assets/images/background1.png new file mode 100644 index 00000000..40b0cc98 Binary files /dev/null and b/public/assets/images/background1.png differ diff --git a/public/assets/images/screenshots/dark/capital.png b/public/assets/images/screenshots/dark/capital.png new file mode 100644 index 00000000..acce8073 Binary files /dev/null and b/public/assets/images/screenshots/dark/capital.png differ diff --git a/public/assets/images/screenshots/dark/colors.png b/public/assets/images/screenshots/dark/colors.png new file mode 100644 index 00000000..8f2c9a06 Binary files /dev/null and b/public/assets/images/screenshots/dark/colors.png differ diff --git a/public/assets/images/screenshots/dark/crossword.png b/public/assets/images/screenshots/dark/crossword.png new file mode 100644 index 00000000..23753773 Binary files /dev/null and b/public/assets/images/screenshots/dark/crossword.png differ diff --git a/public/assets/images/screenshots/dark/grid.png b/public/assets/images/screenshots/dark/grid.png new file mode 100644 index 00000000..2f633cdb Binary files /dev/null and b/public/assets/images/screenshots/dark/grid.png differ diff --git a/public/assets/images/screenshots/dark/home.png b/public/assets/images/screenshots/dark/home.png new file mode 100644 index 00000000..43295f69 Binary files /dev/null and b/public/assets/images/screenshots/dark/home.png differ diff --git a/public/assets/images/screenshots/dark/indic.png b/public/assets/images/screenshots/dark/indic.png new file mode 100644 index 00000000..85d17ab5 Binary files /dev/null and b/public/assets/images/screenshots/dark/indic.png differ diff --git a/public/assets/images/screenshots/dark/map.png b/public/assets/images/screenshots/dark/map.png new file mode 100644 index 00000000..c478eea0 Binary files /dev/null and b/public/assets/images/screenshots/dark/map.png differ diff --git a/public/assets/images/screenshots/dark/month.png b/public/assets/images/screenshots/dark/month.png new file mode 100644 index 00000000..457a3a16 Binary files /dev/null and b/public/assets/images/screenshots/dark/month.png differ diff --git a/public/assets/images/screenshots/dark/moonsign.png b/public/assets/images/screenshots/dark/moonsign.png new file mode 100644 index 00000000..7cca7dbd Binary files /dev/null and b/public/assets/images/screenshots/dark/moonsign.png differ diff --git a/public/assets/images/screenshots/dark/nakshtra.png b/public/assets/images/screenshots/dark/nakshtra.png new file mode 100644 index 00000000..a716e27a Binary files /dev/null and b/public/assets/images/screenshots/dark/nakshtra.png differ diff --git a/public/assets/images/screenshots/dark/numbers.png b/public/assets/images/screenshots/dark/numbers.png new file mode 100644 index 00000000..a3d2b4cd Binary files /dev/null and b/public/assets/images/screenshots/dark/numbers.png differ diff --git a/public/assets/images/screenshots/dark/panel.png b/public/assets/images/screenshots/dark/panel.png new file mode 100644 index 00000000..26d0d74d Binary files /dev/null and b/public/assets/images/screenshots/dark/panel.png differ diff --git a/public/assets/images/screenshots/dark/quote.png b/public/assets/images/screenshots/dark/quote.png new file mode 100644 index 00000000..a3c65091 Binary files /dev/null and b/public/assets/images/screenshots/dark/quote.png differ diff --git a/public/assets/images/screenshots/dark/story.png b/public/assets/images/screenshots/dark/story.png new file mode 100644 index 00000000..5ffc91e9 Binary files /dev/null and b/public/assets/images/screenshots/dark/story.png differ diff --git a/public/assets/images/screenshots/dark/text.png b/public/assets/images/screenshots/dark/text.png new file mode 100644 index 00000000..2f734a93 Binary files /dev/null and b/public/assets/images/screenshots/dark/text.png differ diff --git a/public/assets/images/screenshots/dark/varnmala.png b/public/assets/images/screenshots/dark/varnmala.png new file mode 100644 index 00000000..1cab3c87 Binary files /dev/null and b/public/assets/images/screenshots/dark/varnmala.png differ diff --git a/public/assets/images/screenshots/dark/vedic.png b/public/assets/images/screenshots/dark/vedic.png new file mode 100644 index 00000000..0f4f9f61 Binary files /dev/null and b/public/assets/images/screenshots/dark/vedic.png differ diff --git a/public/assets/images/screenshots/light/capitalLight.png b/public/assets/images/screenshots/light/capitalLight.png new file mode 100644 index 00000000..c826a117 Binary files /dev/null and b/public/assets/images/screenshots/light/capitalLight.png differ diff --git a/public/assets/images/screenshots/light/chattisgarh.png b/public/assets/images/screenshots/light/chattisgarh.png new file mode 100644 index 00000000..9d906f96 Binary files /dev/null and b/public/assets/images/screenshots/light/chattisgarh.png differ diff --git a/public/assets/images/screenshots/light/colorsLight.png b/public/assets/images/screenshots/light/colorsLight.png new file mode 100644 index 00000000..38e2b08f Binary files /dev/null and b/public/assets/images/screenshots/light/colorsLight.png differ diff --git a/public/assets/images/screenshots/light/crossword.png b/public/assets/images/screenshots/light/crossword.png new file mode 100644 index 00000000..a883052a Binary files /dev/null and b/public/assets/images/screenshots/light/crossword.png differ diff --git a/public/assets/images/screenshots/light/grid.png b/public/assets/images/screenshots/light/grid.png new file mode 100644 index 00000000..6c01b405 Binary files /dev/null and b/public/assets/images/screenshots/light/grid.png differ diff --git a/public/assets/images/screenshots/light/home.png b/public/assets/images/screenshots/light/home.png new file mode 100644 index 00000000..86ed6107 Binary files /dev/null and b/public/assets/images/screenshots/light/home.png differ diff --git a/public/assets/images/screenshots/light/indic.png b/public/assets/images/screenshots/light/indic.png new file mode 100644 index 00000000..1ac6adb7 Binary files /dev/null and b/public/assets/images/screenshots/light/indic.png differ diff --git a/public/assets/images/screenshots/light/mapLight.png b/public/assets/images/screenshots/light/mapLight.png new file mode 100644 index 00000000..dcbd89a9 Binary files /dev/null and b/public/assets/images/screenshots/light/mapLight.png differ diff --git a/public/assets/images/screenshots/light/math.png b/public/assets/images/screenshots/light/math.png new file mode 100644 index 00000000..8e3d439c Binary files /dev/null and b/public/assets/images/screenshots/light/math.png differ diff --git a/public/assets/images/screenshots/light/panelLight.PNG b/public/assets/images/screenshots/light/panelLight.PNG new file mode 100644 index 00000000..a3c8287f Binary files /dev/null and b/public/assets/images/screenshots/light/panelLight.PNG differ diff --git a/public/assets/images/screenshots/light/quoteLight.png b/public/assets/images/screenshots/light/quoteLight.png new file mode 100644 index 00000000..78cf986a Binary files /dev/null and b/public/assets/images/screenshots/light/quoteLight.png differ diff --git a/public/assets/images/screenshots/light/roman.png b/public/assets/images/screenshots/light/roman.png new file mode 100644 index 00000000..3ff8eb53 Binary files /dev/null and b/public/assets/images/screenshots/light/roman.png differ diff --git a/public/assets/images/screenshots/light/storyLight.png b/public/assets/images/screenshots/light/storyLight.png new file mode 100644 index 00000000..df978d32 Binary files /dev/null and b/public/assets/images/screenshots/light/storyLight.png differ diff --git a/public/assets/images/screenshots/light/sunsign.png b/public/assets/images/screenshots/light/sunsign.png new file mode 100644 index 00000000..5fdb8300 Binary files /dev/null and b/public/assets/images/screenshots/light/sunsign.png differ diff --git a/public/assets/images/screenshots/light/text.png b/public/assets/images/screenshots/light/text.png new file mode 100644 index 00000000..8470d5d8 Binary files /dev/null and b/public/assets/images/screenshots/light/text.png differ diff --git a/public/assets/images/screenshots/light/varnmalaLight.png b/public/assets/images/screenshots/light/varnmalaLight.png new file mode 100644 index 00000000..b33f0fd6 Binary files /dev/null and b/public/assets/images/screenshots/light/varnmalaLight.png differ diff --git a/public/assets/images/screenshots/light/vedic.png b/public/assets/images/screenshots/light/vedic.png new file mode 100644 index 00000000..bfecce78 Binary files /dev/null and b/public/assets/images/screenshots/light/vedic.png differ diff --git a/public/assets/images/signup/capital.PNG b/public/assets/images/signup/capital.PNG new file mode 100644 index 00000000..acce8073 Binary files /dev/null and b/public/assets/images/signup/capital.PNG differ diff --git a/public/assets/images/signup/colors.PNG b/public/assets/images/signup/colors.PNG new file mode 100644 index 00000000..8f2c9a06 Binary files /dev/null and b/public/assets/images/signup/colors.PNG differ diff --git a/public/assets/images/signup/quote.PNG b/public/assets/images/signup/quote.PNG new file mode 100644 index 00000000..a3c65091 Binary files /dev/null and b/public/assets/images/signup/quote.PNG differ diff --git a/src/assets/icons/close.svg b/src/assets/icons/close.svg new file mode 100644 index 00000000..e4ff51e0 --- /dev/null +++ b/src/assets/icons/close.svg @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/src/assets/icons/dark.svg b/src/assets/icons/dark.svg index 93d5917a..ca634028 100644 --- a/src/assets/icons/dark.svg +++ b/src/assets/icons/dark.svg @@ -1,6 +1,5 @@ \ No newline at end of file diff --git a/src/assets/icons/google.svg b/src/assets/icons/google.svg new file mode 100644 index 00000000..3ffa2aab --- /dev/null +++ b/src/assets/icons/google.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/src/assets/icons/mute.svg b/src/assets/icons/mute.svg new file mode 100644 index 00000000..d5202fdf --- /dev/null +++ b/src/assets/icons/mute.svg @@ -0,0 +1,7 @@ + \ No newline at end of file diff --git a/src/assets/icons/open.svg b/src/assets/icons/open.svg new file mode 100644 index 00000000..9c130f7a --- /dev/null +++ b/src/assets/icons/open.svg @@ -0,0 +1,18 @@ + \ No newline at end of file diff --git a/src/assets/icons/volume.svg b/src/assets/icons/volume.svg new file mode 100644 index 00000000..0287e5bf --- /dev/null +++ b/src/assets/icons/volume.svg @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/src/assets/icons/x.svg b/src/assets/icons/x.svg new file mode 100644 index 00000000..b5221ce1 --- /dev/null +++ b/src/assets/icons/x.svg @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/src/assets/screenshots/dark/capital.png b/src/assets/screenshots/dark/capital.png new file mode 100644 index 00000000..acce8073 Binary files /dev/null and b/src/assets/screenshots/dark/capital.png differ diff --git a/src/assets/screenshots/dark/colors.png b/src/assets/screenshots/dark/colors.png new file mode 100644 index 00000000..8f2c9a06 Binary files /dev/null and b/src/assets/screenshots/dark/colors.png differ diff --git a/src/assets/screenshots/dark/crossword.png b/src/assets/screenshots/dark/crossword.png new file mode 100644 index 00000000..23753773 Binary files /dev/null and b/src/assets/screenshots/dark/crossword.png differ diff --git a/src/assets/screenshots/dark/grid.png b/src/assets/screenshots/dark/grid.png new file mode 100644 index 00000000..2f633cdb Binary files /dev/null and b/src/assets/screenshots/dark/grid.png differ diff --git a/src/assets/screenshots/dark/home.png b/src/assets/screenshots/dark/home.png new file mode 100644 index 00000000..43295f69 Binary files /dev/null and b/src/assets/screenshots/dark/home.png differ diff --git a/src/assets/screenshots/dark/indic.png b/src/assets/screenshots/dark/indic.png new file mode 100644 index 00000000..85d17ab5 Binary files /dev/null and b/src/assets/screenshots/dark/indic.png differ diff --git a/src/assets/screenshots/dark/map.png b/src/assets/screenshots/dark/map.png new file mode 100644 index 00000000..c478eea0 Binary files /dev/null and b/src/assets/screenshots/dark/map.png differ diff --git a/src/assets/screenshots/dark/month.png b/src/assets/screenshots/dark/month.png new file mode 100644 index 00000000..457a3a16 Binary files /dev/null and b/src/assets/screenshots/dark/month.png differ diff --git a/src/assets/screenshots/dark/moonsign.png b/src/assets/screenshots/dark/moonsign.png new file mode 100644 index 00000000..7cca7dbd Binary files /dev/null and b/src/assets/screenshots/dark/moonsign.png differ diff --git a/src/assets/screenshots/dark/nakshtra.png b/src/assets/screenshots/dark/nakshtra.png new file mode 100644 index 00000000..a716e27a Binary files /dev/null and b/src/assets/screenshots/dark/nakshtra.png differ diff --git a/src/assets/screenshots/dark/numbers.png b/src/assets/screenshots/dark/numbers.png new file mode 100644 index 00000000..a3d2b4cd Binary files /dev/null and b/src/assets/screenshots/dark/numbers.png differ diff --git a/src/assets/screenshots/dark/panel.png b/src/assets/screenshots/dark/panel.png new file mode 100644 index 00000000..26d0d74d Binary files /dev/null and b/src/assets/screenshots/dark/panel.png differ diff --git a/src/assets/screenshots/dark/quote.png b/src/assets/screenshots/dark/quote.png new file mode 100644 index 00000000..a3c65091 Binary files /dev/null and b/src/assets/screenshots/dark/quote.png differ diff --git a/src/assets/screenshots/dark/story.png b/src/assets/screenshots/dark/story.png new file mode 100644 index 00000000..5ffc91e9 Binary files /dev/null and b/src/assets/screenshots/dark/story.png differ diff --git a/src/assets/screenshots/dark/text.png b/src/assets/screenshots/dark/text.png new file mode 100644 index 00000000..2f734a93 Binary files /dev/null and b/src/assets/screenshots/dark/text.png differ diff --git a/src/assets/screenshots/dark/varnmala.png b/src/assets/screenshots/dark/varnmala.png new file mode 100644 index 00000000..1cab3c87 Binary files /dev/null and b/src/assets/screenshots/dark/varnmala.png differ diff --git a/src/assets/screenshots/dark/vedic.png b/src/assets/screenshots/dark/vedic.png new file mode 100644 index 00000000..0f4f9f61 Binary files /dev/null and b/src/assets/screenshots/dark/vedic.png differ diff --git a/src/assets/screenshots/light/capitalLight.png b/src/assets/screenshots/light/capitalLight.png new file mode 100644 index 00000000..c826a117 Binary files /dev/null and b/src/assets/screenshots/light/capitalLight.png differ diff --git a/src/assets/screenshots/light/chattisgarh.png b/src/assets/screenshots/light/chattisgarh.png new file mode 100644 index 00000000..9d906f96 Binary files /dev/null and b/src/assets/screenshots/light/chattisgarh.png differ diff --git a/src/assets/screenshots/light/colorsLight.png b/src/assets/screenshots/light/colorsLight.png new file mode 100644 index 00000000..38e2b08f Binary files /dev/null and b/src/assets/screenshots/light/colorsLight.png differ diff --git a/src/assets/screenshots/light/crossword.png b/src/assets/screenshots/light/crossword.png new file mode 100644 index 00000000..a883052a Binary files /dev/null and b/src/assets/screenshots/light/crossword.png differ diff --git a/src/assets/screenshots/light/grid.png b/src/assets/screenshots/light/grid.png new file mode 100644 index 00000000..6c01b405 Binary files /dev/null and b/src/assets/screenshots/light/grid.png differ diff --git a/src/assets/screenshots/light/home.png b/src/assets/screenshots/light/home.png new file mode 100644 index 00000000..86ed6107 Binary files /dev/null and b/src/assets/screenshots/light/home.png differ diff --git a/src/assets/screenshots/light/indic.png b/src/assets/screenshots/light/indic.png new file mode 100644 index 00000000..1ac6adb7 Binary files /dev/null and b/src/assets/screenshots/light/indic.png differ diff --git a/src/assets/screenshots/light/mapLight.png b/src/assets/screenshots/light/mapLight.png new file mode 100644 index 00000000..dcbd89a9 Binary files /dev/null and b/src/assets/screenshots/light/mapLight.png differ diff --git a/src/assets/screenshots/light/math.png b/src/assets/screenshots/light/math.png new file mode 100644 index 00000000..8e3d439c Binary files /dev/null and b/src/assets/screenshots/light/math.png differ diff --git a/src/assets/screenshots/light/panelLight.PNG b/src/assets/screenshots/light/panelLight.PNG new file mode 100644 index 00000000..a3c8287f Binary files /dev/null and b/src/assets/screenshots/light/panelLight.PNG differ diff --git a/src/assets/screenshots/light/quoteLight.png b/src/assets/screenshots/light/quoteLight.png new file mode 100644 index 00000000..78cf986a Binary files /dev/null and b/src/assets/screenshots/light/quoteLight.png differ diff --git a/src/assets/screenshots/light/roman.png b/src/assets/screenshots/light/roman.png new file mode 100644 index 00000000..3ff8eb53 Binary files /dev/null and b/src/assets/screenshots/light/roman.png differ diff --git a/src/assets/screenshots/light/storyLight.png b/src/assets/screenshots/light/storyLight.png new file mode 100644 index 00000000..df978d32 Binary files /dev/null and b/src/assets/screenshots/light/storyLight.png differ diff --git a/src/assets/screenshots/light/sunsign.png b/src/assets/screenshots/light/sunsign.png new file mode 100644 index 00000000..5fdb8300 Binary files /dev/null and b/src/assets/screenshots/light/sunsign.png differ diff --git a/src/assets/screenshots/light/text.png b/src/assets/screenshots/light/text.png new file mode 100644 index 00000000..8470d5d8 Binary files /dev/null and b/src/assets/screenshots/light/text.png differ diff --git a/src/assets/screenshots/light/varnmalaLight.png b/src/assets/screenshots/light/varnmalaLight.png new file mode 100644 index 00000000..b33f0fd6 Binary files /dev/null and b/src/assets/screenshots/light/varnmalaLight.png differ diff --git a/src/assets/screenshots/light/vedic.png b/src/assets/screenshots/light/vedic.png new file mode 100644 index 00000000..bfecce78 Binary files /dev/null and b/src/assets/screenshots/light/vedic.png differ diff --git a/src/assets/styles/board.css b/src/assets/styles/board.css index fd7a91a7..44e93cba 100644 --- a/src/assets/styles/board.css +++ b/src/assets/styles/board.css @@ -1,4 +1,6 @@ .container__board { + container-type: inline-size; + container-name: board; max-width: 80vw; margin: 0 auto; min-height: 100vh; @@ -50,7 +52,7 @@ } } -@media (max-width: 1024px) { +@media (max-width: 1470px) { .container__board { & .board__list { grid-template-columns: repeat(2, 1fr); diff --git a/src/assets/styles/bubble.css b/src/assets/styles/bubble.css new file mode 100644 index 00000000..12a3f3e4 --- /dev/null +++ b/src/assets/styles/bubble.css @@ -0,0 +1,198 @@ +.bubble__container { + margin: 0; + padding: 0; + box-sizing: border-box; + container-type: inline-size; + container-name: bubble; +} + +.bubble__board { + border-radius: 0.75rem; + width: 100%; + height: 30vh; + position: relative; +} + +.slot { + height: 100%; + border-radius: 4px; + z-index: 10; + width: 100%; + display: flex; + box-sizing: border-box; + flex-direction: column; + justify-content: space-evenly; + align-items: center; +} + +.slot > div { + font-size: 3rem; + position: relative; + font-weight: 700; + color: var(--primary); +} + +@container bubble (max-width: 480px) { + .bubble__board { + height: 65vh; + } +} + +.bubble__area { + border-radius: inherit; + background: var(--container-bg); + width: 100%; + height: 100%; +} + +.bubble_square { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + overflow: hidden; +} + +.bubble_square li { + position: absolute; + list-style: none; + width: 20px; + height: 20px; + display: block; + background: #ffffff33; + bottom: -150px; + animation: animate 25s linear infinite; +} + +.bubble_square li:nth-child(1) { + left: 25%; + width: 80px; + height: 80px; + background: + linear-gradient(var(--container-bg), var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #5d069b, #09009f, #00ff95) border-box; + border: 8px solid transparent; + animation-delay: 0s; +} + +/* copy code from here */ +.bubble_square li:nth-child(2) { + left: 10%; + width: 20px; + height: 20px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #d4145a, #fbb03b) border-box; + border: 2px solid transparent; + animation-delay: 2s; + animation-duration: 12s; +} + +.bubble_square li:nth-child(3) { + left: 70%; + width: 20px; + height: 20px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #009245, #fcee21) border-box; + border: 2px solid transparent; + animation-delay: 4s; +} + +.bubble_square li:nth-child(4) { + left: 40%; + width: 60px; + height: 60px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #662d8c, #ed1e79) border-box; + border: 6px solid transparent; + animation-delay: 0s; + animation-duration: 18s; +} + +.bubble_square li:nth-child(5) { + left: 65%; + width: 20px; + height: 20px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #353a5f, #9ebaf3) border-box; + border: 2px solid transparent; + animation-delay: 0s; +} + +.bubble_square li:nth-child(6) { + left: 75%; + width: 110px; + height: 110px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #c33764, #1d2671) border-box; + border: 11px solid transparent; + animation-delay: 3s; +} + +.bubble_square li:nth-child(7) { + left: 35%; + width: 150px; + height: 150px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #737dfe, #ffcac9) border-box; + border: 15px solid transparent; + animation-delay: 7s; +} + +.bubble_square li:nth-child(8) { + left: 50%; + width: 25px; + height: 25px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #aaffe2, #00d191) border-box; + border: 2.5px solid transparent; + animation-delay: 15s; + animation-duration: 45s; +} + +.bubble_square li:nth-child(9) { + left: 20%; + width: 15px; + height: 15px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #2fbdff, #ff7582) border-box; + border: 1.5px solid transparent; + animation-delay: 2s; + animation-duration: 35s; +} + +.bubble_square li:nth-child(10) { + left: 85%; + width: 150px; + height: 150px; + background: + linear-gradient(var(--container-bg), var(--container-bg)) padding-box, + linear-gradient(45deg, #fad126, #ff564e) border-box; + border: 15px solid transparent; + animation-delay: 0s; + animation-duration: 11s; +} + +/* copy code till here */ + +@keyframes animate { + 0% { + transform: translateY(0) rotate(0deg); + border-radius: 0; + } + + 100% { + transform: translateY(-1000px) rotate(720deg); + border-radius: 50%; + } +} diff --git a/src/assets/styles/common.css b/src/assets/styles/common.css index a19b4313..a9b7e989 100644 --- a/src/assets/styles/common.css +++ b/src/assets/styles/common.css @@ -53,3 +53,12 @@ .no__link { text-decoration: none; } + +.text__balance { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + text-size-adjust: auto; + text-shadow: #fc0 1px 0 10px; + text-wrap-style: balance; +} diff --git a/src/assets/styles/dashboard.css b/src/assets/styles/dashboard.css new file mode 100644 index 00000000..89f590ec --- /dev/null +++ b/src/assets/styles/dashboard.css @@ -0,0 +1,88 @@ +:root { + --background: #221f2e; + --background-secondary: #4a455b; + --text-primary: #eeeff1; + --text-secondary: #a3a1a8; + --primary: #7b5ede; + --primary-hover: #6a4ecc; + --border: rgba(255, 255, 255, 0.1); + --header-h: 60px; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; + font-family: sans-serif; +} + +body { + background-color: var(--background-secondary); + color: var(--text-primary); +} + +main.dashboard-page { + display: flex; + align-items: center; + justify-content: center; + min-height: calc(100vh - var(--header-h)); + padding: 1rem; +} + +.dashboard-container { + background-color: var(--background); + padding: 3rem; + border-radius: 16px; + border: 1px solid var(--border); + box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); + text-align: center; + max-width: 600px; + width: 100%; +} + +.welcome-message { + font-size: 2.5rem; + font-weight: 500; + margin-bottom: 0.5rem; + color: var(--text-primary); +} + +.dashboard-info { + font-size: 1.1rem; + margin-bottom: 2.5rem; + line-height: 1.6; + color: var(--text-secondary); +} + +.dashboard-action-btn { + background-color: var(--primary); + color: white; + border: none; + border-radius: 8px; + padding: 1rem 2rem; + font-size: 1rem; + font-weight: 600; + cursor: pointer; + transition: background-color 0.3s; +} + +.dashboard-action-btn:hover { + background-color: var(--primary-hover); +} + +.header-logout-btn { + color: var(--text-primary); + background-color: rgba(255, 255, 255, 0.1); + border: none; + padding: 0.5rem 1rem; + border-radius: 0.375rem; + font-size: 0.9rem; + font-weight: 600; + cursor: pointer; + white-space: nowrap; + transition: background-color 0.2s ease; +} + +.header-logout-btn:hover { + background-color: rgba(255, 255, 255, 0.2); +} diff --git a/src/assets/styles/header.css b/src/assets/styles/header.css index 43fd76c0..4d656f6f 100644 --- a/src/assets/styles/header.css +++ b/src/assets/styles/header.css @@ -31,11 +31,20 @@ } } + .logo__link { + display: flex; + align-items: center; + text-decoration: none; + + & span { + margin-inline: 1rem; + } + } + .title { - font-size: 3rem; - font-weight: bold; + font-size: clamp(2rem, 4vw, 5rem); background: linear-gradient(270deg, #ff416c, #ff4b2b, #1e90ff, #32cd32); - background-size: 800% 800%; + background-size: 100% 100%; background-clip: inherit; -webkit-background-clip: text; -webkit-text-fill-color: transparent; @@ -56,38 +65,6 @@ } } - /* --- Navigation Links --- */ - .caption { - display: flex; - align-items: center; - /* gap: 0.1rem; */ - text-align: center; - justify-self: center; - } - - .caption a { - font-size: 1.5rem; - font-weight: 550; - margin: 0; - text-decoration: none; - border-radius: 0.375rem; - transition: all 0.2s ease-in-out; - white-space: nowrap; - margin-right: 2rem; - overflow: hidden; - text-overflow: ellipsis; - text-decoration: none; - } - - .caption a:hover { - color: #1dd299; - } - - .caption a.is-active { - color: var(--primary); - font-weight: 600; - } - .action-group { display: flex; gap: 1rem; @@ -103,6 +80,7 @@ max-width: 33vw; flex-wrap: nowrap; justify-content: flex-end; + border: 2px dashed red; } .controls { @@ -115,4 +93,9 @@ width: 2rem; border-radius: 50%; cursor: pointer; -} \ No newline at end of file +} + +.header-spacer { + min-height: 5rem; + border-bottom: 1px dotted grey; +} diff --git a/src/assets/styles/poem-card.css b/src/assets/styles/poem-card.css new file mode 100644 index 00000000..1cc4956f --- /dev/null +++ b/src/assets/styles/poem-card.css @@ -0,0 +1,162 @@ +.outer__poem { + width: 100%; + position: relative; +} + +.container__card { + width: 100%; + position: relative; + background-color: var(--container-bg); + box-sizing: border-box; + display: grid; + grid-template-columns: repeat(auto-fit, 320px); + gap: 1rem; + row-gap: 2rem; + padding: 5rem 1rem; + margin-top: 0.5rem; + /*padding: 8rem 0 ;*/ + justify-content: space-evenly; + align-content: center; + border-radius: 0.75rem; +} + +.card-wrapper { + padding: 4px; + display: flex; + align-items: center; + justify-content: center; +} + +.poem-card { + position: relative; + height: 100%; + width: 300px; + border-radius: 25px; + display: flex; + flex-direction: column; + box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15); + transition: + transform 0.3s ease, + box-shadow 0.3s ease; + cursor: pointer; +} + +.poem-card:hover { + filter: brightness(0.95); + transform: scale(1.03); + box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2); + color: var(--primary); + + .open-indicator { + fill: var(--primary); + } +} + +@media (max-width: 480px) { + .container__card { + grid-template-columns: repeat(auto-fit, 300px); + } + + .poem-card { + width: 280px; + } +} + +/* Target every Nth .poem-card inside .container__card */ +.container__card > .card-wrapper:nth-child(6n + 1) .poem-card, +.card-wrapper:nth-child(6n + 1) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-1); +} + +.container__card > .card-wrapper:nth-child(6n + 2) .poem-card, +.card-wrapper:nth-child(6n + 2) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-2); +} + +.container__card > .card-wrapper:nth-child(6n + 3) .poem-card, +.card-wrapper:nth-child(6n + 3) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-3); +} + +.container__card > .card-wrapper:nth-child(6n + 4) .poem-card, +.card-wrapper:nth-child(6n + 4) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-4); +} + +.container__card > .card-wrapper:nth-child(6n + 5) .poem-card, +.card-wrapper:nth-child(6n + 5) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-5); +} + +.container__card > .card-wrapper:nth-child(6n) .poem-card, +.card-wrapper:nth-child(6n) .poem-card .emoji-content .overlay::after { + background-color: var(--poem-bg-6); +} + +.emoji-content, +.card-content { + padding: 10px 14px; + display: flex; + flex-direction: column; + align-items: center; +} + +.emoji-content { + row-gap: 5px; + position: relative; + padding: 25px 0; +} + +.overlay { + position: absolute; + left: 2%; + top: 2%; + height: 96%; + width: 96%; + background-color: var(--container-bg); + border-radius: 25px 25px 0 25px; +} + +.overlay::before, +.overlay::after { + content: ""; + position: absolute; + right: 0; + bottom: -40px; + height: 40px; + width: 40px; + background-color: var(--container-bg); +} + +.overlay::after { + border-radius: 0 25px 0 0; + /*background-color: pink;*/ +} + +.card-emoji { + position: relative; + height: 150px; + width: 150px; + /*border-radius: 50%; + background: #fff;*/ + padding: 3px; + display: flex; + align-items: center; + justify-content: center; +} + +.card-emoji .card-emo { + font-size: 9rem; + text-shadow: 0 -8px 18px rgba(0, 0, 0, 0.15); +} + +.name { + text-align: center; +} + +.card-indicator { + position: relative; + margin-left: auto; + right: 1rem; + height: 24px; +} diff --git a/src/assets/styles/poem-dialog.css b/src/assets/styles/poem-dialog.css new file mode 100644 index 00000000..47deaeea --- /dev/null +++ b/src/assets/styles/poem-dialog.css @@ -0,0 +1,96 @@ +.poem-dialog { + width: 540px; + max-width: 90%; + height: 600px; + border: 3px solid var(--color); + border-radius: 24px; + background-color: var(--container-bg); + padding: 1.5rem; + box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2); + position: fixed; + transform: translate(-50%, -50%); + overflow: hidden; + color: var(--color); +} + +/* === Modal Content === */ +.modal-content { + display: flex; + flex-direction: column; + justify-content: flex-start; + height: 100%; + position: relative; +} + +/* === Top bar: speaker + close === */ +.modal-content > .model-buttons > button.speaker-btn, +.modal-content > .model-buttons > button.close { + background: none; + border: none; + padding: 0; + cursor: pointer; + width: 48px; + height: 48px; +} + +.modal-content > .model-buttons > button svg { + width: 44px; + height: 44px; + stroke: var(--color); + fill: none; +} + +.modal-content > .model-buttons > button:focus { + outline: none; + box-shadow: none; +} + +.modal-content .model-buttons { + display: flex; + align-items: center; + justify-content: space-between; +} + +/* === Title & Lines === */ +.modal-title { + margin-top: 3.2rem; + font-size: 3rem; + font-weight: 600; + text-align: center; +} + +.lines { + white-space: pre-line; + line-height: 1.6; + padding: 0 1rem; + overflow-y: auto; + flex-grow: 1; + font-size: 1.5rem; + text-align: center; +} + +/* === Scroll styling (optional) === */ +.lines::-webkit-scrollbar { + width: 6px; +} + +.lines::-webkit-scrollbar-thumb { + background: rgba(0, 0, 0, 0.2); + border-radius: 3px; +} + +/* === Responsive === */ +@media (max-width: 480px) { + .poem-dialog { + width: 90%; + height: 400px; + } + + .title { + font-size: 1.25rem; + } + + .lines { + font-size: 0.95rem; + } +} diff --git a/src/assets/styles/poems.css b/src/assets/styles/poems.css new file mode 100644 index 00000000..55e02ffa --- /dev/null +++ b/src/assets/styles/poems.css @@ -0,0 +1,43 @@ +:root { + --container-bg: #0f172a; + --color: #cbeafe; + --poem-bg-1: #19134e; + --poem-bg-2: #4e2513; + --poem-bg-3: #134e4a; + --poem-bg-4: #13444e; + --poem-bg-5: #13324e; + --poem-bg-6: #131f4e; + + --poem-text-color: #ffffff; +} + +[data-theme="dark"] { + --container-bg: #0f172a; + --color: #cbeafe; + --poem-bg-1: #19134e; + --poem-bg-2: #4e2513; + --poem-bg-3: #134e4a; + --poem-bg-4: #13444e; + --poem-bg-5: #13324e; + --poem-bg-6: #131f4e; + + --poem-text-color: #ffffff; +} + +[data-theme="light"] { + --container-bg: #fefcfb; + --color: #1a237e; + --poem-bg-1: #fecaca; + --poem-bg-2: #bfdbfe; + --poem-bg-3: #bbf7d0; + --poem-bg-4: #fef08a; + --poem-bg-5: #fed7aa; + --poem-bg-6: #ddd6fe; + + --poem-text-color: #222; +} + +.container__poems { + font-family: "roboto", sans-serif; + color: var(--color); +} diff --git a/src/assets/styles/shortcut.css b/src/assets/styles/shortcut.css new file mode 100644 index 00000000..427f5697 --- /dev/null +++ b/src/assets/styles/shortcut.css @@ -0,0 +1,158 @@ +/* Help Menu Styles */ + +.help-popup { + display: none; + position: fixed; + top: 0; + left: 0; + width: 100vw; + height: 100vh; + background: rgba(0, 0, 0, 0.4); + z-index: 1000; + justify-content: center; + align-items: center; +} +.help-popup.is-open { + display: flex; +} +.help-menu { + color: #222; + background: #fff; + border-radius: 10px; + box-shadow: 0 4px 24px rgba(0, 0, 0, 0.13); + width: 95vw; + max-width: 700px; + max-height: 80vh; + display: flex; + flex-direction: column; + overflow: hidden; + border: 1.5px solid #e1e4e8; +} +.help-menu-header { + display: flex; + justify-content: space-between; + align-items: center; + padding: 16px 20px 8px 20px; + border-bottom: 1px solid #e1e4e8; + background: #f6f8fa; +} +.help-menu-header h2 { + margin: 0; + font-size: 19px; + font-weight: 700; +} +.close-button { + background: none; + border: none; + font-size: 24px; + cursor: pointer; + color: #586069; + padding: 0 4px; + border-radius: 4px; + transition: background 0.15s; +} +.close-button:hover { + background: #eaecef; +} +.help-menu-content.grid { + display: flex; + gap: 0; + justify-content: space-between; + flex-wrap: nowrap; + padding: 16px 12px; + overflow-y: auto; + border-top: 1px solid #e1e4e8; + /* background: #f6f8fa; */ + position: relative; +} +.shortcut-section { + flex: 1; + min-width: 0; + border: 1.5px solid #e1e4e8; + border-radius: 8px; + margin: 0 8px; + padding: 12px 8px 8px 8px; + display: flex; + flex-direction: column; + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04); + font-size: 15px; + max-width: 320px; +} +.shortcut-section:first-child { + margin-left: 0; +} +.shortcut-section:last-child { + margin-right: 0; +} +.shortcut-section h3 { + font-size: 15px; + font-weight: 700; + margin-bottom: 10px; + border-bottom: 1px solid #e1e4e8; + padding-bottom: 6px; + color: #24292e; + border-radius: 6px 6px 0 0; +} +.shortcut-table { + width: 100%; + border-collapse: separate; + border-spacing: 0; + background: #fff; + border-radius: 6px; + box-shadow: none; + margin-bottom: 0.5rem; + overflow: hidden; + font-size: 14px; +} +.shortcut-table tr { + height: 2.2em; /* or use min-height if you prefer */ +} + +.shortcut-table td { + padding-top: 0.4em; + padding-bottom: 0.4em; + border-bottom: 1px solid #e1e4e8; + padding: 0.35rem 0.7rem; + font-size: 14px; + background: transparent; + transition: background 0.15s; +} +.shortcut-table tr:last-child td { + border-bottom: none; +} +.shortcut-table tr:hover td { + background: #f0f3f6; +} +.shortcut-table kbd { + background: #f6f8fa; + border: 1px solid #d1d5da; + border-radius: 5px; + padding: 2px 7px; + font-size: 13px; + margin-left: 2px; + margin-right: 2px; + font-family: inherit; + box-shadow: 0 1px 0 #d1d5da; +} +.shortcut-table tr:not(:last-child) { + border-bottom: 1px solid #eee; /* optional: adds a subtle divider */ +} +@media (max-width: 600px) { + .help-menu-content.grid { + flex-direction: column; + gap: 12px; + padding: 10px 2px; + } + .shortcut-section { + margin: 0 0 12px 0; + border-radius: 8px; + max-width: 100%; + } +} + +.keys { + text-align: end; +} +.rows { + margin: 3px; +} diff --git a/src/assets/styles/signup.css b/src/assets/styles/signup.css new file mode 100644 index 00000000..4851da0e --- /dev/null +++ b/src/assets/styles/signup.css @@ -0,0 +1,470 @@ +:root { + --signup-body-bg: #4a455b; + --signup-container-bg: #221f2e; + --signup-container-shadow: rgba(0, 0, 0, 0.3); + --signup-left-bg: #311d5a; + --signup-text-primary: white; + --signup-text-secondary: #a3a1a8; + --signup-text-placeholder: #8a8692; + --signup-back-link-bg: rgba(255, 255, 255, 0.2); + --signup-back-link-bg-hover: rgba(255, 255, 255, 0.3); + --signup-dots-bg: rgba(255, 255, 255, 0.4); + --signup-dots-active-bg: white; + --signup-input-bg: #322d3d; + --signup-input-border: #3d3748; + --signup-button-primary-bg: #7b5ede; + --signup-button-primary-bg-hover: #6a4ecc; + --signup-button-social-bg-hover: #322d3d; +} + +[data-theme="dark"] { + --signup-body-bg: #4a455b; + --signup-container-bg: #221f2e; + --signup-container-shadow: rgba(0, 0, 0, 0.3); + --signup-left-bg: #311d5a; + --signup-text-primary: white; + --signup-text-secondary: #a3a1a8; + --signup-text-placeholder: #8a8692; + --signup-back-link-bg: rgba(255, 255, 255, 0.2); + --signup-back-link-bg-hover: rgba(255, 255, 255, 0.3); + --signup-dots-bg: rgba(255, 255, 255, 0.4); + --signup-dots-active-bg: white; + --signup-input-bg: #322d3d; + --signup-input-border: #3d3748; + --signup-button-primary-bg: #7b5ede; + --signup-button-primary-bg-hover: #6a4ecc; + --signup-button-social-bg-hover: #322d3d; +} + +[data-theme="light"] { + --signup-body-bg: #f0f2f5; + --signup-container-bg: #ffffff; + --signup-container-shadow: rgba(0, 0, 0, 0.1); + --signup-left-bg: #e9e9f2; + --signup-text-primary: #1c1e21; + --signup-text-secondary: #555; + --signup-text-placeholder: #8a8692; + --signup-back-link-bg: rgba(0, 0, 0, 0.05); + --signup-back-link-bg-hover: rgba(0, 0, 0, 0.1); + --signup-dots-bg: rgba(0, 0, 0, 0.3); + --signup-dots-active-bg: #000; + --signup-input-bg: #f0f2f5; + --signup-input-border: #ddd; + --signup-button-primary-bg: #7b5ede; + --signup-button-primary-bg-hover: #6a4ecc; + --signup-button-social-bg-hover: #f0f2f5; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", + "Helvetica Neue", sans-serif; +} + +[data-theme="dark"] { + --signup-body-bg: #4a455b; + --signup-container-bg: #221f2e; + --signup-container-shadow: rgba(0, 0, 0, 0.3); + --signup-left-bg: #311d5a; + --signup-text-primary: white; + --signup-text-secondary: #a3a1a8; + --signup-text-placeholder: #8a8692; + --signup-back-link-bg: rgba(255, 255, 255, 0.2); + --signup-back-link-bg-hover: rgba(255, 255, 255, 0.3); + --signup-dots-bg: rgba(255, 255, 255, 0.4); + --signup-dots-active-bg: white; + --signup-input-bg: #322d3d; + --signup-input-border: #3d3748; + --signup-button-primary-bg: #7b5ede; + --signup-button-primary-bg-hover: #6a4ecc; + --signup-button-social-bg-hover: #322d3d; +} + +[data-theme="light"] { + --signup-body-bg: #f0f2f5; + --signup-container-bg: #ffffff; + --signup-container-shadow: rgba(0, 0, 0, 0.1); + --signup-left-bg: #e9e9f2; + --signup-text-primary: #1c1e21; + --signup-text-secondary: #555; + --signup-text-placeholder: #8a8692; + --signup-back-link-bg: rgba(0, 0, 0, 0.05); + --signup-back-link-bg-hover: rgba(0, 0, 0, 0.1); + --signup-dots-bg: rgba(0, 0, 0, 0.3); + --signup-dots-active-bg: #000; + --signup-input-bg: #f0f2f5; + --signup-input-border: #ddd; + --signup-button-primary-bg: #7b5ede; + --signup-button-primary-bg-hover: #6a4ecc; + --signup-button-social-bg-hover: #f0f2f5; +} + +.signup-container { + display: flex; + width: 100%; + margin: 2rem auto; + min-height: 70vh; + background-color: var(--signup-container-bg); + border-radius: 16px; + overflow: hidden; + box-shadow: 0 10px 30px var(--signup-container-shadow); +} + +.signup-container.form-only { + display: block; + width: 60%; + min-height: auto; + padding: clamp(1rem, 5vw, 3rem); +} + +.signup-left { + width: 60%; + position: relative; + overflow: hidden; + display: flex; + border-radius: 25px; +} + +.form-only .signup-left { + display: none; +} + +.signup-header { + display: flex; + justify-content: space-between; + align-items: center; + padding: clamp(1rem, 3vw, 2rem); + position: absolute; + top: 0; + left: 0; + width: 100%; + z-index: 10; +} + +.slider-container { + position: relative; + width: 100%; + height: 100%; + margin-right: 5px; +} + +.slider { + width: 100%; + height: 100%; + position: relative; +} + +.slide { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + opacity: 0; + transition: opacity 0.8s ease; +} + +.slide.active { + opacity: 1; +} + +.slide img { + width: 100%; + height: 100%; + object-fit: contain; +} + +.slide-caption { + position: absolute; + bottom: 8%; + left: 0; + width: 100%; + padding: 0 clamp(1.5rem, 5vw, 3rem); + text-align: center; +} + +.slide-caption h2 { + font-size: clamp(1.2rem, 2.5vw, 2rem); + line-height: 1.3; + font-weight: 500; +} + +.slider-dots { + position: absolute; + bottom: 5%; + left: 0; + width: 100%; + display: flex; + justify-content: center; + gap: 10px; +} + +.dot { + width: 30px; + height: 4px; + background-color: #000; + border-radius: 2px; + cursor: pointer; + transition: background-color 0.3s; +} + +.dot.active { + background-color: var(--signup-dots-active-bg); +} + +.signup-right { + width: 40%; + padding: clamp(1.5rem, 4vw, 3rem); + display: flex; + flex-direction: column; + justify-content: center; + position: relative; +} + +.form-only .signup-right { + width: 100%; + padding: 0; +} + +.form-container { + margin: 0 auto; + width: 100%; +} + +h1 { + color: var(--signup-text-primary); + font-size: clamp(2rem, 5vw, 3rem); + margin-bottom: 0.5rem; + font-weight: 500; +} + +.signup-text { + color: var(--signup-text-secondary); + font-size: clamp(0.9rem, 2vw, 1.1rem); + margin-bottom: clamp(1.5rem, 4vw, 2.5rem); +} + +.signup-link, +.terms-link { + color: var(--signup-text-primary); + text-decoration: none; +} + +.signup-link:hover, +.terms-link:hover { + text-decoration: underline; +} + +.signup-form { + display: flex; + flex-direction: column; + gap: clamp(0.8rem, 2vw, 1.2rem); +} + +.input-row { + display: flex; + gap: clamp(0.8rem, 2vw, 1.2rem); +} + +.input-row .input-group { + width: 50%; +} + +.input-group { + position: relative; +} + +input[type="text"], +input[type="email"], +input[type="password"] { + width: 100%; + padding: clamp(0.8rem, 2vw, 1.1rem); + border: none; + border-radius: 6px; + background-color: var(--signup-input-bg); + color: var(--signup-text-primary); + font-size: clamp(0.9rem, 2vw, 1rem); +} + +.password-group { + position: relative; +} + +.toggle-password { + position: absolute; + right: 10px; + top: 50%; + transform: translateY(-50%); + background: none; + border: none; + color: var(--signup-text-placeholder); + cursor: pointer; +} + +.checkbox-group { + display: flex; + align-items: center; + gap: 0.5rem; + margin: 0.5rem 0; +} + +input[type="checkbox"] { + width: 18px; + height: 18px; + accent-color: var(--signup-button-primary-bg); +} + +.checkbox-group label { + color: var(--signup-text-secondary); + font-size: clamp(0.8rem, 1.5vw, 0.9rem); +} + +.create-account-btn { + width: 100%; + padding: clamp(0.9rem, 2vw, 1.2rem); + border: none; + border-radius: 6px; + background-color: var(--signup-button-primary-bg); + color: white; + font-size: clamp(0.9rem, 2vw, 1.1rem); + cursor: pointer; + transition: background-color 0.3s; + margin-top: 0.5rem; +} + +.create-account-btn:hover { + background-color: var(--signup-button-primary-bg-hover); +} + +.divider { + display: flex; + align-items: center; + text-align: center; + color: var(--signup-text-placeholder); + font-size: 0.9rem; + margin: clamp(1rem, 3vw, 1.5rem) 0; +} + +.divider::before, +.divider::after { + content: ""; + flex: 1; + border-bottom: 1px solid var(--signup-input-border); +} + +.divider span { + padding: 0 10px; +} + +.social-buttons { + display: flex; + gap: 1rem; +} + +.google-btn, +.X-btn { + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 0.5rem; + padding: clamp(0.7rem, 2vw, 1rem); + border: 1px solid var(--signup-input-border); + border-radius: 6px; + background-color: transparent; + color: var(--signup-text-primary); + font-size: clamp(0.8rem, 1.5vw, 0.9rem); + cursor: pointer; + transition: background-color 0.3s; +} + +.google-btn:hover, +.X-btn:hover { + background-color: var(--signup-button-social-bg-hover); +} + +.google-btn svg, +.X-btn svg { + height: 20px; + width: 20px; +} + +.theme-toggle { + position: absolute; + top: clamp(1rem, 3vw, 2rem); + right: clamp(1rem, 3vw, 2rem); + background-color: var(--signup-input-bg); + border: 1px solid var(--signup-input-border); + color: var(--signup-text-primary); + padding: 0.5rem; + border-radius: 8px; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; +} + +.theme-toggle:hover { + background-color: var(--signup-button-social-bg-hover); +} + +.theme-toggle #theme-icon-sun { + display: none; +} + +.theme-toggle #theme-icon-moon { + display: block; +} + +[data-theme="dark"] .theme-toggle #theme-icon-sun { + display: block; +} + +[data-theme="dark"] .theme-toggle #theme-icon-moon { + display: none; +} + +.footer-theme-toggle { + display: none !important; +} + +@media (max-width: 900px) { + .signup-container { + flex-direction: column; + height: auto; + min-height: auto; + margin: 1rem; + } + + .signup-left, + .signup-right { + width: 100%; + } + + .signup-left { + height: 300px; + } + + .signup-right { + padding: 1.5rem; + } + + .slide-caption h2 { + font-size: 1.5rem; + } + + .form-container { + padding: 1rem 0; + } + + .input-row { + flex-direction: column; + gap: 1rem; + } + + .input-row .input-group { + width: 100%; + } +} diff --git a/src/assets/styles/survey.css b/src/assets/styles/survey.css index c7b8ec68..6e26d299 100644 --- a/src/assets/styles/survey.css +++ b/src/assets/styles/survey.css @@ -669,3 +669,13 @@ min-height: 1500px; } } + +.option-label:has(input:checked) { + background-color: var(--primary); + color: var(--text); +} + +.question-card:has(input:checked) { + border: 1px solid green; + background-color: lightyellow; +} diff --git a/src/components/PoemCard.astro b/src/components/PoemCard.astro new file mode 100644 index 00000000..f2822840 --- /dev/null +++ b/src/components/PoemCard.astro @@ -0,0 +1,30 @@ +--- +import OpenIcon from "@/assets/icons/open.svg"; +import "@/assets/styles/poem-card.css"; + +export interface Props { + title: string; + lines: string[]; + emoji: string; +} +const { title, lines, emoji } = Astro.props; +--- + +
+ This is your personal dashboard. From here you can manage your account, view your activity, and much more. +
+ +Don't have an account? Sign up
+ + +Already have an account? Log in
+ + +