From d208a9336f3572c854e94682e6d18e8e00571cdb Mon Sep 17 00:00:00 2001 From: shafin-r Date: Mon, 19 Jan 2026 10:35:51 +0600 Subject: [PATCH] fix(leaderboard): fix leaderboard mapping --- package.json | 1 + pnpm-lock.yaml | 96 +- src/assets/auth.css | 172 --- src/assets/custom.css | 2087 ---------------------------- src/assets/icons/first_trophy.png | Bin 0 -> 27490 bytes src/assets/icons/second_trophy.png | Bin 0 -> 26190 bytes src/assets/icons/third_trophy.png | Bin 0 -> 19539 bytes src/assets/math-styles.css | 132 -- src/assets/studentProfile.css | 781 ----------- src/components/ui/avatar.tsx | 51 + src/lib/utils.ts | 14 + src/pages/student/Rewards.tsx | 150 +- 12 files changed, 300 insertions(+), 3184 deletions(-) delete mode 100644 src/assets/auth.css delete mode 100644 src/assets/custom.css create mode 100644 src/assets/icons/first_trophy.png create mode 100644 src/assets/icons/second_trophy.png create mode 100644 src/assets/icons/third_trophy.png delete mode 100644 src/assets/math-styles.css delete mode 100644 src/assets/studentProfile.css create mode 100644 src/components/ui/avatar.tsx diff --git a/package.json b/package.json index b44fc94..cbb8c1c 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "preview": "vite preview" }, "dependencies": { + "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-dropdown-menu": "^2.1.16", "@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-tabs": "^1.1.13", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f6f71fd..1589690 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,9 @@ importers: .: dependencies: + '@radix-ui/react-avatar': + specifier: ^1.1.11 + version: 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) '@radix-ui/react-dropdown-menu': specifier: ^2.1.16 version: 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) @@ -49,7 +52,7 @@ importers: version: 4.1.18 zustand: specifier: ^5.0.9 - version: 5.0.9(@types/react@19.2.7)(react@19.2.3) + version: 5.0.9(@types/react@19.2.7)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)) devDependencies: '@eslint/js': specifier: ^9.39.1 @@ -433,6 +436,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-avatar@1.1.11': + resolution: {integrity: sha512-0Qk603AHGV28BOBO34p7IgD5m+V5Sg/YovfayABkoDDBM5d3NCx0Mp4gGrjzLGes1jV5eNOE1r3itqOR33VC6Q==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-collection@1.1.7': resolution: {integrity: sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==} peerDependencies: @@ -464,6 +480,15 @@ packages: '@types/react': optional: true + '@radix-ui/react-context@1.1.3': + resolution: {integrity: sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@radix-ui/react-direction@1.1.1': resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} peerDependencies: @@ -595,6 +620,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-primitive@2.1.4': + resolution: {integrity: sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-roving-focus@1.1.11': resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==} peerDependencies: @@ -675,6 +713,15 @@ packages: '@types/react': optional: true + '@radix-ui/react-use-is-hydrated@0.1.0': + resolution: {integrity: sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@radix-ui/react-use-layout-effect@1.1.1': resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} peerDependencies: @@ -1669,6 +1716,11 @@ packages: '@types/react': optional: true + use-sync-external-store@1.6.0: + resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + vite@7.3.0: resolution: {integrity: sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2048,6 +2100,19 @@ snapshots: '@types/react': 19.2.7 '@types/react-dom': 19.2.3(@types/react@19.2.7) + '@radix-ui/react-avatar@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@radix-ui/react-context': 1.1.3(@types/react@19.2.7)(react@19.2.3) + '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.7)(react@19.2.3) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@19.2.7)(react@19.2.3) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.7)(react@19.2.3) + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.7)(react@19.2.3) @@ -2072,6 +2137,12 @@ snapshots: optionalDependencies: '@types/react': 19.2.7 + '@radix-ui/react-context@1.1.3(@types/react@19.2.7)(react@19.2.3)': + dependencies: + react: 19.2.3 + optionalDependencies: + '@types/react': 19.2.7 + '@radix-ui/react-direction@1.1.1(@types/react@19.2.7)(react@19.2.3)': dependencies: react: 19.2.3 @@ -2203,6 +2274,15 @@ snapshots: '@types/react': 19.2.7 '@types/react-dom': 19.2.3(@types/react@19.2.7) + '@radix-ui/react-primitive@2.1.4(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + dependencies: + '@radix-ui/react-slot': 1.2.4(@types/react@19.2.7)(react@19.2.3) + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + optionalDependencies: + '@types/react': 19.2.7 + '@types/react-dom': 19.2.3(@types/react@19.2.7) + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: '@radix-ui/primitive': 1.1.3 @@ -2278,6 +2358,13 @@ snapshots: optionalDependencies: '@types/react': 19.2.7 + '@radix-ui/react-use-is-hydrated@0.1.0(@types/react@19.2.7)(react@19.2.3)': + dependencies: + react: 19.2.3 + use-sync-external-store: 1.6.0(react@19.2.3) + optionalDependencies: + '@types/react': 19.2.7 + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.7)(react@19.2.3)': dependencies: react: 19.2.3 @@ -3192,6 +3279,10 @@ snapshots: optionalDependencies: '@types/react': 19.2.7 + use-sync-external-store@1.6.0(react@19.2.3): + dependencies: + react: 19.2.3 + vite@7.3.0(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2): dependencies: esbuild: 0.27.2 @@ -3222,7 +3313,8 @@ snapshots: zod@4.3.5: {} - zustand@5.0.9(@types/react@19.2.7)(react@19.2.3): + zustand@5.0.9(@types/react@19.2.7)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)): optionalDependencies: '@types/react': 19.2.7 react: 19.2.3 + use-sync-external-store: 1.6.0(react@19.2.3) diff --git a/src/assets/auth.css b/src/assets/auth.css deleted file mode 100644 index 2c3d7c8..0000000 --- a/src/assets/auth.css +++ /dev/null @@ -1,172 +0,0 @@ -/* -* Prefixed by https://autoprefixer.github.io -* PostCSS: v8.4.14, -* Autoprefixer: v10.4.7 -* Browsers: last 4 version -*/ - -/* -* Prefixed by https://autoprefixer.github.io -* PostCSS: v8.4.14, -* Autoprefixer: v10.4.7 -* Browsers: last 4 version -*/ - -/* Auth Pages Styling */ -.login-container { - min-height: 100vh; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - background-color: var(--secondary-bg); - background-image: -o-linear-gradient(315deg, #f5f5f5 0%, #ffffff 100%); - background-image: linear-gradient(135deg, #f5f5f5 0%, #ffffff 100%); - padding: 1rem; -} - -.auth-container { - max-width: 420px; - width: 100%; - padding: 2.5rem; - border-radius: 12px; - -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08); - box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08); - background-color: var(--tertiary-bg); - border: 1px solid var(--secondary-border); - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.auth-container:hover { - -webkit-box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12); - box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12); - -webkit-transform: translateY(-5px); - -ms-transform: translateY(-5px); - transform: translateY(-5px); -} - -.auth-title { - text-align: center; - margin-bottom: 1.5rem; - color: var(--intensive-text); - font-weight: 700; - font-size: 1.75rem; -} - -.auth-footer { - text-align: center; - margin-top: 1.5rem; - font-size: 0.9rem; - color: var(--neutral); -} - -.auth-footer a { - color: var(--primary-text); - font-weight: 500; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.auth-footer a:hover { - text-decoration: underline; -} - -/* Form Styling */ -.auth-container .field { - margin-bottom: 1.25rem; -} - -.auth-container .label { - color: var(--intensive-text) !important; - font-weight: 600; - font-size: 0.9rem; - margin-bottom: 0.5rem; -} - -.auth-container .input { - color: var(--intensive-text) !important; - border-radius: 8px; - border: 1px solid var(--secondary-border); - padding: 0.75rem 1rem; - height: auto; - font-size: 1rem; - -webkit-box-shadow: none; - box-shadow: none; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.auth-container .input:focus { - border-color: var(--primary-bg); - -webkit-box-shadow: 0 0 0 2px rgba(110, 68, 255, 0.1); - box-shadow: 0 0 0 2px rgba(110, 68, 255, 0.1); -} - -.auth-container .input.is-danger { - border-color: var(--error-bg); -} - -.auth-container .button { - height: auto; - padding: 0.75rem 1.5rem; - font-weight: 600; - font-size: 1rem; - border-radius: 8px; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.auth-container .button.is-primary { - background-color: var(--primary-bg); - border: none; -} - -.auth-container .button.is-primary:hover { - background-color: var(--primary-dark); - -webkit-box-shadow: 0 4px 12px rgba(110, 68, 255, 0.3); - box-shadow: 0 4px 12px rgba(110, 68, 255, 0.3); - -webkit-transform: translateY(-2px); - -ms-transform: translateY(-2px); - transform: translateY(-2px); -} - -.auth-container .checkbox { - font-size: 0.9rem; - color: var(--neutral-dark); -} - -.auth-container .help.is-danger { - font-size: 0.8rem; - margin-top: 0.25rem; -} - -.auth-container .notification { - border-radius: 8px; - padding: 1rem; - margin-bottom: 1.5rem; -} - -.auth-container .notification .delete { - position: absolute; - right: 0.75rem; - top: 0.75rem; -} - -/* Responsive Adjustments */ -@media screen and (max-width: 768px) { - .auth-container { - padding: 2rem; - max-width: 100%; - margin: 0 1rem; - } -} diff --git a/src/assets/custom.css b/src/assets/custom.css deleted file mode 100644 index 7c6687a..0000000 --- a/src/assets/custom.css +++ /dev/null @@ -1,2087 +0,0 @@ -/* -* Prefixed by https://autoprefixer.github.io -* PostCSS: v8.4.14, -* Autoprefixer: v10.4.7 -* Browsers: last 4 version -*/ - -/* Custom Bulma Variables */ -:root { - /* Primary Colors */ - --primary: #6e44ff; - --primary-light: #9f84ff; - --primary-dark: #1f0954; - - /* Neutral Colors */ - --black: #000000; - --white: #ffffff; - --neutral-lightest: #f7f7f7; - --neutral-lighter: #ececec; - --neutral-light: #aaaaaa; - --neutral: #666666; - --neutral-dark: #444444; - --neutral-darker: #222222; - --neutral-darkest: #111111; - - /* Color Neutral */ - --neutral-lightest: #eeeeee; - --neutral-lighter: #cccccc; - --neutral-light: #aaaaaa; - --neutral: #666666; - --neutral-dark: #444444; - --neutral-darker: #222222; - --neutral-darkest: #111111; - - /* Success Colors */ - --success-green: #00c7a4; - --success-green-light: #7cfff3; - - /* Error Colors */ - --error-red: #ff2c73; - --error-red-light: #fff2f2; - - /* Semantic Colors */ - --primary-bg: #6e44ff; - --secondary-bg: #eeeeee; - --tertiary-bg: #ffffff; - --intensive-bg: #000000; - --success-bg: #00c7a4; - --error-bg: #ff2c73; - - /* Border Colors */ - --primary-border: #000000; - --secondary-border: #cccccc; - --tertiary-border: #1f0954; - --intensive-border: #000000; - --success-border: #00c7a4; - --error-border: #ff2c73; - - /* Text Colors */ - --primary-text: #6e44ff; - --secondary-text: #9f84ff; - --intensive-text: #000000; - --success-text: #00c7a4; - --error-text: #ff2c73; - --link-text: #6e44ff; -} - -/* Bulma Customization */ -body { - font-family: "Satoshi", sans-serif; - background-color: var(--tertiary-bg); - color: var(--intensive-text); -} - -/* Navbar Styling */ -.navbar { - background-color: var(--tertiary-bg); - color: var(--intensive-text); - -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); - height: 4rem; - border-bottom: 1px solid var(--secondary-border); - position: sticky; - top: 0; - z-index: 30; -} - -.navbar-item, -.navbar-link { - color: var(--intensive-text); - font-weight: 500; -} - -.navbar-item:hover, -.navbar-link:hover { - background-color: var(--secondary-bg) !important; - color: var(--primary-text) !important; -} - -.navbar-brand .navbar-item { - font-weight: 700; - font-size: 1.25rem; - color: var(--primary-text); -} - -.navbar-item img { - max-height: 2.5rem; -} - -.navbar-burger { - color: var(--intensive-text); -} - -.navbar-menu.is-active { - background-color: var(--tertiary-bg); - -webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); -} - -/* Button Styling */ -.button { - font-family: "Satoshi", sans-serif; - font-weight: 500; - border-radius: 4px; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.button.is-primary { - background-color: var(--primary-bg); - border: none; - color: white; -} - -.button.is-primary:hover { - background-color: var(--primary-dark); - -webkit-box-shadow: 0 4px 8px rgba(110, 68, 255, 0.2); - box-shadow: 0 4px 8px rgba(110, 68, 255, 0.2); - color: white; -} - -.button.is-success { - background-color: var(--success-bg); - color: white; -} - -.button.is-success:hover { - background-color: var(--success-green-light); - -webkit-box-shadow: 0 4px 8px rgba(0, 199, 164, 0.2); - box-shadow: 0 4px 8px rgba(0, 199, 164, 0.2); - color: white; -} - -.button.is-danger { - background-color: var(--error-bg); - color: white; -} - -.button.is-danger:hover { - background-color: var(--error-red-light); - color: var(--error-red); - -webkit-box-shadow: 0 4px 8px rgba(255, 44, 115, 0.2); - box-shadow: 0 4px 8px rgba(255, 44, 115, 0.2); -} - -.button.is-outlined { - border: 1px solid var(--primary-border); - color: var(--primary-text); - background: transparent; -} - -.button.is-outlined:hover { - background-color: var(--secondary-bg); -} - -.button.is-info { - background-color: #3e8ed0; - color: white; -} - -.button.is-info:hover { - background-color: #3082c5; - color: white; -} - -.button.is-warning { - background-color: #ffe08a; - color: rgba(0, 0, 0, 0.7); -} - -.button.is-warning:hover { - background-color: #ffda6a; - color: rgba(0, 0, 0, 0.7); -} - -/* Sidebar Styling */ -.sidebar { - background-color: var(--tertiary-bg); - height: calc(100vh - 4rem); - width: 260px; - position: fixed; - z-index: 20; - top: 4rem; - left: 0; - overflow-y: auto; - padding: 0; - border-right: 1px solid var(--secondary-border); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-shadow: 1px 0 5px rgba(0, 0, 0, 0.05); - box-shadow: 1px 0 5px rgba(0, 0, 0, 0.05); - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.sidebar-header { - padding: 1.5rem 1.5rem 0.5rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - border-bottom: 1px solid var(--secondary-border); - margin-bottom: 1rem; -} - -.sidebar-header h3 { - font-size: 0.85rem; - text-transform: uppercase; - letter-spacing: 1.5px; - color: var(--neutral); - font-weight: 600; -} - -.sidebar-menu { - list-style: none; - margin: 0; - padding: 0.75rem 0; - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; -} - -.sidebar-item { - margin: 0.25rem 0.75rem; -} - -.sidebar-link { - padding: 0.75rem 1rem; - text-decoration: none; - font-size: 0.9rem; - color: var(--neutral-darker); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - border-radius: 6px; - font-weight: 500; - position: relative; - overflow: hidden; -} - -.sidebar-link:hover { - background-color: var(--secondary-bg); - color: var(--primary-text); - -webkit-transform: translateX(2px); - -ms-transform: translateX(2px); - transform: translateX(2px); -} - -.sidebar-link.is-active { - background-color: rgba(110, 68, 255, 0.1); - color: var(--primary-text); - font-weight: 600; - position: relative; -} - -.sidebar-link.is-active::before { - content: ""; - position: absolute; - left: 0; - top: 0; - height: 100%; - width: 4px; - background-color: var(--primary-bg); - border-radius: 0 2px 2px 0; -} - -.sidebar-link i { - margin-right: 0.75rem; - font-size: 1rem; - width: 20px; - text-align: center; - color: var(--neutral); - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.sidebar-link:hover i, -.sidebar-link.is-active i { - color: var(--primary-text); -} - -.sidebar-section-title { - font-size: 0.7rem; - text-transform: uppercase; - letter-spacing: 1.5px; - color: var(--neutral); - font-weight: 600; - padding: 0.75rem 1.75rem 0.5rem; - margin-top: 0.5rem; -} - -.sidebar-footer { - padding: 1rem; - border-top: 1px solid var(--secondary-border); - text-align: center; - font-size: 0.75rem; - color: var(--neutral); -} - -.main-content { - margin-left: 260px; - padding: 2rem; - min-height: calc(100vh - 4rem); - background-color: var(--tertiary-bg); -} - -/* Mobile Responsiveness */ -@media screen and (max-width: 768px) { - .sidebar { - width: 100%; - height: auto; - position: relative; - top: 0; - display: none; - } - - .sidebar.is-active { - display: block; - } - - .main-content { - margin-left: 0; - } -} - -/* Card Styling */ -.card { - border-radius: 8px; - -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - -webkit-transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.2s ease; - transition: -webkit-box-shadow 0.3s ease, -webkit-transform 0.2s ease; - -o-transition: box-shadow 0.3s ease, transform 0.2s ease; - transition: box-shadow 0.3s ease, transform 0.2s ease; - transition: box-shadow 0.3s ease, transform 0.2s ease, - -webkit-box-shadow 0.3s ease, -webkit-transform 0.2s ease; - border: 1px solid var(--secondary-border); - overflow: hidden; - background-color: var(--tertiary-bg); - margin-bottom: 1.5rem; -} - -.card:hover { - -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - -webkit-transform: translateY(-2px); - -ms-transform: translateY(-2px); - transform: translateY(-2px); -} - -/* Student Home Page Styling */ -.continue-learning-card { - border-radius: 8px; - overflow: hidden; - -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - border: 1px solid var(--secondary-border); - height: 100%; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} - -.continue-learning-card .card-content { - padding: 0; - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.learning-card-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 0.5rem 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.learning-card-header .tag { - margin-right: 0.5rem; - background-color: #e8f4ff; - color: #0086ff; - border-radius: 4px; - font-weight: 500; - font-size: 0.7rem; -} - -.learning-card-body { - padding: 0.75rem 1rem 1rem; -} - -.learning-card-title { - font-size: 1rem; - font-weight: 600; - margin-bottom: 0.75rem; - color: var(--intensive-text); - line-height: 1.3; - height: 2.6rem; - overflow: hidden; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; -} - -.learning-card-progress { - margin-bottom: 0.75rem; -} - -.learning-card-progress-text { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - margin-bottom: 0.25rem; - font-size: 0.75rem; - color: var(--neutral); -} - -.learning-card-progress .progress { - height: 0.4rem; - border-radius: 4px; -} - -.learning-card-progress .progress::-webkit-progress-bar { - background-color: #f0f0f0; -} - -.learning-card-progress .progress::-webkit-progress-value { - background-color: #00c48c; -} - -.continue-button { - background-color: white; - color: var(--primary-bg); - border: 1px solid var(--primary-bg); - border-radius: 6px; - padding: 0.4rem 1rem; - font-weight: 500; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - font-size: 0.8rem; -} - -.continue-button:hover { - background-color: var(--primary-bg); - color: white; -} - -/* SAT Dates Section Styling */ -.sat-dates-container { - border-radius: 8px; - border: 1px solid var(--secondary-border); - overflow: hidden; - margin-bottom: 1.5rem; -} - -.sat-dates-header { - background-color: #f9f9f9; - padding: 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.sat-dates-body { - padding: 0; -} - -.sat-dates-table { - width: 100%; - border-collapse: collapse; -} - -.sat-dates-table th { - background-color: #f9f9f9; - padding: 0.75rem 1rem; - font-weight: 600; - font-size: 0.9rem; - color: var(--neutral-dark); - text-align: left; - border-bottom: 1px solid var(--secondary-border); -} - -.sat-dates-table td { - padding: 0.75rem 1rem; - border-bottom: 1px solid var(--secondary-border); - font-size: 0.9rem; -} - -.sat-dates-table tr:last-child td { - border-bottom: none; -} - -.sat-dates-footer { - background-color: #f9f9f9; - padding: 0.75rem 1rem; - border-top: 1px solid var(--secondary-border); - text-align: center; -} - -.sat-dates-footer a { - color: var(--primary-bg); - text-decoration: none; - font-weight: 500; - font-size: 0.9rem; -} - -.sat-dates-footer a:hover { - text-decoration: underline; -} - -.register-button { - background-color: var(--primary-bg); - color: white; - border: none; - border-radius: 4px; - padding: 0.4rem 0.75rem; - font-size: 0.8rem; - font-weight: 500; - cursor: pointer; - -webkit-transition: background-color 0.2s ease; - -o-transition: background-color 0.2s ease; - transition: background-color 0.2s ease; -} - -.register-button:hover { - background-color: #5a38d9; -} - -.sat-tips-container { - border-radius: 8px; - border: 1px solid var(--secondary-border); - overflow: hidden; - height: 100%; -} - -.sat-tips-header { - background-color: #f9f9f9; - padding: 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.sat-tips-body { - padding: 1rem; -} - -.sat-tips-list { - list-style-type: none; - padding: 0; - margin: 0; -} - -.sat-tips-list li { - padding: 0.5rem 0; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: start; - -ms-flex-align: start; - align-items: flex-start; -} - -.sat-tips-list li:before { - content: "•"; - color: var(--primary-bg); - font-weight: bold; - display: inline-block; - width: 1em; - margin-right: 0.5em; -} - -/* Settings Page Styling */ -.settings-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - gap: 1.5rem; -} - -.settings-sidebar { - -webkit-box-flex: 0; - -ms-flex: 0 0 250px; - flex: 0 0 250px; - border-radius: 8px; - border: 1px solid var(--secondary-border); - overflow: hidden; -} - -.settings-sidebar-header { - background-color: #f9f9f9; - padding: 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.settings-sidebar-body { - padding: 1rem 0; -} - -.menu-list a { - border-radius: 0; - padding: 0.75rem 1.25rem; - margin-bottom: 0; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - border-left: 3px solid transparent; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.menu-list a:hover { - background-color: var(--secondary-bg); - color: var(--primary-bg); - border-left-color: var(--secondary-border); -} - -.menu-list a.is-active { - background-color: #f0f0ff; - color: var(--primary-bg); - font-weight: 500; - border-left-color: var(--primary-bg); -} - -.menu-list a .icon { - margin-right: 0.75rem; - font-size: 0.9rem; - width: 20px; - text-align: center; -} - -.menu-label { - color: var(--neutral-dark); - font-weight: 600; - text-transform: uppercase; - letter-spacing: 0.5px; - font-size: 0.75rem; - margin-top: 1.5rem; - margin-bottom: 0.75rem; - padding: 0 1.25rem; -} - -.settings-content { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.settings-panel { - border-radius: 8px; - border: 1px solid var(--secondary-border); - overflow: hidden; - margin-bottom: 1.5rem; -} - -.settings-panel-header { - background-color: #f9f9f9; - padding: 1rem 1.5rem; - border-bottom: 1px solid var(--secondary-border); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.settings-panel-header .icon { - margin-right: 0.75rem; - color: var(--primary-bg); -} - -.settings-panel-body { - padding: 1.5rem; -} - -.settings-panel-footer { - background-color: #f9f9f9; - padding: 1rem 1.5rem; - border-top: 1px solid var(--secondary-border); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: end; - -ms-flex-pack: end; - justify-content: flex-end; -} - -/* Progress Page Styling */ -.metric-card { - border-radius: 8px; - border: 1px solid var(--secondary-border); - padding: 1.25rem; - position: relative; - overflow: hidden; - height: 100%; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-align: start; - -ms-flex-align: start; - align-items: flex-start; - -webkit-box-pack: start; - -ms-flex-pack: start; - justify-content: flex-start; - background-color: white; -} - -.metric-value { - font-size: 2.5rem; - font-weight: 700; - color: var(--primary-bg); - margin-bottom: 0.5rem; - line-height: 1; -} - -.metric-label { - font-size: 0.75rem; - color: var(--neutral); - font-weight: 500; - text-transform: uppercase; - letter-spacing: 0.5px; -} - -.metric-icon { - position: absolute; - bottom: 1rem; - right: 1rem; - color: rgba(110, 68, 255, 0.1); - font-size: 2rem; - opacity: 0.5; -} - -.progress-panel { - border-radius: 8px; - border: 1px solid var(--secondary-border); - overflow: hidden; - margin-bottom: 1.5rem; -} - -.progress-panel-header { - background-color: #f9f9f9; - padding: 1rem 1.5rem; - border-bottom: 1px solid var(--secondary-border); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.progress-panel-header .icon { - margin-right: 0.75rem; - color: var(--primary-bg); -} - -.progress-panel-body { - padding: 1.5rem; -} - -.subject-performance { - margin-bottom: 1.5rem; -} - -.subject-label { - font-weight: 500; - color: var(--neutral-dark); -} - -.subject-score { - font-weight: 600; - color: var(--primary-bg); -} - -.progress-table { - width: 100%; - border-collapse: collapse; -} - -.progress-table th { - background-color: #f9f9f9; - padding: 0.75rem 1rem; - font-weight: 600; - font-size: 0.9rem; - color: var(--neutral-dark); - text-align: left; - border-bottom: 1px solid var(--secondary-border); -} - -.progress-table td { - padding: 0.75rem 1rem; - border-bottom: 1px solid var(--secondary-border); - font-size: 0.9rem; -} - -.progress-table tr:last-child td { - border-bottom: none; -} - -.practice-sheet-card { - position: relative; - overflow: hidden; -} - -.practice-sheet-card-icon { - position: absolute; - top: 1rem; - right: 1rem; - opacity: 0.8; -} - -.option-item { - padding: 1rem; - border: 1px solid var(--secondary-border); - border-radius: 8px; - margin-bottom: 1rem; - cursor: pointer; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.option-item:hover { - background-color: var(--secondary-bg); -} - -.option-item.selected { - border-color: var(--primary-bg); - background-color: rgba(110, 68, 255, 0.05); -} - -.option-marker { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - width: 30px; - height: 30px; - border-radius: 50%; - background-color: var(--secondary-bg); - color: var(--neutral-dark); - font-weight: 600; -} - -.option-item.selected .option-marker { - background-color: var(--primary-bg); - color: white; -} - -.score-display { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin: 1rem 0; -} - -.score-circle { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - width: 180px; - height: 180px; - border-radius: 50%; - background-color: var(--primary-bg); - color: white; - -webkit-box-shadow: 0 4px 12px rgba(110, 68, 255, 0.2); - box-shadow: 0 4px 12px rgba(110, 68, 255, 0.2); -} - -.score-value { - font-size: 3rem; - font-weight: 700; - line-height: 1; - margin-bottom: 0.5rem; -} - -.score-label { - font-size: 0.9rem; - font-weight: 500; - text-align: center; - max-width: 80%; -} - -.section-score { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 1.5rem; - background-color: #f9f9f9; - border-radius: 8px; - border: 1px solid var(--secondary-border); - height: 100%; -} - -.section-score-value { - font-size: 2.5rem; - font-weight: 700; - color: var(--primary-bg); - margin-bottom: 0.5rem; - line-height: 1; -} - -.section-score-label { - font-size: 0.9rem; - font-weight: 500; - color: var(--neutral); -} - -.module-score-item { - border: 1px solid var(--secondary-border); - border-radius: 8px; - padding: 1rem; - background-color: white; -} - -.answer-sheet { - border-radius: 6px; - font-size: 0.9rem; - max-height: 300px; - overflow-y: auto; -} - -.answer-item { - padding-bottom: 0.5rem; - border-bottom: 1px solid var(--secondary-border); -} - -.answer-item:last-child { - border-bottom: none; - padding-bottom: 0; -} - -.subject-performance { - margin-bottom: 1.5rem; -} - -.subject-label { - font-weight: 600; - color: var(--neutral-dark); -} - -.subject-score { - font-weight: 700; - color: var(--primary-bg); -} - -.card-header { - border-bottom: 1px solid var(--secondary-border); - background-color: var(--tertiary-bg); - -webkit-box-shadow: none; - box-shadow: none; -} - -.card-header-title { - font-weight: 600; - font-size: 1.1rem; - color: var(--primary-text); -} - -.card-content { - padding: 1.5rem; -} - -.card-footer { - border-top: 1px solid var(--secondary-border); - background-color: var(--tertiary-bg); -} - -/* Table Styling */ -.table { - width: 100%; - border-collapse: separate; - border-spacing: 0; - border-radius: 8px; - overflow: hidden; - -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - margin-bottom: 2rem; -} - -.table thead th { - background-color: var(--secondary-bg); - font-weight: 600; - color: var(--intensive-text); - text-transform: uppercase; - font-size: 0.8rem; - letter-spacing: 0.5px; - padding: 1rem; -} - -.table td { - padding: 1rem; - border-bottom: 1px solid var(--secondary-border); - vertical-align: middle; -} - -.table tr:last-child td { - border-bottom: none; -} - -.table tr:hover { - background-color: var(--secondary-bg); -} - -/* Form Styling */ -.field-label { - font-weight: 500; - color: var(--intensive-text); - font-size: 0.9rem; -} - -.input, -.textarea, -.select select { - border-radius: 6px; - border: 1px solid var(--secondary-border); - -webkit-box-shadow: none; - box-shadow: none; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - background-color: var(--tertiary-bg); -} - -.input:focus, -.textarea:focus, -.select select:focus { - border-color: var(--primary-bg); - -webkit-box-shadow: 0 0 0 2px rgba(110, 68, 255, 0.1); - box-shadow: 0 0 0 2px rgba(110, 68, 255, 0.1); -} - -.input:hover, -.textarea:hover, -.select select:hover { - border-color: var(--primary-light); -} - -/* Dashboard Header */ -.dashboard-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin-bottom: 1.5rem; - padding-bottom: 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.dashboard-header .title { - margin-bottom: 0; - font-weight: 700; - color: var(--intensive-text); -} - -/* Dashboard Metrics */ -.metric-card { - text-align: center; - padding: 1.5rem; - position: relative; - overflow: hidden; - border-radius: 8px; - border: 1px solid var(--secondary-border); - background-color: var(--tertiary-bg); - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; - height: 100%; -} - -.metric-card:hover { - -webkit-transform: translateY(-5px); - -ms-transform: translateY(-5px); - transform: translateY(-5px); - -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); - box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); -} - -.metric-value { - font-size: 2.5rem; - font-weight: 700; - color: var(--primary-text); - line-height: 1.2; - margin-bottom: 0.5rem; -} - -.metric-label { - font-size: 0.9rem; - color: var(--neutral); - text-transform: uppercase; - letter-spacing: 0.5px; - font-weight: 500; -} - -.metric-icon { - position: absolute; - bottom: 1rem; - right: 1rem; - font-size: 3rem; - opacity: 0.1; - color: var(--primary-text); -} - -/* Graph Container */ -.graph-container { - background-color: var(--tertiary-bg); - border-radius: 8px; - padding: 1.5rem; - -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - border: 1px solid var(--secondary-border); - margin-bottom: 2rem; -} - -.graph-title { - font-weight: 600; - font-size: 1.1rem; - margin-bottom: 1.5rem; - color: var(--intensive-text); -} - -/* Enrollment Chart */ -.enrollment-chart-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - width: 100%; -} - -.enrollment-chart { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - width: 100%; -} - -.chart-bars { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: end; - -ms-flex-align: end; - align-items: flex-end; - height: 85%; - width: 100%; - padding-bottom: 10px; -} - -.chart-bar { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - margin: 0 4px; - border-radius: 4px 4px 0 0; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.chart-bar:hover { - -webkit-transform: scaleY(1.05); - -ms-transform: scaleY(1.05); - transform: scaleY(1.05); - -webkit-box-shadow: 0 0 10px rgba(110, 68, 255, 0.3); - box-shadow: 0 0 10px rgba(110, 68, 255, 0.3); -} - -.chart-labels { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - width: 100%; - padding: 0 4px; -} - -.chart-label { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - text-align: center; - font-size: 0.75rem; - color: var(--neutral); - font-weight: 500; -} - -/* Subject Performance */ -.subject-performance { - margin-bottom: 1.25rem; -} - -.subject-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - margin-bottom: 0.5rem; -} - -.subject-name { - font-weight: 500; - font-size: 0.9rem; -} - -.subject-score { - font-weight: 600; - color: var(--primary-text); -} - -/* Difficulty Distribution */ -.difficulty-distribution { - margin-bottom: 1.25rem; -} - -.difficulty-label { - font-weight: 500; - color: var(--primary-text); - font-size: 0.9rem; -} - -.difficulty-count { - font-weight: 600; - color: var(--primary-text); -} - -/* Activity Statistics */ -.activity-summary { - margin-bottom: 1.25rem; -} - -.stat-label { - font-weight: 500; - color: var(--neutral-dark); - font-size: 0.9rem; -} - -.stat-value { - font-weight: 600; - color: var(--primary-text); -} - -.activity-item { - padding: 0.75rem; - border-radius: 6px; - background-color: var(--neutral-lightest); - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.activity-item:hover { - background-color: var(--secondary-bg); - -webkit-transform: translateX(3px); - -ms-transform: translateX(3px); - transform: translateX(3px); -} - -.student-name, -.sheet-name { - font-size: 0.9rem; - line-height: 1.2; -} - -.student-activity, -.sheet-activity { - margin-top: 0.2rem; -} - -.card-header-title .icon { - color: var(--primary-bg); - margin-right: 0.5rem; -} - -.graph-title .icon { - margin-right: 0.5rem; - color: var(--primary-bg); -} - -/* Practice Sheet Styling */ -.practice-sheet-card { - margin-bottom: 1.5rem; - position: relative; - overflow: hidden; -} - -.practice-sheet-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin-bottom: 1.5rem; - padding-bottom: 1rem; - border-bottom: 1px solid var(--secondary-border); -} - -.practice-sheet-detail { - position: relative; - padding: 2rem; - background-color: var(--tertiary-bg); - border-radius: 8px; - -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); - border: 1px solid var(--secondary-border); - margin-bottom: 2rem; -} - -.practice-sheet-detail::before { - content: "Practice Sheet"; - position: absolute; - top: -10px; - left: 20px; - background-color: var(--primary-bg); - color: white; - padding: 0.25rem 0.75rem; - border-radius: 20px; - font-size: 0.75rem; - font-weight: 600; - text-transform: uppercase; - letter-spacing: 0.5px; -} - -.module-container { - margin-top: 2rem; - position: relative; -} - -.module-list { - position: relative; -} - -.module-list::before { - content: ""; - position: absolute; - top: 0; - bottom: 0; - left: 20px; - width: 2px; - background-color: var(--secondary-border); - z-index: 0; -} - -.module-card { - margin-bottom: 1.5rem; - border-left: 4px solid var(--primary-bg); - border-radius: 0 8px 8px 0; - position: relative; - z-index: 1; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.module-card:hover { - -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); -} - -.module-card::before { - content: ""; - position: absolute; - top: 50%; - left: -12px; - width: 20px; - height: 20px; - background-color: var(--primary-bg); - border-radius: 50%; - -webkit-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); - z-index: 2; -} - -.module-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 1rem 1.5rem; - background-color: rgba(110, 68, 255, 0.05); - border-bottom: 1px solid var(--secondary-border); -} - -.module-title { - font-weight: 600; - font-size: 1.1rem; - color: var(--primary-text); -} - -.module-meta { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - gap: 1rem; - font-size: 0.85rem; - color: var(--neutral); -} - -.module-meta-item { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.module-meta-item i { - margin-right: 0.5rem; - font-size: 0.9rem; -} - -.module-content { - padding: 1.5rem; -} - -.question-list { - position: relative; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - width: 100%; -} - -.question-card { - margin-bottom: 1rem; - border-left: 3px solid var(--success-bg); - border-radius: 0 8px 8px 0; - background-color: var(--tertiary-bg); - position: relative; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; - width: 100%; -} - -.question-card:hover { - -webkit-transform: translateX(5px); - -ms-transform: translateX(5px); - transform: translateX(5px); - -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - border-left-color: var(--primary-bg); -} - -.question-card.is-dragging { - -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15); - box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15); - opacity: 0.9; - -webkit-transform: scale(1.02); - -ms-transform: scale(1.02); - transform: scale(1.02); - z-index: 10; -} - -.question-drag-handle { - cursor: -webkit-grab; - cursor: grab; - color: var(--neutral); - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.question-drag-handle:hover { - color: var(--primary-bg); -} - -.question-drag-handle:active { - cursor: -webkit-grabbing; - cursor: grabbing; -} - -.question-index .tag { - font-weight: 600; - min-width: 40px; - text-align: center; -} - -.question-card::before { - content: ""; - position: absolute; - top: 50%; - left: -8px; - width: 12px; - height: 12px; - background-color: var(--success-bg); - border-radius: 50%; - -webkit-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); -} - -.question-header { - padding: 1rem 1.5rem; - border-bottom: 1px solid var(--secondary-border); - font-weight: 500; - -webkit-transition: background-color 0.2s ease; - -o-transition: background-color 0.2s ease; - transition: background-color 0.2s ease; - cursor: pointer; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.question-header:hover { - background-color: rgba(110, 68, 255, 0.05); -} - -.question-header::after { - content: ""; - position: absolute; - top: 50%; - right: 1rem; - -webkit-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); - width: 0; - height: 0; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.question-content { - padding: 1rem 1.5rem; - -webkit-animation: fadeIn 0.3s ease; - animation: fadeIn 0.3s ease; -} - -.question-options { - margin-top: 1rem; -} - -.question-option { - padding: 0.75rem 1rem; - border: 1px solid var(--secondary-border); - border-radius: 6px; - margin-bottom: 0.5rem; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - cursor: pointer; -} - -.question-option:hover { - background-color: var(--secondary-bg); -} - -.question-option.is-correct { - border-color: var(--success-bg); - background-color: rgba(0, 199, 164, 0.05); -} - -.question-explanation { - margin-top: 1rem; - padding: 1rem; - background-color: var(--secondary-bg); - border-radius: 6px; - font-size: 0.9rem; -} - -/* Visual Connector Lines */ -.connector-line { - position: relative; -} - -.connector-line::before { - content: ""; - position: absolute; - top: 0; - bottom: 0; - left: 20px; - width: 2px; - background-color: var(--secondary-border); - z-index: 0; -} - -.connector-dot { - position: absolute; - width: 12px; - height: 12px; - border-radius: 50%; - background-color: var(--primary-bg); - left: 15px; - top: 50%; - -webkit-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); - z-index: 1; -} - -/* Module Tabs Styling */ -.module-tabs-container { - position: relative; - margin-bottom: 2rem; -} - -.module-tabs { - margin-bottom: 0; - overflow-x: auto; - white-space: nowrap; - position: relative; - z-index: 2; -} - -.module-tabs ul { - border-bottom-color: var(--secondary-border); - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; -} - -.module-tabs li { - -webkit-box-flex: 0; - -ms-flex: 0 0 auto; - flex: 0 0 auto; -} - -.module-tabs li a { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 0.75rem 1.25rem; - border-radius: 4px 4px 0 0; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; - border-bottom: 2px solid transparent; - color: var(--neutral-darker); -} - -.module-tabs li a:hover { - background-color: var(--secondary-bg); - color: var(--primary-text); -} - -.module-tabs li.is-active a { - border-bottom-color: var(--primary-bg); - color: var(--primary-bg); - font-weight: 600; -} - -.module-tabs li.tab-add-button a { - padding: 0.75rem; - color: var(--primary-bg); -} - -.module-tab-content { - display: none; - padding: 1.5rem; - background-color: white; - border: 1px solid var(--secondary-border); - border-top: none; - border-radius: 0 0 8px 8px; - position: relative; - z-index: 1; -} - -.module-tab-content.is-active { - display: block; - -webkit-animation: fadeIn 0.3s ease; - animation: fadeIn 0.3s ease; -} - -@-webkit-keyframes fadeIn { - from { - opacity: 0; - } - to { - opacity: 1; - } -} - -@keyframes fadeIn { - from { - opacity: 0; - } - to { - opacity: 1; - } -} - -/* Module and Question Actions */ -.module-actions, -.question-actions { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - gap: 0.5rem; - z-index: 10; -} - -.module-actions .button, -.question-actions .button { - padding: 0.5rem; - height: auto; -} - -.question-text-container { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - overflow: hidden; - -o-text-overflow: ellipsis; - text-overflow: ellipsis; - white-space: nowrap; - max-width: 70%; - font-size: 0.95rem; - line-height: 1.5; -} - -.question-text-full { - white-space: normal; - margin-top: 0.5rem; - margin-bottom: 1rem; - padding: 0.75rem 1rem; - background-color: var(--secondary-bg); - border-radius: 6px; - font-size: 1rem; - line-height: 1.6; - color: var(--intensive-text); - border-left: 3px solid var(--primary-bg); -} - -/* Empty State */ -.empty-state { - text-align: center; - padding: 3rem 2rem; - background-color: var(--secondary-bg); - border-radius: 8px; - margin-bottom: 2rem; -} - -.empty-state-icon { - font-size: 3rem; - color: var(--neutral-light); - margin-bottom: 1rem; -} - -.empty-state-title { - font-size: 1.25rem; - font-weight: 600; - color: var(--neutral-dark); - margin-bottom: 0.5rem; -} - -.empty-state-description { - color: var(--neutral); - margin-bottom: 1.5rem; - max-width: 400px; - margin-left: auto; - margin-right: auto; -} - -/* User Management Styling */ -.user-avatar { - border-radius: 50%; - -o-object-fit: cover; - object-fit: cover; - border: 2px solid var(--secondary-border); -} - -.user-card { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 1rem; - border-radius: 8px; - margin-bottom: 1rem; - background-color: var(--tertiary-bg); - border: 1px solid var(--secondary-border); - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.user-card:hover { - -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - -webkit-transform: translateY(-2px); - -ms-transform: translateY(-2px); - transform: translateY(-2px); -} - -.user-info { - margin-left: 1rem; -} - -.user-name { - font-weight: 600; - font-size: 1.1rem; - margin-bottom: 0.25rem; -} - -.user-email { - color: var(--neutral); - font-size: 0.9rem; -} - -/* Badge Styling */ -.badge { - display: inline-block; - padding: 0.25rem 0.75rem; - border-radius: 20px; - font-size: 0.8rem; - font-weight: 500; - text-transform: uppercase; - letter-spacing: 0.5px; -} - -.badge.is-primary { - background-color: var(--primary-bg); - color: white; -} - -.badge.is-success { - background-color: var(--success-bg); - color: white; -} - -.badge.is-error { - background-color: var(--error-bg); - color: white; -} - -/* Timeline Styling */ -.timeline { - position: relative; - margin: 0 0 0 1rem; - padding-left: 1.5rem; -} - -.timeline::before { - content: ""; - position: absolute; - top: 0; - left: 0; - height: 100%; - width: 2px; - background-color: var(--secondary-border); -} - -.timeline-item { - position: relative; - margin-bottom: 1.5rem; -} - -.timeline-marker { - position: absolute; - left: -1.5rem; - width: 12px; - height: 12px; - border-radius: 50%; - background-color: var(--primary-bg); - top: 0.25rem; -} - -.timeline-marker.is-primary { - background-color: var(--primary-bg); -} - -.timeline-marker.is-success { - background-color: var(--success-bg); -} - -.timeline-marker.is-warning { - background-color: #ffe08a; -} - -.timeline-marker.is-danger { - background-color: var(--error-bg); -} - -.timeline-content { - padding-bottom: 1rem; -} - -.timeline-content .heading { - font-size: 0.8rem; - font-weight: 600; - color: var(--neutral); - margin-bottom: 0.25rem; -} - -/* Info Item Styling */ -.info-item { - margin-bottom: 0.75rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.info-item strong { - min-width: 100px; - font-weight: 600; - color: var(--neutral-dark); -} - -/* Auth Styling */ -.login-container { - min-height: 100vh; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - background-color: var(--secondary-bg); - background-image: -o-linear-gradient( - 315deg, - var(--secondary-bg) 0%, - var(--tertiary-bg) 100% - ); - background-image: linear-gradient( - 135deg, - var(--secondary-bg) 0%, - var(--tertiary-bg) 100% - ); -} - -.auth-container { - max-width: 400px; - width: 100%; - padding: 2.5rem; - border-radius: 8px; - -webkit-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08); - box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08); - background-color: var(--tertiary-bg); - border: 1px solid var(--secondary-border); -} - -.auth-title { - text-align: center; - margin-bottom: 2rem; - color: var(--primary-text); - font-weight: 700; - font-size: 1.75rem; -} - -.auth-footer { - text-align: center; - margin-top: 1.5rem; - font-size: 0.9rem; -} diff --git a/src/assets/icons/first_trophy.png b/src/assets/icons/first_trophy.png new file mode 100644 index 0000000000000000000000000000000000000000..fbbc125835ff85ad8895a0cbd5e1058c01a256ce GIT binary patch literal 27490 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 F{{g@c3w!_o literal 0 HcmV?d00001 diff --git a/src/assets/icons/second_trophy.png b/src/assets/icons/second_trophy.png new file mode 100644 index 0000000000000000000000000000000000000000..afd5fa1eaf587ddde293879b46c4e26a39d499bf GIT binary patch literal 26190 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 literal 0 HcmV?d00001 diff --git a/src/assets/icons/third_trophy.png b/src/assets/icons/third_trophy.png new file mode 100644 index 0000000000000000000000000000000000000000..402064dbab2b99b2e52bb53feec7c3f6a4587dcb GIT binary patch literal 19539 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%0Dxn`6D=a>XX4WiOxwa}7PE&p>_zr-`jDi| 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 literal 0 HcmV?d00001 diff --git a/src/assets/math-styles.css b/src/assets/math-styles.css deleted file mode 100644 index 1260222..0000000 --- a/src/assets/math-styles.css +++ /dev/null @@ -1,132 +0,0 @@ -/* -* Prefixed by https://autoprefixer.github.io -* PostCSS: v8.4.14, -* Autoprefixer: v10.4.7 -* Browsers: last 4 version -*/ - -/* Math Rendering Styles */ - -/* General math container */ -.math-content { - font-size: 1rem; - line-height: 1.6; -} - -/* Inline math */ -.math-inline { - display: inline-block; - vertical-align: middle; -} - -/* Block math */ -.math-block { - display: block; - margin: 1rem 0; - overflow-x: auto; - text-align: center; -} - -/* Math editor toolbar */ -.math-symbols-toolbar { - background-color: #f7f7f7; - border-radius: 6px; - padding: 0.75rem; - margin-top: 0.5rem; - -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); -} - -.math-symbols-toolbar button { - margin-right: 0.25rem; - margin-bottom: 0.25rem; - -webkit-transition: all 0.2s ease; - -o-transition: all 0.2s ease; - transition: all 0.2s ease; -} - -.math-symbols-toolbar button:hover { - background-color: #6e44ff; - color: white; -} - -/* Math examples section */ -.math-examples { - background-color: #f8f9fa; - border-radius: 6px; - padding: 0.75rem; - margin-top: 0.5rem; - border: 1px solid #e9ecef; -} - -.math-examples table { - margin-bottom: 0; -} - -.math-examples th, -.math-examples td { - padding: 0.4rem 0.5rem; - vertical-align: middle; -} - -.math-examples code { - background-color: rgba(110, 68, 255, 0.1); - color: #6e44ff; - padding: 0.2rem 0.4rem; - border-radius: 4px; -} - -/* Question option styling */ -.option-content { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - max-width: calc(100% - 60px); -} - -/* Short answer styling */ -.short-answer-content { - background-color: rgba(0, 199, 164, 0.05); - border: 1px solid #00c7a4; - border-radius: 6px; - padding: 1rem; -} - -/* Katex specific overrides */ -.katex { - font-size: 1.1em; -} - -.katex-display { - overflow-x: auto; - overflow-y: hidden; - padding: 0.5rem 0; -} - -/* Preview mode styling */ -.preview-container { - min-height: 100px; - background-color: #fff; - border: 1px solid #dbdbdb; - border-radius: 6px; - padding: 1rem; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05); -} - -/* Tabs styling */ -.tabs ul { - border-bottom-color: #dbdbdb; -} - -.tabs li.is-active a { - border-bottom-color: #6e44ff; - color: #6e44ff; -} - -/* Textarea focus styling */ -#math-editor-textarea:focus { - border-color: #6e44ff; - -webkit-box-shadow: 0 0 0 0.125em rgba(110, 68, 255, 0.25); - box-shadow: 0 0 0 0.125em rgba(110, 68, 255, 0.25); -} diff --git a/src/assets/studentProfile.css b/src/assets/studentProfile.css deleted file mode 100644 index c0b26e1..0000000 --- a/src/assets/studentProfile.css +++ /dev/null @@ -1,781 +0,0 @@ -/* -* Prefixed by https://autoprefixer.github.io -* PostCSS: v8.4.14, -* Autoprefixer: v10.4.7 -* Browsers: last 4 version -*/ - -/* Student Profile Custom Styles - Unconventional Design */ - -/* Container */ -.student-profile-container { - max-width: 1400px; - margin: 0 auto; - padding: 2rem 1rem; - overflow-x: hidden; -} - -/* Back Button */ -.back-button-container { - margin-bottom: 2rem; - position: relative; - z-index: 10; -} - -/* Hero Section */ -.student-profile-hero { - background: -o-linear-gradient(315deg, #6e44ff 0%, #9f84ff 100%); - background: linear-gradient(135deg, #6e44ff 0%, #9f84ff 100%); - border-radius: 0; - padding: 0; - margin-bottom: 3rem; - position: relative; - overflow: hidden; - color: white; - min-height: 400px; - -webkit-box-shadow: 0 15px 30px rgba(110, 68, 255, 0.2); - box-shadow: 0 15px 30px rgba(110, 68, 255, 0.2); -} - -.student-profile-hero::before { - content: ""; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%23ffffff' fill-opacity='0.1' fill-rule='evenodd'/%3E%3C/svg%3E"); - opacity: 0.5; -} - -.hero-content { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 3rem 2rem; - position: relative; - z-index: 2; -} - -.student-info { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - padding-right: 2rem; -} - -.hero-illustration { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: end; - -ms-flex-pack: end; - justify-content: flex-end; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - position: relative; -} - -.hero-illustration img { - max-width: 100%; - max-height: 350px; - -webkit-transform: scale(1.2) translateY(-20px); - -ms-transform: scale(1.2) translateY(-20px); - transform: scale(1.2) translateY(-20px); - -webkit-filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.2)); - filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.2)); -} - -/* Student Profile Elements */ -.student-profile-avatar { - width: 120px; - height: 120px; - border-radius: 0; - border: 4px solid white; - -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); - box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); - margin-bottom: 1.5rem; -} - -.student-profile-name { - font-size: 2.5rem; - font-weight: 700; - margin-bottom: 0.5rem; -} - -.student-profile-email { - font-size: 1.1rem; - opacity: 0.9; - margin-bottom: 1rem; -} - -.student-profile-tags { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin-bottom: 1.5rem; -} - -.student-profile-tag { - background-color: rgba(255, 255, 255, 0.2); - color: white; - border-radius: 0; - padding: 0.3rem 1rem; - margin-right: 0.5rem; - font-weight: 500; -} - -.student-profile-tag.is-active { - background-color: #00c7a4; -} - -.student-profile-tag.is-inactive { - background-color: #ff2c73; -} - -.student-profile-tag.is-suspended { - background-color: #ffa500; -} - -.student-meta { - margin-top: 1.5rem; -} - -.student-meta-item { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin-bottom: 0.5rem; -} - -.student-meta-item .icon { - margin-right: 0.5rem; -} - -/* Main Content Layout */ -.student-profile-main { - display: -ms-grid; - display: grid; - -ms-grid-columns: 1fr 2rem 2fr; - grid-template-columns: 1fr 2fr; - gap: 2rem; - margin-top: 2rem; -} - -/* Sections */ -.student-profile-section { - background-color: white; - border-radius: 0; - -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05); - box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05); - padding: 1.5rem; - margin-bottom: 2rem; - position: relative; - overflow: hidden; - -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease; - transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease; - -o-transition: transform 0.3s ease, box-shadow 0.3s ease; - transition: transform 0.3s ease, box-shadow 0.3s ease; - transition: transform 0.3s ease, box-shadow 0.3s ease, - -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease; -} - -.student-profile-section:hover { - -webkit-transform: translateY(-5px); - -ms-transform: translateY(-5px); - transform: translateY(-5px); - -webkit-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1); - box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1); -} - -.student-profile-section-title { - font-size: 1.5rem; - font-weight: 700; - margin-bottom: 1.5rem; - color: #333; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.student-profile-section-title::after { - content: ""; - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - height: 2px; - background-color: #f0f0f0; - margin-left: 1rem; -} - -/* Statistics Section */ -.stats-section { - position: relative; - overflow: hidden; -} - -.stats-illustration-container { - position: absolute; - top: -20px; - right: -20px; - opacity: 0.1; - z-index: 0; - -webkit-transform: rotate(10deg); - -ms-transform: rotate(10deg); - transform: rotate(10deg); -} - -.stats-illustration { - width: 150px; - height: auto; -} - -/* Performance Overview */ -.performance-overview { - margin-bottom: 1.5rem; - position: relative; - z-index: 1; -} - -.performance-header { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin-bottom: 1rem; -} - -.performance-title { - font-size: 1.2rem; - font-weight: 600; - color: #333; -} - -.performance-badge { - background-color: #6e44ff; - color: white; - padding: 0.3rem 1rem; - font-weight: 600; - font-size: 0.9rem; - border-radius: 0; -} - -/* Stats Grid */ -.stats-grid { - display: -ms-grid; - display: grid; - grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); - gap: 1rem; - position: relative; - z-index: 1; - margin-bottom: 2rem; -} - -.student-profile-stat { - text-align: center; - padding: 1.5rem; - background-color: #f9f9f9; - border-radius: 0; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; -} - -.student-profile-stat:hover { - background-color: #6e44ff; - color: white; - -webkit-transform: translateY(-5px); - -ms-transform: translateY(-5px); - transform: translateY(-5px); -} - -.student-profile-stat:hover .student-profile-stat-value, -.student-profile-stat:hover .student-profile-stat-label, -.student-profile-stat:hover .stat-trend { - color: white; -} - -.student-profile-stat-value { - font-size: 2.5rem; - font-weight: 700; - color: #6e44ff; - line-height: 1; - margin-bottom: 0.5rem; -} - -.student-profile-stat-label { - font-size: 0.9rem; - color: #666; - text-transform: uppercase; - letter-spacing: 1px; - font-weight: 600; - margin-bottom: 0.5rem; -} - -.stat-trend { - font-size: 0.8rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - gap: 0.25rem; -} - -.stat-trend.positive { - color: #00c7a4; -} - -.stat-trend.negative { - color: #ff2c73; -} - -.stat-trend.neutral { - color: #999; -} - -/* Subject Performance */ -.subject-performance { - position: relative; - z-index: 1; -} - -.subject-performance-title { - font-size: 1.2rem; - font-weight: 600; - color: #333; - margin-bottom: 1rem; -} - -.subject-cards { - display: -ms-grid; - display: grid; - grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); - gap: 1rem; -} - -.subject-card { - background-color: white; - border: 1px solid #f0f0f0; - -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); - box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; - overflow: hidden; -} - -.subject-card:hover { - -webkit-transform: translateY(-5px); - -ms-transform: translateY(-5px); - transform: translateY(-5px); - -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1); - box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1); -} - -.subject-card-header { - background-color: #6e44ff; - color: white; - padding: 0.75rem 1rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -ms-flex-pack: justify; - justify-content: space-between; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.subject-card-label { - font-weight: 600; - font-size: 1rem; -} - -.subject-card-score { - font-weight: 700; - font-size: 1.2rem; -} - -.subject-card-body { - padding: 1rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; -} - -.subject-card-icon { - width: 40px; - height: 40px; - background-color: rgba(110, 68, 255, 0.1); - border-radius: 0; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin-right: 1rem; - color: #6e44ff; - font-size: 1.2rem; -} - -.subject-card-info { - -webkit-box-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.subject-card-trend { - font-size: 0.9rem; - font-weight: 600; - margin-bottom: 0.25rem; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - gap: 0.25rem; -} - -.subject-card-trend.positive { - color: #00c7a4; -} - -.subject-card-trend.negative { - color: #ff2c73; -} - -.subject-card-trend.neutral { - color: #999; -} - -.subject-card-status { - font-size: 0.8rem; - color: #666; - text-transform: uppercase; - letter-spacing: 1px; -} - -/* Settings Section */ -.settings-section { - margin-top: 2rem; -} - -.settings-content { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} - -.settings-illustration-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin-bottom: 1.5rem; -} - -.settings-illustration { - max-width: 100%; - height: 150px; -} - -/* Practice Sheets Section */ -.practice-sheets-section { - position: relative; -} - -.practice-sheets-content { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} - -.practice-illustration-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin-bottom: 1.5rem; -} - -.practice-illustration { - height: 120px; - width: auto; -} - -.practice-sheets-table-container { - position: relative; - z-index: 1; -} - -/* Activity Section */ -.activity-section { - position: relative; -} - -.activity-content { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} - -.activity-illustration-container { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - margin-bottom: 1.5rem; -} - -.activity-illustration { - height: 120px; - width: auto; -} - -.activity-timeline-container { - position: relative; - z-index: 1; -} - -.activity-timeline { - position: relative; - padding-left: 2rem; -} - -.activity-timeline::before { - content: ""; - position: absolute; - top: 0; - left: 8px; - height: 100%; - width: 2px; - background-color: #f0f0f0; -} - -.activity-item { - position: relative; - padding-bottom: 1.5rem; -} - -.activity-item:last-child { - padding-bottom: 0; -} - -.activity-marker { - position: absolute; - left: -2rem; - top: 0; - width: 18px; - height: 18px; - border-radius: 0; - background-color: #6e44ff; - border: 3px solid white; - -webkit-box-shadow: 0 0 0 2px #f0f0f0; - box-shadow: 0 0 0 2px #f0f0f0; - z-index: 1; -} - -.activity-marker.is-success { - background-color: #00c7a4; -} - -.activity-marker.is-warning { - background-color: #ffd166; -} - -.activity-date { - font-size: 0.8rem; - color: #999; - margin-bottom: 0.25rem; - font-weight: 500; -} - -.activity-content { - font-weight: 500; - color: #333; -} - -.activity-score { - font-weight: 700; - color: #6e44ff; -} - -/* Illustration Sections */ -.math-illustration-section, -.study-illustration-section { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - padding: 2rem; - background-color: #f9f9f9; - min-height: 300px; -} - -.math-illustration, -.study-illustration { - max-width: 100%; - max-height: 250px; - -webkit-filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.1)); - filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.1)); -} - -/* Button Styles */ -.hip-button { - background-color: #6e44ff; - color: white; - border: none; - border-radius: 0; - padding: 0.5rem 1.5rem; - font-weight: 600; - -webkit-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - transition: all 0.3s ease; - -webkit-box-shadow: 0 4px 10px rgba(110, 68, 255, 0.3); - box-shadow: 0 4px 10px rgba(110, 68, 255, 0.3); -} - -.hip-button:hover { - background-color: #5a36d5; - -webkit-transform: translateY(-2px); - -ms-transform: translateY(-2px); - transform: translateY(-2px); - -webkit-box-shadow: 0 6px 15px rgba(110, 68, 255, 0.4); - box-shadow: 0 6px 15px rgba(110, 68, 255, 0.4); - color: white; -} - -.hip-button.is-small { - padding: 0.25rem 0.75rem; - font-size: 0.85rem; -} - -/* Responsive Styles */ -@media screen and (max-width: 1200px) { - .student-profile-main { - -ms-grid-columns: 1fr; - grid-template-columns: 1fr; - } - - .hero-content { - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - text-align: center; - } - - .student-info { - padding-right: 0; - margin-bottom: 2rem; - } - - .student-profile-tags { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - } - - .student-meta { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - } - - .student-meta-item { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; - } -} - -@media screen and (max-width: 768px) { - .student-profile-hero { - min-height: auto; - } - - .hero-content { - padding: 2rem 1rem; - } - - .student-profile-name { - font-size: 2rem; - } - - .student-profile-avatar { - width: 100px; - height: 100px; - } - - .hero-illustration img { - max-height: 200px; - } - - .math-illustration-section, - .study-illustration-section { - min-height: 200px; - } - - .math-illustration, - .study-illustration { - max-height: 180px; - } -} diff --git a/src/components/ui/avatar.tsx b/src/components/ui/avatar.tsx new file mode 100644 index 0000000..46a8ad4 --- /dev/null +++ b/src/components/ui/avatar.tsx @@ -0,0 +1,51 @@ +import * as React from "react"; +import * as AvatarPrimitive from "@radix-ui/react-avatar"; + +import { cn } from "../../lib/utils"; + +function Avatar({ + className, + ...props +}: React.ComponentProps) { + return ( + + ); +} + +function AvatarImage({ + className, + ...props +}: React.ComponentProps) { + return ( + + ); +} + +function AvatarFallback({ + className, + ...props +}: React.ComponentProps) { + return ( + + ); +} + +export { Avatar, AvatarImage, AvatarFallback }; diff --git a/src/lib/utils.ts b/src/lib/utils.ts index 9a96470..f17f04c 100644 --- a/src/lib/utils.ts +++ b/src/lib/utils.ts @@ -29,3 +29,17 @@ export function formatTimeFilter(time: string) { return "Today"; } } + +export function getRandomColor() { + const colors = [ + "bg-red-700", + "bg-blue-700", + "bg-green-700", + "bg-yellow-700", + "bg-purple-700", + "bg-pink-700", + "bg-indigo-700", + "bg-gray-700", + ]; + return colors[Math.floor(Math.random() * colors.length)]; +} diff --git a/src/pages/student/Rewards.tsx b/src/pages/student/Rewards.tsx index d311571..1ad9359 100644 --- a/src/pages/student/Rewards.tsx +++ b/src/pages/student/Rewards.tsx @@ -1,4 +1,7 @@ -// import { useAuthStore } from "../../stores/authStore"; +import { useAuthStore } from "../../stores/authStore"; +import firstTrophy from "../../assets/icons/first_trophy.png"; +import secondTrophy from "../../assets/icons/second_trophy.png"; +import thirdTrophy from "../../assets/icons/third_trophy.png"; import { useState } from "react"; // import { @@ -23,12 +26,23 @@ import { DropdownMenuRadioItem, DropdownMenuTrigger, } from "../../components/ui/dropdown-menu"; -import { formatTimeFilter } from "../../lib/utils"; +import { formatTimeFilter, getRandomColor } from "../../lib/utils"; +import { Avatar, AvatarFallback } from "../../components/ui/avatar"; +import { Zap } from "lucide-react"; export const Rewards = () => { - // const user = useAuthStore((state) => state.user); + const user = useAuthStore((state) => state.user); const [time, setTime] = useState("bottom"); + const leaderboard = [ + { id: 1, name: "Alice", xp: 587 }, + { id: 2, name: "Bob", xp: 560 }, + { id: 3, name: "Charlie", xp: 540 }, + { id: 4, name: "David", xp: 510 }, + { id: 5, name: "Emma", xp: 495 }, + ]; + const trophies = [firstTrophy, secondTrophy, thirdTrophy]; + return (

@@ -38,8 +52,8 @@ export const Rewards = () => { Start a lesson.

-
- +
+ { - -
+ + {leaderboard.map((user, index) => { + const isTopThree = index < 3; + + return ( +
+
+ {isTopThree ? ( + {`trophy_${index + ) : ( + + {index + 1} + + )} + + + + {user.name.slice(0, 1).toUpperCase()} + + + +

+ {user.name} +

+
+ +
+

{user.xp}

+ +
+
+ ); + })}
- -
+ + {leaderboard.map((user, index) => { + const isTopThree = index < 3; + + return ( +
+
+ {isTopThree ? ( + {`trophy_${index + ) : ( + + {index + 1} + + )} + + + + {user.name.slice(0, 1).toUpperCase()} + + + +

+ {user.name} +

+
+ +
+

{user.xp}

+ +
+
+ ); + })} +
+ + {leaderboard.map((user, index) => { + const isTopThree = index < 3; + + return ( +
+
+ {isTopThree ? ( + {`trophy_${index + ) : ( + + {index + 1} + + )} + + + + {user.name.slice(0, 1).toUpperCase()} + + + +

+ {user.name} +

+
+ +
+

{user.xp}

+ +
+
+ ); + })}
-