Help
RSS
API
Feed
Maltego
Contact
Domain > cloudskills.club
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2024-12-24
65.8.178.31
(
ClassC
)
2025-04-23
108.139.15.97
(
ClassC
)
2025-12-01
3.169.173.68
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: CloudFrontDate: Mon, 01 Dec 2025 15:21:10 GMTContent-Type: text/htmlContent-Length: 167Connection: keep-aliveLocation: https://cloudskills.club/X-Cache: Redirect from cloudfrontVia: 1.1 bb0a0a1792594c22377eddc835c4b882.cloudfront.net (CloudFront)X-Amz-Cf-Pop: HIO52-P4X-Amz-Cf-Id: 23eA8eDYvyERoLVGK78KAS66bE83UwZdYu5ad7DikpnlASFaGxi4_w html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>CloudFront/center>/body>/html>
Port 443
HTTP/1.1 200 OKContent-Type: text/htmlContent-Length: 95269Connection: keep-aliveLast-Modified: Wed, 30 Apr 2025 13:47:52 GMTServer: AmazonS3Date: Mon, 01 Dec 2025 15:21:11 GMTETag: e6df5c2ce507a18710cd71e05daffeb2X-Cache: RefreshHit from cloudfrontVia: 1.1 6a31d7747628574e9fa26dd40efa100a.cloudfront.net (CloudFront)X-Amz-Cf-Pop: HIO52-P4X-Amz-Cf-Id: Y0eYsCD95g4lq0Eftv2Kp-kBVF_bxsyZC6F9V34Q3N_NWz88vRdrtQ !DOCTYPE html>html langen>head> meta http-equivContent-Type contenttext/html; charsetUTF-8> script> window.dataLayer window.dataLayer || ; function gtag() { dataLayer.push(arguments); } gtag(js, new Date()); gtag(config, G-VWD5M9VXHP); /script> script async srchttps://scripts.simpleanalyticscdn.com/latest.js>/script> style data-vite-theme data-inject-first>:root { --background: 0 0% 100%;--foreground: 20 14.3% 4.1%;--muted: 60 4.8% 95.9%;--muted-foreground: 25 5.3% 44.7%;--popover: 0 0% 100%;--popover-foreground: 20 14.3% 4.1%;--card: 0 0% 100%;--card-foreground: 20 14.3% 4.1%;--border: 20 5.9% 90%;--input: 20 5.9% 90%;--primary: 222 47% 11%;--primary-foreground: 221 8% 97%;--secondary: 60 4.8% 95.9%;--secondary-foreground: 24 9.8% 10%;--accent: 60 4.8% 95.9%;--accent-foreground: 24 9.8% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 60 9.1% 97.8%;--ring: 20 14.3% 4.1%;--radius: 0.5rem; } .dark { --background: 240 10% 3.9%;--foreground: 0 0% 98%;--muted: 240 3.7% 15.9%;--muted-foreground: 240 5% 64.9%;--popover: 240 10% 3.9%;--popover-foreground: 0 0% 98%;--card: 240 10% 3.9%;--card-foreground: 0 0% 98%;--border: 240 3.7% 15.9%;--input: 240 3.7% 15.9%;--primary: 222 47% 11%;--primary-foreground: 221 8% 97%;--secondary: 240 3.7% 15.9%;--secondary-foreground: 0 0% 98%;--accent: 240 3.7% 15.9%;--accent-foreground: 0 0% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 98%;--ring: 240 4.9% 83.9%;--radius: 0.5rem; } /style> script typemodule> import { createHotContext } from /@vite/client; const hot createHotContext(/__dummy__runtime-error-plugin); function sendError(error) { if (!(error instanceof Error)) { error new Error((unknown runtime error)); } const serialized { message: error.message, stack: error.stack, }; hot.send(runtime-error-plugin:error, serialized); } window.addEventListener(error, (evt) > { sendError(evt.error); }); window.addEventListener(unhandledrejection, (evt) > { sendError(evt.reason); }); /script> script typemodule> import RefreshRuntime from /@react-refresh RefreshRuntime.injectIntoGlobalHook(window) window.$RefreshReg$ () > {} window.$RefreshSig$ () > (type) > type window.__vite_plugin_react_preamble_installed__ true /script> script typemodule src./index_files/client>/script> meta nameviewport contentwidthdevice-width, initial-scale1.0> script src./index_files/v3>/script> style typetext/css data-vite-dev-id/home/runner/workspace/client/src/index.css>*, ::before, ::after { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ;}::backdrop { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ;}/*! tailwindcss v3.4.14 | MIT License | https://tailwindcss.com*//*1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)*/*,::before,::after { box-sizing: border-box; /* 1 */ border-width: 0; /* 2 */ border-style: solid; /* 2 */ border-color: #e5e7eb; /* 2 */}::before,::after { --tw-content: ;}/*1. Use a consistent sensible line-height in all browsers.2. Prevent adjustments of font size after orientation changes in iOS.3. Use a more readable tab size.4. Use the users configured `sans` font-family by default.5. Use the users configured `sans` font-feature-settings by default.6. Use the users configured `sans` font-variation-settings by default.7. Disable tap highlights on iOS*/html,:host { line-height: 1.5; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -moz-tab-size: 4; /* 3 */ -o-tab-size: 4; tab-size: 4; /* 3 */ font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; /* 4 */ font-feature-settings: normal; /* 5 */ font-variation-settings: normal; /* 6 */ -webkit-tap-highlight-color: transparent; /* 7 */}/*1. Remove the margin in all browsers.2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.*/body { margin: 0; /* 1 */ line-height: inherit; /* 2 */}/*1. Add the correct height in Firefox.2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id190655)3. Ensure horizontal rules are visible by default.*/hr { height: 0; /* 1 */ color: inherit; /* 2 */ border-top-width: 1px; /* 3 */}/*Add the correct text decoration in Chrome, Edge, and Safari.*/abbr:where(title) { -webkit-text-decoration: underline dotted; text-decoration: underline dotted;}/*Remove the default font size and weight for headings.*/h1,h2,h3,h4,h5,h6 { font-size: inherit; font-weight: inherit;}/*Reset links to optimize for opt-in styling instead of opt-out.*/a { color: inherit; text-decoration: inherit;}/*Add the correct font weight in Edge and Safari.*/b,strong { font-weight: bolder;}/*1. Use the users configured `mono` font-family by default.2. Use the users configured `mono` font-feature-settings by default.3. Use the users configured `mono` font-variation-settings by default.4. Correct the odd `em` font sizing in all browsers.*/code,kbd,samp,pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace; /* 1 */ font-feature-settings: normal; /* 2 */ font-variation-settings: normal; /* 3 */ font-size: 1em; /* 4 */}/*Add the correct font size in all browsers.*/small { font-size: 80%;}/*Prevent `sub` and `sup` elements from affecting the line height in all browsers.*/sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}sub { bottom: -0.25em;}sup { top: -0.5em;}/*1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id999088, https://bugs.webkit.org/show_bug.cgi?id201297)2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id935729, https://bugs.webkit.org/show_bug.cgi?id195016)3. Remove gaps between table borders by default.*/table { text-indent: 0; /* 1 */ border-color: inherit; /* 2 */ border-collapse: collapse; /* 3 */}/*1. Change the font styles in all browsers.2. Remove the margin in Firefox and Safari.3. Remove default padding in all browsers.*/button,input,optgroup,select,textarea { font-family: inherit; /* 1 */ font-feature-settings: inherit; /* 1 */ font-variation-settings: inherit; /* 1 */ font-size: 100%; /* 1 */ font-weight: inherit; /* 1 */ line-height: inherit; /* 1 */ letter-spacing: inherit; /* 1 */ color: inherit; /* 1 */ margin: 0; /* 2 */ padding: 0; /* 3 */}/*Remove the inheritance of text transform in Edge and Firefox.*/button,select { text-transform: none;}/*1. Correct the inability to style clickable types in iOS and Safari.2. Remove default button styles.*/button,input:where(typebutton),input:where(typereset),input:where(typesubmit) { -webkit-appearance: button; /* 1 */ background-color: transparent; /* 2 */ background-image: none; /* 2 */}/*Use the modern Firefox focus style for all focusable elements.*/:-moz-focusring { outline: auto;}/*Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)*/:-moz-ui-invalid { box-shadow: none;}/*Add the correct vertical alignment in Chrome and Firefox.*/progress { vertical-align: baseline;}/*Correct the cursor style of increment and decrement buttons in Safari.*/::-webkit-inner-spin-button,::-webkit-outer-spin-button { height: auto;}/*1. Correct the odd appearance in Chrome and Safari.2. Correct the outline style in Safari.*/typesearch { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */}/*Remove the inner padding in Chrome and Safari on macOS.*/::-webkit-search-decoration { -webkit-appearance: none;}/*1. Correct the inability to style clickable types in iOS and Safari.2. Change font properties to `inherit` in Safari.*/::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */}/*Add the correct display in Chrome and Safari.*/summary { display: list-item;}/*Removes the default spacing and border for appropriate elements.*/blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre { margin: 0;}fieldset { margin: 0; padding: 0;}legend { padding: 0;}ol,ul,menu { list-style: none; margin: 0; padding: 0;}/*Reset default styling for dialogs.*/dialog { padding: 0;}/*Prevent resizing textareas horizontally by default.*/textarea { resize: vertical;}/*1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)2. Set the default placeholder color to the users configured gray 400 color.*/input::-moz-placeholder, textarea::-moz-placeholder { opacity: 1; /* 1 */ color: #9ca3af; /* 2 */}input::placeholder,textarea::placeholder { opacity: 1; /* 1 */ color: #9ca3af; /* 2 */}/*Set the default cursor for buttons.*/button,rolebutton { cursor: pointer;}/*Make sure disabled buttons dont get the pointer cursor.*/:disabled { cursor: default;}/*1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) This can trigger a poorly considered lint error in some tools but is included by design.*/img,svg,video,canvas,audio,iframe,embed,object { display: block; /* 1 */ vertical-align: middle; /* 2 */}/*Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)*/img,video { max-width: 100%; height: auto;}/* Make elements with the HTML hidden attribute stay hidden by default */hidden:where(:not(hiddenuntil-found)) { display: none;} * { border-color: hsl(var(--border));} body { background-color: hsl(var(--background)); font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; color: hsl(var(--foreground)); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}.container { width: 100%;}@media (min-width: 640px) { .container { max-width: 640px; }}@media (min-width: 768px) { .container { max-width: 768px; }}@media (min-width: 1024px) { .container { max-width: 1024px; }}@media (min-width: 1280px) { .container { max-width: 1280px; }}@media (min-width: 1536px) { .container { max-width: 1536px; }}.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0;}.pointer-events-none { pointer-events: none;}.pointer-events-auto { pointer-events: auto;}.visible { visibility: visible;}.invisible { visibility: hidden;}.fixed { position: fixed;}.absolute { position: absolute;}.relative { position: relative;}.inset-0 { inset: 0px;}.inset-x-0 { left: 0px; right: 0px;}.inset-y-0 { top: 0px; bottom: 0px;}.-bottom-12 { bottom: -3rem;}.-bottom-48 { bottom: -12rem;}.-left-12 { left: -3rem;}.-left-48 { left: -12rem;}.-right-12 { right: -3rem;}.-right-48 { right: -12rem;}.-top-12 { top: -3rem;}.-top-48 { top: -12rem;}.bottom-0 { bottom: 0px;}.left-0 { left: 0px;}.left-1 { left: 0.25rem;}.left-1\/2 { left: 50%;}.left-2 { left: 0.5rem;}.left-48 { left: 12rem;}.left-\50\%\ { left: 50%;}.right-0 { right: 0px;}.right-1 { right: 0.25rem;}.right-2 { right: 0.5rem;}.right-3 { right: 0.75rem;}.right-4 { right: 1rem;}.top-0 { top: 0px;}.top-1\.5 { top: 0.375rem;}.top-1\/2 { top: 50%;}.top-2 { top: 0.5rem;}.top-3\.5 { top: 0.875rem;}.top-4 { top: 1rem;}.top-\1px\ { top: 1px;}.top-\50\%\ { top: 50%;}.top-\60\%\ { top: 60%;}.top-full { top: 100%;}.z-10 { z-index: 10;}.z-20 { z-index: 20;}.z-50 { z-index: 50;}.z-\100\ { z-index: 100;}.z-\1\ { z-index: 1;}.-mx-1 { margin-left: -0.25rem; margin-right: -0.25rem;}.mx-2 { margin-left: 0.5rem; margin-right: 0.5rem;}.mx-3\.5 { margin-left: 0.875rem; margin-right: 0.875rem;}.mx-4 { margin-left: 1rem; margin-right: 1rem;}.mx-auto { margin-left: auto; margin-right: auto;}.my-0\.5 { margin-top: 0.125rem; margin-bottom: 0.125rem;}.my-1 { margin-top: 0.25rem; margin-bottom: 0.25rem;}.-ml-4 { margin-left: -1rem;}.-mt-4 { margin-top: -1rem;}.mb-1 { margin-bottom: 0.25rem;}.mb-12 { margin-bottom: 3rem;}.mb-2 { margin-bottom: 0.5rem;}.mb-3 { margin-bottom: 0.75rem;}.mb-4 { margin-bottom: 1rem;}.mb-6 { margin-bottom: 1.5rem;}.mb-8 { margin-bottom: 2rem;}.ml-1 { margin-left: 0.25rem;}.ml-auto { margin-left: auto;}.mr-2 { margin-right: 0.5rem;}.mt-1\.5 { margin-top: 0.375rem;}.mt-2 { margin-top: 0.5rem;}.mt-24 { margin-top: 6rem;}.mt-4 { margin-top: 1rem;}.mt-auto { margin-top: auto;}.line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}.block { display: block;}.flex { display: flex;}.inline-flex { display: inline-flex;}.table { display: table;}.grid { display: grid;}.hidden { display: none;}.aspect-square { aspect-ratio: 1 / 1;}.aspect-video { aspect-ratio: 16 / 9;}.size-4 { width: 1rem; height: 1rem;}.h-1\.5 { height: 0.375rem;}.h-10 { height: 2.5rem;}.h-11 { height: 2.75rem;}.h-12 { height: 3rem;}.h-16 { height: 4rem;}.h-2 { height: 0.5rem;}.h-2\.5 { height: 0.625rem;}.h-24 { height: 6rem;}.h-3 { height: 0.75rem;}.h-3\.5 { height: 0.875rem;}.h-4 { height: 1rem;}.h-48 { height: 12rem;}.h-5 { height: 1.25rem;}.h-6 { height: 1.5rem;}.h-7 { height: 1.75rem;}.h-8 { height: 2rem;}.h-9 { height: 2.25rem;}.h-\1px\ { height: 1px;}.h-\300px\ { height: 300px;}.h-\400px\ { height: 400px;}.h-\500px\ { height: 500px;}.h-\var\(--radix-navigation-menu-viewport-height\)\ { height: var(--radix-navigation-menu-viewport-height);}.h-\var\(--radix-select-trigger-height\)\ { height: var(--radix-select-trigger-height);}.h-auto { height: auto;}.h-full { height: 100%;}.h-px { height: 1px;}.h-svh { height: 100svh;}.max-h-96 { max-height: 24rem;}.max-h-\300px\ { max-height: 300px;}.max-h-screen { max-height: 100vh;}.min-h-0 { min-height: 0px;}.min-h-\80px\ { min-height: 80px;}.min-h-screen { min-height: 100vh;}.min-h-svh { min-height: 100svh;}.w-0 { width: 0px;}.w-1 { width: 0.25rem;}.w-10 { width: 2.5rem;}.w-11 { width: 2.75rem;}.w-2 { width: 0.5rem;}.w-2\.5 { width: 0.625rem;}.w-24 { width: 6rem;}.w-3 { width: 0.75rem;}.w-3\.5 { width: 0.875rem;}.w-3\/4 { width: 75%;}.w-4 { width: 1rem;}.w-48 { width: 12rem;}.w-5 { width: 1.25rem;}.w-64 { width: 16rem;}.w-7 { width: 1.75rem;}.w-72 { width: 18rem;}.w-8 { width: 2rem;}.w-9 { width: 2.25rem;}.w-\--sidebar-width\ { width: var(--sidebar-width);}.w-\100px\ { width: 100px;}.w-\1px\ { width: 1px;}.w-\500px\ { width: 500px;}.w-auto { width: auto;}.w-full { width: 100%;}.w-max { width: -moz-max-content; width: max-content;}.w-px { width: 1px;}.min-w-0 { min-width: 0px;}.min-w-5 { min-width: 1.25rem;}.min-w-\12rem\ { min-width: 12rem;}.min-w-\8rem\ { min-width: 8rem;}.min-w-\var\(--radix-select-trigger-width\)\ { min-width: var(--radix-select-trigger-width);}.max-w-2xl { max-width: 42rem;}.max-w-3xl { max-width: 48rem;}.max-w-6xl { max-width: 72rem;}.max-w-\--skeleton-width\ { max-width: var(--skeleton-width);}.max-w-lg { max-width: 32rem;}.max-w-max { max-width: -moz-max-content; max-width: max-content;}.max-w-md { max-width: 28rem;}.flex-1 { flex: 1 1 0%;}.shrink-0 { flex-shrink: 0;}.grow { flex-grow: 1;}.grow-0 { flex-grow: 0;}.basis-full { flex-basis: 100%;}.caption-bottom { caption-side: bottom;}.border-collapse { border-collapse: collapse;}.-translate-x-1\/2 { --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.-translate-x-px { --tw-translate-x: -1px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.-translate-y-1\/2 { --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.translate-x-\-50\%\ { --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.translate-x-px { --tw-translate-x: 1px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.translate-y-\-50\%\ { --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.-rotate-12 { --tw-rotate: -12deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.rotate-45 { --tw-rotate: 45deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.rotate-90 { --tw-rotate: 90deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.transform { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}@keyframes pulse { 50% { opacity: .5; }}.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;}@keyframes spin { to { transform: rotate(360deg); }}.animate-spin { animation: spin 1s linear infinite;}.cursor-default { cursor: default;}.cursor-pointer { cursor: pointer;}.touch-none { touch-action: none;}.select-none { -webkit-user-select: none; -moz-user-select: none; user-select: none;}.list-none { list-style-type: none;}.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr));}.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr));}.flex-row { flex-direction: row;}.flex-col { flex-direction: column;}.flex-col-reverse { flex-direction: column-reverse;}.flex-wrap { flex-wrap: wrap;}.items-start { align-items: flex-start;}.items-end { align-items: flex-end;}.items-center { align-items: center;}.items-stretch { align-items: stretch;}.justify-start { justify-content: flex-start;}.justify-center { justify-content: center;}.justify-between { justify-content: space-between;}.gap-1 { gap: 0.25rem;}.gap-1\.5 { gap: 0.375rem;}.gap-2 { gap: 0.5rem;}.gap-4 { gap: 1rem;}.gap-6 { gap: 1.5rem;}.gap-8 { gap: 2rem;}.space-x-1 > :not(hidden) ~ :not(hidden) { --tw-space-x-reverse: 0; margin-right: calc(0.25rem * var(--tw-space-x-reverse)); margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));}.space-x-4 > :not(hidden) ~ :not(hidden) { --tw-space-x-reverse: 0; margin-right: calc(1rem * var(--tw-space-x-reverse)); margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));}.space-y-1 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));}.space-y-1\.5 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));}.space-y-2 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));}.space-y-4 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse));}.space-y-6 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));}.overflow-auto { overflow: auto;}.overflow-hidden { overflow: hidden;}.overflow-y-auto { overflow-y: auto;}.overflow-x-hidden { overflow-x: hidden;}.whitespace-nowrap { white-space: nowrap;}.break-words { overflow-wrap: break-word;}.rounded-\2px\ { border-radius: 2px;}.rounded-\inherit\ { border-radius: inherit;}.rounded-full { border-radius: 9999px;}.rounded-lg { border-radius: var(--radius);}.rounded-md { border-radius: calc(var(--radius) - 2px);}.rounded-sm { border-radius: calc(var(--radius) - 4px);}.rounded-xl { border-radius: 0.75rem;}.rounded-t-\10px\ { border-top-left-radius: 10px; border-top-right-radius: 10px;}.rounded-tl-sm { border-top-left-radius: calc(var(--radius) - 4px);}.border { border-width: 1px;}.border-2 { border-width: 2px;}.border-\1\.5px\ { border-width: 1.5px;}.border-y { border-top-width: 1px; border-bottom-width: 1px;}.border-b { border-bottom-width: 1px;}.border-l { border-left-width: 1px;}.border-r { border-right-width: 1px;}.border-t { border-top-width: 1px;}.border-dashed { border-style: dashed;}.border-\--color-border\ { border-color: var(--color-border);}.border-border\/50 { border-color: hsl(var(--border) / 0.5);}.border-destructive { border-color: hsl(var(--destructive));}.border-destructive\/50 { border-color: hsl(var(--destructive) / 0.5);}.border-input { border-color: hsl(var(--input));}.border-primary { border-color: hsl(var(--primary));}.border-sidebar-border { border-color: hsl(var(--sidebar-border));}.border-transparent { border-color: transparent;}.border-l-transparent { border-left-color: transparent;}.border-t-transparent { border-top-color: transparent;}.bg-\--color-bg\ { background-color: var(--color-bg);}.bg-accent { background-color: hsl(var(--accent));}.bg-background { background-color: hsl(var(--background));}.bg-black\/80 { background-color: rgb(0 0 0 / 0.8);}.bg-blue-500\/15 { background-color: rgb(59 130 246 / 0.15);}.bg-border { background-color: hsl(var(--border));}.bg-card { background-color: hsl(var(--card));}.bg-destructive { background-color: hsl(var(--destructive));}.bg-foreground { background-color: hsl(var(--foreground));}.bg-gray-200 { --tw-bg-opacity: 1; background-color: rgb(229 231 235 / var(--tw-bg-opacity));}.bg-gray-50 { --tw-bg-opacity: 1; background-color: rgb(249 250 251 / var(--tw-bg-opacity));}.bg-gray-900 { --tw-bg-opacity: 1; background-color: rgb(17 24 39 / var(--tw-bg-opacity));}.bg-indigo-500\/15 { background-color: rgb(99 102 241 / 0.15);}.bg-muted { background-color: hsl(var(--muted));}.bg-muted\/50 { background-color: hsl(var(--muted) / 0.5);}.bg-popover { background-color: hsl(var(--popover));}.bg-primary { background-color: hsl(var(--primary));}.bg-purple-500\/15 { background-color: rgb(168 85 247 / 0.15);}.bg-secondary { background-color: hsl(var(--secondary));}.bg-sidebar { background-color: hsl(var(--sidebar-background));}.bg-sidebar-border { background-color: hsl(var(--sidebar-border));}.bg-transparent { background-color: transparent;}.bg-white { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity));}.bg-\linear-gradient\(to_right\2c \#80808012_1px\2c transparent_1px\)\2c linear-gradient\(to_bottom\2c \#80808012_1px\2c transparent_1px\)\ { background-image: linear-gradient(to right,#80808012 1px,transparent 1px),linear-gradient(to bottom,#80808012 1px,transparent 1px);}.bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));}.bg-gradient-to-r { background-image: linear-gradient(to right, var(--tw-gradient-stops));}.from-blue-400 { --tw-gradient-from: #60a5fa var(--tw-gradient-from-position); --tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.from-blue-500\/20 { --tw-gradient-from: rgb(59 130 246 / 0.2) var(--tw-gradient-from-position); --tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.from-gray-950 { --tw-gradient-from: #030712 var(--tw-gradient-from-position); --tw-gradient-to: rgb(3 7 18 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.from-green-500\/20 { --tw-gradient-from: rgb(34 197 94 / 0.2) var(--tw-gradient-from-position); --tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.from-primary { --tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.from-purple-500\/20 { --tw-gradient-from: rgb(168 85 247 / 0.2) var(--tw-gradient-from-position); --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);}.via-purple-400 { --tw-gradient-to: rgb(192 132 252 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #c084fc var(--tw-gradient-via-position), var(--tw-gradient-to);}.to-blue-600 { --tw-gradient-to: #2563eb var(--tw-gradient-to-position);}.to-gray-900 { --tw-gradient-to: #111827 var(--tw-gradient-to-position);}.to-pink-400 { --tw-gradient-to: #f472b6 var(--tw-gradient-to-position);}.to-pink-500\/20 { --tw-gradient-to: rgb(236 72 153 / 0.2) var(--tw-gradient-to-position);}.to-purple-500\/20 { --tw-gradient-to: rgb(168 85 247 / 0.2) var(--tw-gradient-to-position);}.to-teal-500\/20 { --tw-gradient-to: rgb(20 184 166 / 0.2) var(--tw-gradient-to-position);}.bg-\size\:24px_24px\ { background-size: 24px 24px;}.bg-clip-text { -webkit-background-clip: text; background-clip: text;}.fill-current { fill: currentColor;}.object-cover { -o-object-fit: cover; object-fit: cover;}.p-0 { padding: 0px;}.p-1 { padding: 0.25rem;}.p-2 { padding: 0.5rem;}.p-3 { padding: 0.75rem;}.p-4 { padding: 1rem;}.p-6 { padding: 1.5rem;}.p-\1px\ { padding: 1px;}.px-1 { padding-left: 0.25rem; padding-right: 0.25rem;}.px-2 { padding-left: 0.5rem; padding-right: 0.5rem;}.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem;}.px-3 { padding-left: 0.75rem; padding-right: 0.75rem;}.px-4 { padding-left: 1rem; padding-right: 1rem;}.px-5 { padding-left: 1.25rem; padding-right: 1.25rem;}.px-8 { padding-left: 2rem; padding-right: 2rem;}.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem;}.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem;}.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem;}.py-16 { padding-top: 4rem; padding-bottom: 4rem;}.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem;}.py-24 { padding-top: 6rem; padding-bottom: 6rem;}.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem;}.py-4 { padding-top: 1rem; padding-bottom: 1rem;}.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem;}.py-8 { padding-top: 2rem; padding-bottom: 2rem;}.pb-3 { padding-bottom: 0.75rem;}.pb-4 { padding-bottom: 1rem;}.pl-2\.5 { padding-left: 0.625rem;}.pl-4 { padding-left: 1rem;}.pl-8 { padding-left: 2rem;}.pr-2 { padding-right: 0.5rem;}.pr-2\.5 { padding-right: 0.625rem;}.pr-4 { padding-right: 1rem;}.pr-8 { padding-right: 2rem;}.pt-0 { padding-top: 0px;}.pt-1 { padding-top: 0.25rem;}.pt-2 { padding-top: 0.5rem;}.pt-3 { padding-top: 0.75rem;}.pt-4 { padding-top: 1rem;}.pt-6 { padding-top: 1.5rem;}.text-left { text-align: left;}.text-center { text-align: center;}.align-middle { vertical-align: middle;}.font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;}.text-2xl { font-size: 1.5rem; line-height: 2rem;}.text-3xl { font-size: 1.875rem; line-height: 2.25rem;}.text-4xl { font-size: 2.25rem; line-height: 2.5rem;}.text-5xl { font-size: 3rem; line-height: 1;}.text-\0\.8rem\ { font-size: 0.8rem;}.text-lg { font-size: 1.125rem; line-height: 1.75rem;}.text-sm { font-size: 0.875rem; line-height: 1.25rem;}.text-xl { font-size: 1.25rem; line-height: 1.75rem;}.text-xs { font-size: 0.75rem; line-height: 1rem;}.font-bold { font-weight: 700;}.font-medium { font-weight: 500;}.font-normal { font-weight: 400;}.font-semibold { font-weight: 600;}.tabular-nums { --tw-numeric-spacing: tabular-nums; font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);}.leading-none { line-height: 1;}.tracking-tight { letter-spacing: -0.025em;}.tracking-widest { letter-spacing: 0.1em;}.text-accent-foreground { color: hsl(var(--accent-foreground));}.text-blue-600 { --tw-text-opacity: 1; color: rgb(37 99 235 / var(--tw-text-opacity));}.text-border { color: hsl(var(--border));}.text-card-foreground { color: hsl(var(--card-foreground));}.text-current { color: currentColor;}.text-destructive { color: hsl(var(--destructive));}.text-destructive-foreground { color: hsl(var(--destructive-foreground));}.text-foreground { color: hsl(var(--foreground));}.text-foreground\/50 { color: hsl(var(--foreground) / 0.5);}.text-gray-300 { --tw-text-opacity: 1; color: rgb(209 213 219 / var(--tw-text-opacity));}.text-gray-400 { --tw-text-opacity: 1; color: rgb(156 163 175 / var(--tw-text-opacity));}.text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity));}.text-gray-600 { --tw-text-opacity: 1; color: rgb(75 85 99 / var(--tw-text-opacity));}.text-gray-900 { --tw-text-opacity: 1; color: rgb(17 24 39 / var(--tw-text-opacity));}.text-green-600 { --tw-text-opacity: 1; color: rgb(22 163 74 / var(--tw-text-opacity));}.text-muted-foreground { color: hsl(var(--muted-foreground));}.text-popover-foreground { color: hsl(var(--popover-foreground));}.text-primary { color: hsl(var(--primary));}.text-primary-foreground { color: hsl(var(--primary-foreground));}.text-purple-600 { --tw-text-opacity: 1; color: rgb(147 51 234 / var(--tw-text-opacity));}.text-red-500 { --tw-text-opacity: 1; color: rgb(239 68 68 / var(--tw-text-opacity));}.text-secondary-foreground { color: hsl(var(--secondary-foreground));}.text-sidebar-foreground { color: hsl(var(--sidebar-foreground));}.text-sidebar-foreground\/70 { color: hsl(var(--sidebar-foreground) / 0.7);}.text-transparent { color: transparent;}.text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity));}.text-yellow-400 { --tw-text-opacity: 1; color: rgb(250 204 21 / var(--tw-text-opacity));}.underline-offset-4 { text-underline-offset: 4px;}.opacity-0 { opacity: 0;}.opacity-50 { opacity: 0.5;}.opacity-60 { opacity: 0.6;}.opacity-70 { opacity: 0.7;}.opacity-90 { opacity: 0.9;}.mix-blend-multiply { mix-blend-mode: multiply;}.shadow-\0_0_0_1px_hsl\(var\(--sidebar-border\)\)\ { --tw-shadow: 0 0 0 1px hsl(var(--sidebar-border)); --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-md { --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-none { --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-sm { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.shadow-xl { --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.outline-none { outline: 2px solid transparent; outline-offset: 2px;}.outline { outline-style: solid;}.ring-0 { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);}.ring-2 { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);}.ring-ring { --tw-ring-color: hsl(var(--ring));}.ring-sidebar-ring { --tw-ring-color: hsl(var(--sidebar-ring));}.ring-offset-background { --tw-ring-offset-color: hsl(var(--background));}.blur-xl { --tw-blur: blur(24px); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);}.filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);}.transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-\left\2c right\2c width\ { transition-property: left,right,width; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-\margin\2c opa\ { transition-property: margin,opa; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-\width\2c height\2c padding\ { transition-property: width,height,padding; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-\width\ { transition-property: width; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-shadow { transition-property: box-shadow; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;}.duration-1000 { transition-duration: 1000ms;}.duration-200 { transition-duration: 200ms;}.duration-300 { transition-duration: 300ms;}.ease-in-out { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);}.ease-linear { transition-timing-function: linear;}@keyframes enter { from { opacity: var(--tw-enter-opacity, 1); transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity, 1); transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0)); }}.animate-in { animation-name: enter; animation-duration: 150ms; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial;}.fade-in-0 { --tw-enter-opacity: 0;}.fade-in-80 { --tw-enter-opacity: 0.8;}.zoom-in-95 { --tw-enter-scale: .95;}.duration-1000 { animation-duration: 1000ms;}.duration-200 { animation-duration: 200ms;}.duration-300 { animation-duration: 300ms;}.ease-in-out { animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);}.ease-linear { animation-timing-function: linear;}.animation-delay-2000 { animation-delay: 2s; }.animation-delay-4000 { animation-delay: 4s; }@keyframes blob { 0% { transform: translate(0px, 0px) scale(1); } 33% { transform: translate(30px, -50px) scale(1.1); } 66% { transform: translate(-20px, 20px) scale(0.9); } 100% { transform: translate(0px, 0px) scale(1); } }.animate-blob { animation: blob 7s infinite; }.animate-gradient-x { background-size: 200% 200%; animation: gradient-x 15s ease infinite; }@keyframes gradient-x { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }.file\:border-0::file-selector-button { border-width: 0px;}.file\:bg-transparent::file-selector-button { background-color: transparent;}.file\:text-sm::file-selector-button { font-size: 0.875rem; line-height: 1.25rem;}.file\:font-medium::file-selector-button { font-weight: 500;}.file\:text-foreground::file-selector-button { color: hsl(var(--foreground));}.placeholder\:text-muted-foreground::-moz-placeholder { color: hsl(var(--muted-foreground));}.placeholder\:text-muted-foreground::placeholder { color: hsl(var(--muted-foreground));}.after\:absolute::after { content: var(--tw-content); position: absolute;}.after\:-inset-2::after { content: var(--tw-content); inset: -0.5rem;}.after\:inset-y-0::after { content: var(--tw-content); top: 0px; bottom: 0px;}.after\:left-1\/2::after { content: var(--tw-content); left: 50%;}.after\:w-1::after { content: var(--tw-content); width: 0.25rem;}.after\:w-\2px\::after { content: var(--tw-content); width: 2px;}.after\:-translate-x-1\/2::after { content: var(--tw-content); --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.first\:rounded-l-md:first-child { border-top-left-radius: calc(var(--radius) - 2px); border-bottom-left-radius: calc(var(--radius) - 2px);}.first\:border-l:first-child { border-left-width: 1px;}.last\:rounded-r-md:last-child { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px);}.focus-within\:relative:focus-within { position: relative;}.focus-within\:z-20:focus-within { z-index: 20;}.hover\:scale-105:hover { --tw-scale-x: 1.05; --tw-scale-y: 1.05; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.hover\:bg-accent:hover { background-color: hsl(var(--accent));}.hover\:bg-destructive\/80:hover { background-color: hsl(var(--destructive) / 0.8);}.hover\:bg-destructive\/90:hover { background-color: hsl(var(--destructive) / 0.9);}.hover\:bg-gray-50:hover { --tw-bg-opacity: 1; background-color: rgb(249 250 251 / var(--tw-bg-opacity));}.hover\:bg-muted:hover { background-color: hsl(var(--muted));}.hover\:bg-muted\/50:hover { background-color: hsl(var(--muted) / 0.5);}.hover\:bg-primary:hover { background-color: hsl(var(--primary));}.hover\:bg-primary\/80:hover { background-color: hsl(var(--primary) / 0.8);}.hover\:bg-primary\/90:hover { background-color: hsl(var(--primary) / 0.9);}.hover\:bg-secondary:hover { background-color: hsl(var(--secondary));}.hover\:bg-secondary\/80:hover { background-color: hsl(var(--secondary) / 0.8);}.hover\:bg-sidebar-accent:hover { background-color: hsl(var(--sidebar-accent));}.hover\:text-accent-foreground:hover { color: hsl(var(--accent-foreground));}.hover\:text-foreground:hover { color: hsl(var(--foreground));}.hover\:text-muted-foreground:hover { color: hsl(var(--muted-foreground));}.hover\:text-primary:hover { color: hsl(var(--primary));}.hover\:text-primary-foreground:hover { color: hsl(var(--primary-foreground));}.hover\:text-sidebar-accent-foreground:hover { color: hsl(var(--sidebar-accent-foreground));}.hover\:text-white:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity));}.hover\:underline:hover { text-decoration-line: underline;}.hover\:opacity-100:hover { opacity: 1;}.hover\:opacity-90:hover { opacity: 0.9;}.hover\:shadow-\0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\:hover { --tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent)); --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.hover\:shadow-lg:hover { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.hover\:after\:bg-sidebar-border:hover::after { content: var(--tw-content); background-color: hsl(var(--sidebar-border));}.focus\:bg-accent:focus { background-color: hsl(var(--accent));}.focus\:bg-primary:focus { background-color: hsl(var(--primary));}.focus\:text-accent-foreground:focus { color: hsl(var(--accent-foreground));}.focus\:text-primary-foreground:focus { color: hsl(var(--primary-foreground));}.focus\:opacity-100:focus { opacity: 1;}.focus\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px;}.focus\:ring-2:focus { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);}.focus\:ring-ring:focus { --tw-ring-color: hsl(var(--ring));}.focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px;}.focus-visible\:outline-none:focus-visible { outline: 2px solid transparent; outline-offset: 2px;}.focus-visible\:ring-1:focus-visible { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);}.focus-visible\:ring-2:focus-visible { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);}.focus-visible\:ring-ring:focus-visible { --tw-ring-color: hsl(var(--ring));}.focus-visible\:ring-sidebar-ring:focus-visible { --tw-ring-color: hsl(var(--sidebar-ring));}.focus-visible\:ring-offset-1:focus-visible { --tw-ring-offset-width: 1px;}.focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width: 2px;}.focus-visible\:ring-offset-background:focus-visible { --tw-ring-offset-color: hsl(var(--background));}.active\:bg-sidebar-accent:active { background-color: hsl(var(--sidebar-accent));}.active\:text-sidebar-accent-foreground:active { color: hsl(var(--sidebar-accent-foreground));}.disabled\:pointer-events-none:disabled { pointer-events: none;}.disabled\:cursor-not-allowed:disabled { cursor: not-allowed;}.disabled\:opacity-50:disabled { opacity: 0.5;}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100 { opacity: 1;}.group:hover .group-hover\:rotate-0 { --tw-rotate: 0deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.group:hover .group-hover\:scale-110 { --tw-scale-x: 1.1; --tw-scale-y: 1.1; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100 { opacity: 1;}.group:hover .group-hover\:opacity-100 { opacity: 1;}.group.destructive .group-\\.destructive\\:border-muted\/40 { border-color: hsl(var(--muted) / 0.4);}.group.destructive .group-\\.destructive\\:text-red-300 { --tw-text-opacity: 1; color: rgb(252 165 165 / var(--tw-text-opacity));}.group.destructive .group-\\.destructive\\:hover\:border-destructive\/30:hover { border-color: hsl(var(--destructive) / 0.3);}.group.destructive .group-\\.destructive\\:hover\:bg-destructive:hover { background-color: hsl(var(--destructive));}.group.destructive .group-\\.destructive\\:hover\:text-destructive-foreground:hover { color: hsl(var(--destructive-foreground));}.group.destructive .group-\\.destructive\\:hover\:text-red-50:hover { --tw-text-opacity: 1; color: rgb(254 242 242 / var(--tw-text-opacity));}.group.destructive .group-\\.destructive\\:focus\:ring-destructive:focus { --tw-ring-color: hsl(var(--destructive));}.group.destructive .group-\\.destructive\\:focus\:ring-red-400:focus { --tw-ring-opacity: 1; --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity));}.group.destructive .group-\\.destructive\\:focus\:ring-offset-red-600:focus { --tw-ring-offset-color: #dc2626;}.peer\/menu-button:hover ~ .peer-hover\/menu-button\:text-sidebar-accent-foreground { color: hsl(var(--sidebar-accent-foreground));}.peer:disabled ~ .peer-disabled\:cursor-not-allowed { cursor: not-allowed;}.peer:disabled ~ .peer-disabled\:opacity-70 { opacity: 0.7;}.has-\\data-variant\inset\\\:bg-sidebar:has(data-variantinset) { background-color: hsl(var(--sidebar-background));}.has-\\:disabled\\:opacity-50:has(:disabled) { opacity: 0.5;}.group\/menu-item:has(data-sidebarmenu-action) .group-has-\\data-sidebar\menu-action\\\/menu-item\:pr-8 { padding-right: 2rem;}.aria-disabled\:pointer-events-nonearia-disabledtrue { pointer-events: none;}.aria-disabled\:opacity-50aria-disabledtrue { opacity: 0.5;}.aria-selected\:bg-accentaria-selectedtrue { background-color: hsl(var(--accent));}.aria-selected\:bg-accent\/50aria-selectedtrue { background-color: hsl(var(--accent) / 0.5);}.aria-selected\:text-accent-foregroundaria-selectedtrue { color: hsl(var(--accent-foreground));}.aria-selected\:text-muted-foregroundaria-selectedtrue { color: hsl(var(--muted-foreground));}.aria-selected\:opacity-100aria-selectedtrue { opacity: 1;}.aria-selected\:opacity-30aria-selectedtrue { opacity: 0.3;}.data-\disabled\true\\:pointer-events-nonedata-disabledtrue { pointer-events: none;}.data-\disabled\\:pointer-events-nonedata-disabled { pointer-events: none;}.data-\panel-group-direction\vertical\\:h-pxdata-panel-group-directionvertical { height: 1px;}.data-\panel-group-direction\vertical\\:w-fulldata-panel-group-directionvertical { width: 100%;}.data-\side\bottom\\:translate-y-1data-sidebottom { --tw-translate-y: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\side\left\\:-translate-x-1data-sideleft { --tw-translate-x: -0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\side\right\\:translate-x-1data-sideright { --tw-translate-x: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\side\top\\:-translate-y-1data-sidetop { --tw-translate-y: -0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\state\checked\\:translate-x-5data-statechecked { --tw-translate-x: 1.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\state\unchecked\\:translate-x-0data-stateunchecked { --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\swipe\cancel\\:translate-x-0data-swipecancel { --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\swipe\end\\:translate-x-\var\(--radix-toast-swipe-end-x\)\data-swipeend { --tw-translate-x: var(--radix-toast-swipe-end-x); transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\swipe\move\\:translate-x-\var\(--radix-toast-swipe-move-x\)\data-swipemove { --tw-translate-x: var(--radix-toast-swipe-move-x); transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}@keyframes accordion-up { from { height: var(--radix-accordion-content-height); } to { height: 0; }}.data-\state\closed\\:animate-accordion-updata-stateclosed { animation: accordion-up 0.2s ease-out;}@keyframes accordion-down { from { height: 0; } to { height: var(--radix-accordion-content-height); }}.data-\state\open\\:animate-accordion-downdata-stateopen { animation: accordion-down 0.2s ease-out;}.data-\panel-group-direction\vertical\\:flex-coldata-panel-group-directionvertical { flex-direction: column;}.data-\active\true\\:bg-sidebar-accentdata-activetrue { background-color: hsl(var(--sidebar-accent));}.data-\active\\:bg-accent\/50data-active { background-color: hsl(var(--accent) / 0.5);}.data-\selected\\true\\\:bg-accentdata-selectedtrue { background-color: hsl(var(--accent));}.data-\state\active\\:bg-backgrounddata-stateactive { background-color: hsl(var(--background));}.data-\state\checked\\:bg-primarydata-statechecked { background-color: hsl(var(--primary));}.data-\state\on\\:bg-accentdata-stateon { background-color: hsl(var(--accent));}.data-\state\open\\:bg-accentdata-stateopen { background-color: hsl(var(--accent));}.data-\state\open\\:bg-accent\/50data-stateopen { background-color: hsl(var(--accent) / 0.5);}.data-\state\open\\:bg-secondarydata-stateopen { background-color: hsl(var(--secondary));}.data-\state\selected\\:bg-muteddata-stateselected { background-color: hsl(var(--muted));}.data-\state\unchecked\\:bg-inputdata-stateunchecked { background-color: hsl(var(--input));}.data-\active\true\\:font-mediumdata-activetrue { font-weight: 500;}.data-\active\true\\:text-sidebar-accent-foregrounddata-activetrue { color: hsl(var(--sidebar-accent-foreground));}.data-\selected\true\\:text-accent-foregrounddata-selectedtrue { color: hsl(var(--accent-foreground));}.data-\state\active\\:text-foregrounddata-stateactive { color: hsl(var(--foreground));}.data-\state\checked\\:text-primary-foregrounddata-statechecked { color: hsl(var(--primary-foreground));}.data-\state\on\\:text-accent-foregrounddata-stateon { color: hsl(var(--accent-foreground));}.data-\state\open\\:text-accent-foregrounddata-stateopen { color: hsl(var(--accent-foreground));}.data-\state\open\\:text-muted-foregrounddata-stateopen { color: hsl(var(--muted-foreground));}.data-\disabled\true\\:opacity-50data-disabledtrue { opacity: 0.5;}.data-\disabled\\:opacity-50data-disabled { opacity: 0.5;}.data-\state\open\\:opacity-100data-stateopen { opacity: 1;}.data-\state\active\\:shadow-smdata-stateactive { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.data-\swipe\move\\:transition-nonedata-swipemove { transition-property: none;}.data-\state\closed\\:duration-300data-stateclosed { transition-duration: 300ms;}.data-\state\open\\:duration-500data-stateopen { transition-duration: 500ms;}.data-\motion\^\from-\\:animate-indata-motion^from- { animation-name: enter; animation-duration: 150ms; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial;}.data-\state\open\\:animate-indata-stateopen { animation-name: enter; animation-duration: 150ms; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial;}.data-\state\visible\\:animate-indata-statevisible { animation-name: enter; animation-duration: 150ms; --tw-enter-opacity: initial; --tw-enter-scale: initial; --tw-enter-rotate: initial; --tw-enter-translate-x: initial; --tw-enter-translate-y: initial;}.data-\motion\^\to-\\:animate-outdata-motion^to- { animation-name: exit; animation-duration: 150ms; --tw-exit-opacity: initial; --tw-exit-scale: initial; --tw-exit-rotate: initial; --tw-exit-translate-x: initial; --tw-exit-translate-y: initial;}.data-\state\closed\\:animate-outdata-stateclosed { animation-name: exit; animation-duration: 150ms; --tw-exit-opacity: initial; --tw-exit-scale: initial; --tw-exit-rotate: initial; --tw-exit-translate-x: initial; --tw-exit-translate-y: initial;}.data-\state\hidden\\:animate-outdata-statehidden { animation-name: exit; animation-duration: 150ms; --tw-exit-opacity: initial; --tw-exit-scale: initial; --tw-exit-rotate: initial; --tw-exit-translate-x: initial; --tw-exit-translate-y: initial;}.data-\swipe\end\\:animate-outdata-swipeend { animation-name: exit; animation-duration: 150ms; --tw-exit-opacity: initial; --tw-exit-scale: initial; --tw-exit-rotate: initial; --tw-exit-translate-x: initial; --tw-exit-translate-y: initial;}.data-\motion\^\from-\\:fade-indata-motion^from- { --tw-enter-opacity: 0;}.data-\motion\^\to-\\:fade-outdata-motion^to- { --tw-exit-opacity: 0;}.data-\state\closed\\:fade-out-0data-stateclosed { --tw-exit-opacity: 0;}.data-\state\closed\\:fade-out-80data-stateclosed { --tw-exit-opacity: 0.8;}.data-\state\hidden\\:fade-outdata-statehidden { --tw-exit-opacity: 0;}.data-\state\open\\:fade-in-0data-stateopen { --tw-enter-opacity: 0;}.data-\state\visible\\:fade-indata-statevisible { --tw-enter-opacity: 0;}.data-\state\closed\\:zoom-out-95data-stateclosed { --tw-exit-scale: .95;}.data-\state\open\\:zoom-in-90data-stateopen { --tw-enter-scale: .9;}.data-\state\open\\:zoom-in-95data-stateopen { --tw-enter-scale: .95;}.data-\motion\from-end\\:slide-in-from-right-52data-motionfrom-end { --tw-enter-translate-x: 13rem;}.data-\motion\from-start\\:slide-in-from-left-52data-motionfrom-start { --tw-enter-translate-x: -13rem;}.data-\motion\to-end\\:slide-out-to-right-52data-motionto-end { --tw-exit-translate-x: 13rem;}.data-\motion\to-start\\:slide-out-to-left-52data-motionto-start { --tw-exit-translate-x: -13rem;}.data-\side\bottom\\:slide-in-from-top-2data-sidebottom { --tw-enter-translate-y: -0.5rem;}.data-\side\left\\:slide-in-from-right-2data-sideleft { --tw-enter-translate-x: 0.5rem;}.data-\side\right\\:slide-in-from-left-2data-sideright { --tw-enter-translate-x: -0.5rem;}.data-\side\top\\:slide-in-from-bottom-2data-sidetop { --tw-enter-translate-y: 0.5rem;}.data-\state\closed\\:slide-out-to-bottomdata-stateclosed { --tw-exit-translate-y: 100%;}.data-\state\closed\\:slide-out-to-leftdata-stateclosed { --tw-exit-translate-x: -100%;}.data-\state\closed\\:slide-out-to-left-1\/2data-stateclosed { --tw-exit-translate-x: -50%;}.data-\state\closed\\:slide-out-to-rightdata-stateclosed { --tw-exit-translate-x: 100%;}.data-\state\closed\\:slide-out-to-right-fulldata-stateclosed { --tw-exit-translate-x: 100%;}.data-\state\closed\\:slide-out-to-topdata-stateclosed { --tw-exit-translate-y: -100%;}.data-\state\closed\\:slide-out-to-top-\48\%\data-stateclosed { --tw-exit-translate-y: -48%;}.data-\state\open\\:slide-in-from-bottomdata-stateopen { --tw-enter-translate-y: 100%;}.data-\state\open\\:slide-in-from-leftdata-stateopen { --tw-enter-translate-x: -100%;}.data-\state\open\\:slide-in-from-left-1\/2data-stateopen { --tw-enter-translate-x: -50%;}.data-\state\open\\:slide-in-from-rightdata-stateopen { --tw-enter-translate-x: 100%;}.data-\state\open\\:slide-in-from-topdata-stateopen { --tw-enter-translate-y: -100%;}.data-\state\open\\:slide-in-from-top-\48\%\data-stateopen { --tw-enter-translate-y: -48%;}.data-\state\open\\:slide-in-from-top-fulldata-stateopen { --tw-enter-translate-y: -100%;}.data-\state\closed\\:duration-300data-stateclosed { animation-duration: 300ms;}.data-\state\open\\:duration-500data-stateopen { animation-duration: 500ms;}.data-\panel-group-direction\vertical\\:after\:left-0data-panel-group-directionvertical::after { content: var(--tw-content); left: 0px;}.data-\panel-group-direction\vertical\\:after\:h-1data-panel-group-directionvertical::after { content: var(--tw-content); height: 0.25rem;}.data-\panel-group-direction\vertical\\:after\:w-fulldata-panel-group-directionvertical::after { content: var(--tw-content); width: 100%;}.data-\panel-group-direction\vertical\\:after\:-translate-y-1\/2data-panel-group-directionvertical::after { content: var(--tw-content); --tw-translate-y: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\panel-group-direction\vertical\\:after\:translate-x-0data-panel-group-directionvertical::after { content: var(--tw-content); --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.data-\state\open\\:hover\:bg-sidebar-accent:hoverdata-stateopen { background-color: hsl(var(--sidebar-accent));}.data-\state\open\\:hover\:text-sidebar-accent-foreground:hoverdata-stateopen { color: hsl(var(--sidebar-accent-foreground));}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:left-\calc\(var\(--sidebar-width\)\*-1\)\ { left: calc(var(--sidebar-width) * -1);}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:right-\calc\(var\(--sidebar-width\)\*-1\)\ { right: calc(var(--sidebar-width) * -1);}.groupdata-sideleft .group-data-\side\left\\:-right-4 { right: -1rem;}.groupdata-sideright .group-data-\side\right\\:left-0 { left: 0px;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:-mt-8 { margin-top: -2rem;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:hidden { display: none;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:\!size-8 { width: 2rem !important; height: 2rem !important;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:w-\--sidebar-width-icon\ { width: var(--sidebar-width-icon);}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:w-\calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\ { width: calc(var(--sidebar-width-icon) + 1rem);}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:w-\calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\ { width: calc(var(--sidebar-width-icon) + 1rem + 2px);}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:w-0 { width: 0px;}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:translate-x-0 { --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.groupdata-sideright .group-data-\side\right\\:rotate-180 { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.groupdata-stateopen .group-data-\state\open\\:rotate-180 { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:overflow-hidden { overflow: hidden;}.groupdata-variantfloating .group-data-\variant\floating\\:rounded-lg { border-radius: var(--radius);}.groupdata-variantfloating .group-data-\variant\floating\\:border { border-width: 1px;}.groupdata-sideleft .group-data-\side\left\\:border-r { border-right-width: 1px;}.groupdata-sideright .group-data-\side\right\\:border-l { border-left-width: 1px;}.groupdata-variantfloating .group-data-\variant\floating\\:border-sidebar-border { border-color: hsl(var(--sidebar-border));}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:\!p-0 { padding: 0px !important;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:\!p-2 { padding: 0.5rem !important;}.groupdata-collapsibleicon .group-data-\collapsible\icon\\:opacity-0 { opacity: 0;}.groupdata-variantfloating .group-data-\variant\floating\\:shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:after\:left-full::after { content: var(--tw-content); left: 100%;}.groupdata-collapsibleoffcanvas .group-data-\collapsible\offcanvas\\:hover\:bg-sidebar:hover { background-color: hsl(var(--sidebar-background));}.peer\/menu-buttondata-sizedefault ~ .peer-data-\size\default\\/menu-button\:top-1\.5 { top: 0.375rem;}.peer\/menu-buttondata-sizelg ~ .peer-data-\size\lg\\/menu-button\:top-2\.5 { top: 0.625rem;}.peer\/menu-buttondata-sizesm ~ .peer-data-\size\sm\\/menu-button\:top-1 { top: 0.25rem;}.peerdata-variantinset ~ .peer-data-\variant\inset\\:min-h-\calc\(100svh-theme\(spacing\.4\)\)\ { min-height: calc(100svh - 1rem);}.peer\/menu-buttondata-activetrue ~ .peer-data-\active\true\\/menu-button\:text-sidebar-accent-foreground { color: hsl(var(--sidebar-accent-foreground));}.dark\:border-destructive:is(.dark *) { border-color: hsl(var(--destructive));}@media (min-width: 640px) { .sm\:bottom-0 { bottom: 0px; } .sm\:right-0 { right: 0px; } .sm\:top-auto { top: auto; } .sm\:mt-0 { margin-top: 0px; } .sm\:flex { display: flex; } .sm\:max-w-sm { max-width: 24rem; } .sm\:flex-row { flex-direction: row; } .sm\:flex-col { flex-direction: column; } .sm\:justify-end { justify-content: flex-end; } .sm\:gap-2\.5 { gap: 0.625rem; } .sm\:space-x-2 > :not(hidden) ~ :not(hidden) { --tw-space-x-reverse: 0; margin-right: calc(0.5rem * var(--tw-space-x-reverse)); margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); } .sm\:space-x-4 > :not(hidden) ~ :not(hidden) { --tw-space-x-reverse: 0; margin-right: calc(1rem * var(--tw-space-x-reverse)); margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); } .sm\:space-y-0 > :not(hidden) ~ :not(hidden) { --tw-space-y-reverse: 0; margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0px * var(--tw-space-y-reverse)); } .sm\:rounded-lg { border-radius: var(--radius); } .sm\:text-left { text-align: left; } .data-\state\open\\:sm\:slide-in-from-bottom-fulldata-stateopen { --tw-enter-translate-y: 100%; }}@media (min-width: 768px) { .md\:absolute { position: absolute; } .md\:block { display: block; } .md\:flex { display: flex; } .md\:w-\var\(--radix-navigation-menu-viewport-width\)\ { width: var(--radix-navigation-menu-viewport-width); } .md\:w-auto { width: auto; } .md\:max-w-\420px\ { max-width: 420px; } .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .md\:opacity-0 { opacity: 0; } .after\:md\:hidden::after { content: var(--tw-content); display: none; } .peerdata-variantinset ~ .md\:peer-data-\variant\inset\\:m-2 { margin: 0.5rem; } .peerdata-statecollapseddata-variantinset ~ .md\:peer-data-\state\collapsed\\:peer-data-\variant\inset\\:ml-2 { margin-left: 0.5rem; } .peerdata-variantinset ~ .md\:peer-data-\variant\inset\\:ml-0 { margin-left: 0px; } .peerdata-variantinset ~ .md\:peer-data-\variant\inset\\:rounded-xl { border-radius: 0.75rem; } .peerdata-variantinset ~ .md\:peer-data-\variant\inset\\:shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }}@media (min-width: 1024px) { .lg\:col-span-2 { grid-column: span 2 / span 2; } .lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }}.\\&\:has\(\aria-selected\\)\\:bg-accent:has(aria-selected) { background-color: hsl(var(--accent));}.first\:\\&\:has\(\aria-selected\\)\\:rounded-l-md:has(aria-selected):first-child { border-top-left-radius: calc(var(--radius) - 2px); border-bottom-left-radius: calc(var(--radius) - 2px);}.last\:\\&\:has\(\aria-selected\\)\\:rounded-r-md:has(aria-selected):last-child { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px);}.\\&\:has\(\aria-selected\\.day-outside\)\\:bg-accent\/50:has(aria-selected.day-outside) { background-color: hsl(var(--accent) / 0.5);}.\\&\:has\(\aria-selected\\.day-range-end\)\\:rounded-r-md:has(aria-selected.day-range-end) { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px);}.\\&\:has\(\role\checkbox\\)\\:pr-0:has(rolecheckbox) { padding-right: 0px;}.\\&\>button\\:hidden>button { display: none;}.\\&\>span\:last-child\\:truncate>span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}.\\&\>span\\:line-clamp-1>span { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;}.\\&\>svg\+div\\:translate-y-\-3px\>svg+div { --tw-translate-y: -3px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.\\&\>svg\\:absolute>svg { position: absolute;}.\\&\>svg\\:left-4>svg { left: 1rem;}.\\&\>svg\\:top-4>svg { top: 1rem;}.\\&\>svg\\:size-4>svg { width: 1rem; height: 1rem;}.\\&\>svg\\:h-2\.5>svg { height: 0.625rem;}.\\&\>svg\\:h-3>svg { height: 0.75rem;}.\\&\>svg\\:h-3\.5>svg { height: 0.875rem;}.\\&\>svg\\:w-2\.5>svg { width: 0.625rem;}.\\&\>svg\\:w-3>svg { width: 0.75rem;}.\\&\>svg\\:w-3\.5>svg { width: 0.875rem;}.\\&\>svg\\:shrink-0>svg { flex-shrink: 0;}.\\&\>svg\\:text-destructive>svg { color: hsl(var(--destructive));}.\\&\>svg\\:text-foreground>svg { color: hsl(var(--foreground));}.\\&\>svg\\:text-muted-foreground>svg { color: hsl(var(--muted-foreground));}.\\&\>svg\\:text-sidebar-accent-foreground>svg { color: hsl(var(--sidebar-accent-foreground));}.\\&\>svg\~\*\\:pl-7>svg~* { padding-left: 1.75rem;}.\\&\>tr\\:last\:border-b-0:last-child>tr { border-bottom-width: 0px;}.\\&\data-panel-group-direction\vertical\\>div\\:rotate-90data-panel-group-directionvertical>div { --tw-rotate: 90deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.\\&\data-state\open\\>svg\\:rotate-180data-stateopen>svg { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}.\\&_\.recharts-cartesian-axis-tick_text\\:fill-muted-foreground .recharts-cartesian-axis-tick text { fill: hsl(var(--muted-foreground));}.\\&_\.recharts-cartesian-grid_line\stroke\\\#ccc\\\\:stroke-border\/50 .recharts-cartesian-grid linestroke#ccc { stroke: hsl(var(--border) / 0.5);}.\\&_\.recharts-curve\.recharts-tooltip-cursor\\:stroke-border .recharts-curve.recharts-tooltip-cursor { stroke: hsl(var(--border));}.\\&_\.recharts-dot\stroke\\\#fff\\\\:stroke-transparent .recharts-dotstroke#fff { stroke: transparent;}.\\&_\.recharts-layer\\:outline-none .recharts-layer { outline: 2px solid transparent; outline-offset: 2px;}.\\&_\.recharts-polar-grid_\stroke\\\#ccc\\\\:stroke-border .recharts-polar-grid stroke#ccc { stroke: hsl(var(--border));}.\\&_\.recharts-radial-bar-background-sector\\:fill-muted .recharts-radial-bar-background-sector { fill: hsl(var(--muted));}.\\&_\.recharts-rectangle\.recharts-tooltip-cursor\\:fill-muted .recharts-rectangle.recharts-tooltip-cursor { fill: hsl(var(--muted));}.\\&_\.recharts-reference-line_\stroke\\\#ccc\\\\:stroke-border .recharts-reference-line stroke#ccc { stroke: hsl(var(--border));}.\\&_\.recharts-sector\stroke\\\#fff\\\\:stroke-transparent .recharts-sectorstroke#fff { stroke: transparent;}.\\&_\.recharts-sector\\:outline-none .recharts-sector { outline: 2px solid transparent; outline-offset: 2px;}.\\&_\.recharts-surface\\:outline-none .recharts-surface { outline: 2px solid transparent; outline-offset: 2px;}.\\&_\cmdk-group-heading\\\:px-2 cmdk-group-heading { padding-left: 0.5rem; padding-right: 0.5rem;}.\\&_\cmdk-group-heading\\\:py-1\.5 cmdk-group-heading { padding-top: 0.375rem; padding-bottom: 0.375rem;}.\\&_\cmdk-group-heading\\\:text-xs cmdk-group-heading { font-size: 0.75rem; line-height: 1rem;}.\\&_\cmdk-group-heading\\\:font-medium cmdk-group-heading { font-weight: 500;}.\\&_\cmdk-group-heading\\\:text-muted-foreground cmdk-group-heading { color: hsl(var(--muted-foreground));}.\\&_\cmdk-group\\:not\(\hidden\\)_\~\cmdk-group\\\:pt-0 cmdk-group:not(hidden) ~cmdk-group { padding-top: 0px;}.\\&_\cmdk-group\\\:px-2 cmdk-group { padding-left: 0.5rem; padding-right: 0.5rem;}.\\&_\cmdk-input-wrapper\_svg\\:h-5 cmdk-input-wrapper svg { height: 1.25rem;}.\\&_\cmdk-input-wrapper\_svg\\:w-5 cmdk-input-wrapper svg { width: 1.25rem;}.\\&_\cmdk-input\\\:h-12 cmdk-input { height: 3rem;}.\\&_\cmdk-item\\\:px-2 cmdk-item { padding-left: 0.5rem; padding-right: 0.5rem;}.\\&_\cmdk-item\\\:py-3 cmdk-item { padding-top: 0.75rem; padding-bottom: 0.75rem;}.\\&_\cmdk-item\_svg\\:h-5 cmdk-item svg { height: 1.25rem;}.\\&_\cmdk-item\_svg\\:w-5 cmdk-item svg { width: 1.25rem;}.\\&_p\\:leading-relaxed p { line-height: 1.625;}.\\&_svg\\:pointer-events-none svg { pointer-events: none;}.\\&_svg\\:size-4 svg { width: 1rem; height: 1rem;}.\\&_svg\\:shrink-0 svg { flex-shrink: 0;}.\\&_tr\:last-child\\:border-0 tr:last-child { border-width: 0px;}.\\&_tr\\:border-b tr { border-bottom-width: 1px;}data-sideleftdata-collapsibleoffcanvas .\\data-side\left\\data-collapsible\offcanvas\_\&\\:-right-2 { right: -0.5rem;}data-sideleftdata-statecollapsed .\\data-side\left\\data-state\collapsed\_\&\\:cursor-e-resize { cursor: e-resize;}data-sideleft .\\data-side\left\_\&\\:cursor-w-resize { cursor: w-resize;}data-siderightdata-collapsibleoffcanvas .\\data-side\right\\data-collapsible\offcanvas\_\&\\:-left-2 { left: -0.5rem;}data-siderightdata-statecollapsed .\\data-side\right\\data-state\collapsed\_\&\\:cursor-w-resize { cursor: w-resize;}data-sideright .\\data-side\right\_\&\\:cursor-e-resize { cursor: e-resize;} /style>/head>body>div idroot> div classmin-h-screen bg-gray-50> main> section classrelative py-24 overflow-hidden bg-gradient-to-br from-gray-950 to-gray-900> div classabsolute inset-0> div classabsolute w-500px h-500px -left-48 -top-48 bg-blue-500/15 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob>/div> div classabsolute w-500px h-500px -right-48 -top-48 bg-purple-500/15 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob animation-delay-2000>/div> div classabsolute w-500px h-500px -bottom-48 left-48 bg-indigo-500/15 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob animation-delay-4000>/div> /div> div classabsolute inset-0 bg-linear-gradient(to_right,#80808012_1px,transparent_1px),linear-gradient(to_bottom,#80808012_1px,transparent_1px) bg-size:24px_24px>/div> div classcontainer mx-auto max-w-6xl px-4 relative z-10> div classtext-center max-w-3xl mx-auto>h1 classtext-5xl font-bold mb-6 text-transparent bg-clip-text bg-gradient-to-r from-blue-400 via-purple-400 to-pink-400 animate-gradient-x> Transform Your Career with Expert-Led Courses/h1> p classtext-xl text-gray-300 mb-8>Join thousands of successful students who have advanced their careers through our comprehensive learning platform. Start your journey today!/p> /div> /div> /section> section classpy-16 px-4 bg-white> div classcontainer mx-auto max-w-6xl>h2 classtext-4xl font-bold text-center mb-4>Why Choose CloudSkills.Club?/h2> p classtext-xl text-gray-600 text-center mb-12 max-w-2xl mx-auto>Were committed to your success with industry-leading instructors and proven learning methods./p> div classgrid grid-cols-1 md:grid-cols-3 gap-8> div classgroup flex flex-col items-center text-center p-6 rounded-xl hover:bg-gray-50 transition-all duration-300 hover:shadow-lg> div classrelative w-48 h-48 mb-6> div classabsolute inset-0 bg-gradient-to-br from-blue-500/20 to-purple-500/20 rounded-full transform group-hover:scale-110 transition-transform duration-300>/div> div classabsolute inset-0 flex items-center justify-center> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-graduation-cap w-24 h-24 text-blue-600 transform -rotate-12 group-hover:rotate-0 transition-transform duration-300> path dM21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z>/path> path dM22 10v6>/path> path dM6 12.5V16a6 3 0 0 0 12 0v-3.5>/path> /svg> /div> /div> h3 classtext-xl font-semibold mb-3>Expert Instructors/h3> p classtext-gray-600>Learn from industry leaders with years of real-world experience./p>/div> div classgroup flex flex-col items-center text-center p-6 rounded-xl hover:bg-gray-50 transition-all duration-300 hover:shadow-lg> div classrelative w-48 h-48 mb-6> div classabsolute inset-0 bg-gradient-to-br from-green-500/20 to-teal-500/20 rounded-full transform group-hover:scale-110 transition-transform duration-300>/div> div classabsolute inset-0 flex items-center justify-center> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-clock w-24 h-24 text-green-600> circle cx12 cy12 r10>/circle> polyline points12 6 12 12 16 14>/polyline> /svg> /div> /div> h3 classtext-xl font-semibold mb-3>Learn at Your Pace/h3> p classtext-gray-600>Access course content 24/7 and learn at your own speed./p>/div> div classgroup flex flex-col items-center text-center p-6 rounded-xl hover:bg-gray-50 transition-all duration-300 hover:shadow-lg> div classrelative w-48 h-48 mb-6> div classabsolute inset-0 bg-gradient-to-br from-purple-500/20 to-pink-500/20 rounded-full transform group-hover:scale-110 transition-transform duration-300>/div> div classabsolute inset-0 flex items-center justify-center> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-trophy w-24 h-24 text-purple-600> path dM6 9H4.5a2.5 2.5 0 0 1 0-5H6>/path> path dM18 9h1.5a2.5 2.5 0 0 0 0-5H18>/path> path dM4 22h16>/path> path dM10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22>/path> path dM14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22>/path> path dM18 2H6v7a6 6 0 0 0 12 0V2Z>/path> /svg> /div> /div> h3 classtext-xl font-semibold mb-3>Proven Results/h3> p classtext-gray-600>Over 90% of our students report career advancement within 6 months./p>/div> /div> /div> /section> section classpy-16 px-4 bg-gray-50> div classcontainer mx-auto max-w-6xl> div classtext-center mb-12>h2 classtext-4xl font-bold mb-3>Featured Courses/h2> p classtext-xl text-gray-600>Start your journey with our most popular courses/p>/div> div classgrid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6> div classrounded-lg border bg-card text-card-foreground shadow-sm overflow-hidden hover:shadow-lg transition-shadow duration-300> div classaspect-video relative>img src./index_files/photo-1461749280684-dccba630e2f6 altIntroduction to Software Testing Guide 2025 classobject-cover w-full h-full transition-transform duration-300 hover:scale-105> /div> div classflex flex-col space-y-1.5 p-6>h3 classtext-2xl font-semibold leading-none tracking-tight line-clamp-2 hover:text-primary transition-colors> Introduction to Software Testing Guide 2025/h3>/div> div classp-6 pt-0 space-y-4>p classtext-gray-600 line-clamp-2>Learn the fundamentals of software testing, test plans, test scenarios and test cases./p> div classflex items-center gap-4 text-sm text-gray-500> div classflex items-center gap-1> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-clock w-4 h-4> circle cx12 cy12 r10>/circle> polyline points12 6 12 12 16 14>/polyline> /svg> span>2 h 50 mins/span>/div> div classflex items-center gap-1> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-book-open w-4 h-4> path dM12 7v14>/path> path dM3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z>/path> /svg> span>6 chapters/span>/div> /div> div classpt-2>p classtext-2xl font-bold text-primary>$10.00 span classtext-sm font-normal text-gray-500>USD/span>/p>/div> /div> div classflex items-center p-6 pt-0> button classinline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 &_svg:pointer-events-none &_svg:size-4 &_svg:shrink-0 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2 w-full bg-gradient-to-r from-primary to-blue-600 hover:opacity-90> Coming soon... /button> /div> /div> /div> /div> /section> section classpy-16 px-4 bg-gradient-to-r from-primary to-blue-600 text-white> div classcontainer mx-auto max-w-6xl text-center>h2 classtext-4xl font-bold mb-4>Join Our Learning Community Today/h2> p classtext-xl mb-6 opacity-90>Transform your career with expert-led courses and a supportive community./p> /div> /section> /main> footer classpy-8 px-4 bg-gray-900 text-gray-400> div classcontainer mx-auto max-w-6xl items-center> div classflex items-center justify-center gap-2> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone strokecurrentColor stroke-width2 stroke-linecapround stroke-linejoinround classlucide lucide-twitter w-5 h-5> path dM22 4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2.1 4.4-.6 6-2C3 15.5.5 9.6 3 5c2.2 2.6 5.6 4.1 9 4-.9-4.2 4-6.6 7-3.8 1.1 0 3-1.2 3-1.2z>/path> /svg> a hrefhttps://x.com/waldemarsojka target_blank relnoopener noreferrer classhover:text-white transition-colors>Follow us on Twitter/a>/div> /br> div classflex items-center justify-center gap-2>small classpre-wrap>Copyright © cloudskills.club 2025 Waldemar Sojka Software Services a href/privacy.html>Privacy policy/a> a href/toc.html>Terms of Service/a>/small>/div> /div> /footer> /div> div roleregion aria-labelNotifications (F8) tabindex-1 stylepointer-events: none;> ol tabindex-1 classfixed top-0 z-100 flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-420px>/ol> /div>/div>script typemodule src./index_files/main.tsx>/script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]