123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333 |
- @import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");
- @import "./additional-styles/utility-patterns.css";
- @import "./additional-styles/highlights.css";
- @tailwind base;
- @tailwind components;
- @tailwind utilities;
- @plugin "daisyui";
- :root {
- --font-sans: "Plus Jakarta Sans", sans-serif;
- --text-xs: 0.75rem;
- --text-xs--line-height: 1.5;
- --text-sm: 0.875rem;
- --text-sm--line-height: 1.5715;
- --text-base: 1rem;
- --text-base--line-height: 1.5;
- --text-base--letter-spacing: -0.01em;
- --text-lg: 1.125rem;
- --text-lg--line-height: 1.5;
- --text-lg--letter-spacing: -0.01em;
- --text-xl: 1.25rem;
- --text-xl--line-height: 1.5;
- --text-xl--letter-spacing: -0.01em;
- --text-2xl: 1.5rem;
- --text-2xl--line-height: 1.415;
- --text-2xl--letter-spacing: -0.01em;
- --text-3xl: 1.875rem;
- --text-3xl--line-height: 1.333;
- --text-3xl--letter-spacing: -0.01em;
- --text-4xl: 2.25rem;
- --text-4xl--line-height: 1.277;
- --text-4xl--letter-spacing: -0.01em;
- --text-5xl: 3rem;
- --text-5xl--line-height: 1;
- --text-5xl--letter-spacing: -0.01em;
- --text-6xl: 3.5rem;
- --text-6xl--line-height: 1;
- --text-6xl--letter-spacing: -0.01em;
- --text-7xl: 4.5rem;
- --text-7xl--line-height: 1;
- --text-7xl--letter-spacing: -0.01em;
- /* Highlight accent colors */
- --color-primary: #335cff;
- --color-accent: #6683f8;
- --color-accent-pink: #ff7eb6;
- --color-accent-orange: #ffedd5;
- --color-accent-red: #cf0026;
- /* Light theme colors */
- --color-base-100: oklch(98% 0.005 255);
- --color-base-200: oklch(96% 0.005 255);
- --color-base-300: oklch(93% 0.005 255);
- --color-base-content: oklch(18% 0.01 255);
- --color-primary-content: oklch(98% 0.005 255);
- --color-secondary: oklch(90% 0.01 255);
- --color-secondary-content: oklch(18% 0.01 255);
- --color-accent-content: oklch(18% 0.01 255);
- --color-neutral: oklch(95% 0.005 255);
- --color-neutral-content: oklch(18% 0.01 255);
- --color-info: oklch(90% 0.01 255);
- --color-info-content: oklch(18% 0.01 255);
- --color-success: oklch(90% 0.01 255);
- --color-success-content: oklch(18% 0.01 255);
- --color-warning: oklch(90% 0.01 255);
- --color-warning-content: oklch(18% 0.01 255);
- --color-error: oklch(90% 0.01 255);
- --color-error-content: oklch(18% 0.01 255);
- }
- .dark {
- --color-base-100: oklch(25.33% 0.016 252.42);
- --color-base-200: oklch(23.26% 0.014 253.1);
- --color-base-300: oklch(21.15% 0.012 254.09);
- --color-base-content: oklch(97.807% 0.029 256.847);
- --color-primary: oklch(58% 0.233 277.117);
- --color-primary-content: oklch(96% 0.018 272.314);
- --color-secondary: oklch(65% 0.241 354.308);
- --color-secondary-content: oklch(94% 0.028 342.258);
- --color-accent: oklch(77% 0.152 181.912);
- --color-accent-content: oklch(38% 0.063 188.416);
- --color-neutral: oklch(14% 0.005 285.823);
- --color-neutral-content: oklch(92% 0.004 286.32);
- --color-info: oklch(74% 0.16 232.661);
- --color-info-content: oklch(29% 0.066 243.157);
- --color-success: oklch(76% 0.177 163.223);
- --color-success-content: oklch(37% 0.077 168.94);
- --color-warning: oklch(82% 0.189 84.429);
- --color-warning-content: oklch(41% 0.112 45.904);
- --color-error: oklch(71% 0.194 13.428);
- --color-error-content: oklch(27% 0.105 12.094);
- }
- @layer components {
- /* Muscle illustration styles */
- .muscle-enabled {
- @apply fill-blue-300 stroke-blue-500 cursor-pointer;
- }
- .muscle-enabled:hover {
- @apply fill-blue-400 stroke-blue-600;
- }
- .muscle-active {
- @apply fill-emerald-400 stroke-emerald-600;
- stroke-width: 1 !important;
- }
- .muscle-active:hover {
- @apply fill-emerald-500 stroke-emerald-700;
- }
- .muscle-hover {
- @apply fill-slate-300 stroke-slate-600;
- }
- .muscle-loading {
- @apply opacity-50 animate-pulse;
- }
- }
- .skeleton {
- @apply animate-pulse bg-gray-200 dark:bg-gray-700;
- }
- .dark code {
- @apply text-black;
- }
- @layer components {
- .sidebar .nav-link {
- @apply mx-[2px] mt-1 flex items-center gap-2.5 border border-transparent px-5 py-2.5 text-sm font-medium leading-tight text-gray transition hover:text-black dark:text-gray-500 dark:hover:text-white;
- @apply hover:rounded-lg hover:bg-gray-400;
- }
- .nav-item.sub-menu-active {
- @apply bg-light-theme !text-primary dark:bg-[#818CF8]/[6%] dark:!text-[#6683F8];
- }
- .nav-item.active {
- @apply !text-black dark:!text-white;
- }
- .sidebar .submenu > li > a {
- @apply flex rounded-lg px-2 py-1 font-medium text-gray-700 transition hover:bg-light-theme hover:text-primary dark:text-gray-600 dark:hover:bg-[#818CF8]/[6%] dark:hover:text-[#6683F8];
- }
- .sidebar.closed {
- @apply w-[260px] lg:w-[60px];
- }
- .sidebar.closed h3 {
- @apply rounded-none;
- }
- .sidebar.closed h3 > span {
- @apply lg:hidden;
- }
- .sidebar.closed h3 > svg {
- @apply lg:block;
- }
- .sidebar.closed .submenu {
- @apply lg:hidden;
- }
- .sidebar .nav-link span {
- @apply whitespace-nowrap transition-all;
- }
- .sidebar.closed .nav-link span {
- @apply lg:invisible lg:w-0;
- }
- .sidebar.closed .sidemenu {
- @apply px-2.5 lg:px-0;
- }
- .sidebar.closed .upgrade-menu {
- @apply hidden;
- }
- .sidebar.open {
- @apply ltr:left-0 rtl:right-0;
- }
- #overlay.open {
- @apply block;
- }
- /* Documentation page */
- .header-menu.open {
- @apply right-0;
- }
- .gradient-bar {
- background: linear-gradient(
- 133deg,
- rgba(236, 196, 64, 0.2) 0%,
- rgba(255, 250, 138, 0.2) 33%,
- rgba(221, 172, 23, 0.2) 68%,
- rgba(255, 255, 149, 0.2) 100%
- );
- }
- .gradient-border {
- background: linear-gradient(133deg, #ecc440 0%, #fffa8a 33%, #ddac17 68%, #ffff95 100%);
- }
- /* Horizontal layout */
- .horizontal header .sidebar {
- @apply lg:flex;
- }
- .horizontal #sidebar {
- @apply ltr:lg:-left-full rtl:lg:-right-full;
- }
- .horizontal #main-content {
- @apply lg:mt-[122px] ltr:ml-0 rtl:mr-0;
- }
- .link {
- @apply text-base font-medium transition-colors duration-200;
- }
- .link:hover {
- @apply underline decoration-2 underline-offset-4;
- }
- .link-nav {
- @apply text-base text-base-content/80 hover:text-base-content;
- }
- .link-footer {
- @apply text-base/40 text-base-content/50 hover:text-base-content;
- }
- }
- .ratio-dynamic {
- position: relative;
- left: 50%;
- top: 50%;
- transform: translate(-50%, -50%);
- /* Optionnel: arrondis, bordures, etc. */
- border-radius: 2rem;
- overflow: hidden;
- background: white;
- border: 10px solid black;
- padding: 0.5rem;
- /* Pour l'effet responsive: */
- width: 100vw;
- height: calc(100vw / (9 / 18));
- max-width: 400px; /* ou ce que tu veux */
- max-height: 80vh;
- }
- @media (min-aspect-ratio: 9/18) {
- .ratio-dynamic {
- width: calc(100vh * (9 / 18));
- height: 100vh;
- }
- }
- .horizontal header .sidebar {
- scrollbar-width: thin;
- overflow-x: auto;
- scroll-snap-type: x mandatory;
- }
- /* Boxed layout */
- .box-layout .main-content,
- .box-layout header {
- @apply mx-auto w-full max-w-[1400px];
- }
- .box-layout .sidebar {
- @apply ltr:lg:left-auto rtl:lg:right-auto;
- }
- /* Collapsible layout */
- .collapsible #main-content {
- @apply ltr:lg:ml-[60px] rtl:lg:mr-[60px];
- }
- .bg-hero-light {
- background-image:
- radial-gradient(circle at 82% 60%, rgba(59, 59, 59, 0.06) 0%, rgba(59, 59, 59, 0.06) 69%, transparent 69%, transparent 100%),
- radial-gradient(circle at 36% 0%, rgba(185, 185, 185, 0.06) 0%, rgba(185, 185, 185, 0.06) 59%, transparent 59%, transparent 100%),
- radial-gradient(circle at 58% 82%, rgba(183, 183, 183, 0.06) 0%, rgba(183, 183, 183, 0.06) 17%, transparent 17%, transparent 100%),
- radial-gradient(circle at 71% 32%, rgba(19, 19, 19, 0.06) 0%, rgba(19, 19, 19, 0.06) 40%, transparent 40%, transparent 100%),
- radial-gradient(circle at 77% 5%, rgba(31, 31, 31, 0.06) 0%, rgba(31, 31, 31, 0.06) 52%, transparent 52%, transparent 100%),
- radial-gradient(circle at 96% 80%, rgba(11, 11, 11, 0.06) 0%, rgba(11, 11, 11, 0.06) 73%, transparent 73%, transparent 100%),
- radial-gradient(circle at 91% 59%, rgba(252, 252, 252, 0.06) 0%, rgba(252, 252, 252, 0.06) 44%, transparent 44%, transparent 100%),
- radial-gradient(circle at 52% 82%, rgba(223, 223, 223, 0.06) 0%, rgba(223, 223, 223, 0.06) 87%, transparent 87%, transparent 100%),
- radial-gradient(circle at 84% 89%, rgba(160, 160, 160, 0.06) 0%, rgba(160, 160, 160, 0.06) 57%, transparent 57%, transparent 100%),
- linear-gradient(90deg, rgb(254, 242, 164), rgb(166, 255, 237));
- }
- .bg-hero-dark {
- background-image:
- radial-gradient(circle at 82% 60%, rgba(80, 80, 120, 0.1) 0%, rgba(80, 80, 120, 0.1) 69%, transparent 69%, transparent 100%),
- radial-gradient(circle at 36% 0%, rgba(40, 40, 60, 0.1) 0%, rgba(40, 40, 60, 0.1) 59%, transparent 59%, transparent 100%),
- radial-gradient(circle at 58% 82%, rgba(60, 60, 100, 0.1) 0%, rgba(60, 60, 100, 0.1) 17%, transparent 17%, transparent 100%),
- radial-gradient(circle at 71% 32%, rgba(19, 19, 40, 0.1) 0%, rgba(19, 19, 40, 0.1) 40%, transparent 40%, transparent 100%),
- radial-gradient(circle at 77% 5%, rgba(31, 31, 60, 0.1) 0%, rgba(31, 31, 60, 0.1) 52%, transparent 52%, transparent 100%),
- radial-gradient(circle at 96% 80%, rgba(11, 11, 30, 0.1) 0%, rgba(11, 11, 30, 0.1) 73%, transparent 73%, transparent 100%),
- radial-gradient(circle at 91% 59%, rgba(80, 80, 120, 0.1) 0%, rgba(80, 80, 120, 0.1) 44%, transparent 44%, transparent 100%),
- radial-gradient(circle at 52% 82%, rgba(60, 60, 100, 0.1) 0%, rgba(60, 60, 100, 0.1) 87%, transparent 87%, transparent 100%),
- radial-gradient(circle at 84% 89%, rgba(80, 80, 120, 0.1) 0%, rgba(80, 80, 120, 0.1) 57%, transparent 57%, transparent 100%),
- linear-gradient(90deg, #232324, #18181b);
- }
- @keyframes fade-in-up {
- from {
- opacity: 0;
- transform: translateY(20px);
- }
- to {
- opacity: 1;
- transform: translateY(0);
- }
- }
- @keyframes slide-up {
- from {
- opacity: 0;
- transform: translateY(100%) translateX(-50%);
- }
- to {
- opacity: 1;
- transform: translateY(0) translateX(-50%);
- }
- }
- .animate-fade-in-up {
- animation: fade-in-up 0.6s ease-out;
- }
- .animate-slide-up {
- animation: slide-up 0.4s ease-out;
- }
- /* Smooth focus styles pour l'accessibilité */
- .equipment-card:focus-visible {
- outline: 2px solid #10b981;
- outline-offset: 2px;
- }
|