diff --git a/src/App.css b/src/App.css index b9d355d..99293db 100644 --- a/src/App.css +++ b/src/App.css @@ -1,42 +1,55 @@ -#root { - max-width: 1280px; - margin: 0 auto; - padding: 2rem; - text-align: center; +/* Reset default margins and set full height */ +html, body { + margin: 0; + padding: 0; + height: 100%; } -.logo { - height: 6em; - padding: 1.5em; - will-change: filter; - transition: filter 300ms; -} -.logo:hover { - filter: drop-shadow(0 0 2em #646cffaa); -} -.logo.react:hover { - filter: drop-shadow(0 0 2em #61dafbaa); +#root { + height: 100%; } -@keyframes logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } +.page-wrapper { + min-height: 100vh; + width: 100%; + display: flex; + justify-content: center; + align-items: center; + position: relative; } -@media (prefers-reduced-motion: no-preference) { - a:nth-of-type(2) .logo { - animation: logo-spin infinite 20s linear; - } +.card-container { + width: 24rem; + background-color: #1f2937; + border-radius: 0.5rem; + box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); + padding: 2rem; + text-align: center; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); } -.card { - padding: 2em; +.card-tailwind { + height: 8rem; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; } -.read-the-docs { - color: #888; +.card-title { + font-size: 1.5rem; + font-weight: bold; + color: white; + margin-bottom: 2rem; } + +.title-tailwind { + color: transparent; + background-image: linear-gradient(to right, #bfdbfe, #a5f3fc); + background-clip: text; + -webkit-background-clip: text; + margin-bottom: 1rem; +} \ No newline at end of file diff --git a/src/App.jsx b/src/App.jsx index d035b80..8855b8e 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,19 +1,43 @@ import { useState } from 'react' import './App.css' -function App() { - const [count, setCount] = useState(0) +const styles = { + default: { + toggle: 'fixed top-6 right-6 bg-blue-500 text-white px-4 py-2 rounded hover:bg-blue-600 transition-colors', + button: 'bg-white text-gray-800 px-6 py-2 rounded-lg font-semibold hover:bg-gray-100 transition-colors' + }, + tailwind: { + toggle: 'fixed top-6 right-6 bg-gradient-to-r from-blue-500 to-blue-600 text-white px-6 py-3 rounded-lg font-bold text-lg shadow-lg hover:from-blue-600 hover:to-blue-700 transition-all duration-200', + button: 'bg-gradient-to-r from-blue-500 to-cyan-500 text-white px-6 py-2 rounded-lg font-semibold hover:from-blue-600 hover:to-cyan-600 transition-all duration-300 shadow-lg transform hover:scale-105' + } +} +export default function App() { + const [count, setCount] = useState(0) + const [isTailwind, setIsTailwind] = useState(false) + + const s = isTailwind ? styles.tailwind : styles.default + return ( - <> -

Technical Evaluation

-
- + +
+

+ Technical Evaluation +

+
- +
) -} - -export default App +} \ No newline at end of file diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 0000000..d37737f --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,12 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: [ + "./index.html", + "./src/**/*.{js,ts,jsx,tsx}", + ], + theme: { + extend: {}, + }, + plugins: [], +} +