mirror of
				https://github.com/langgenius/dify.git
				synced 2025-10-31 19:03:09 +00:00 
			
		
		
		
	
		
			
	
	
		
			266 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
		
		
			
		
	
	
			266 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
|   | .main { | ||
|  |   display: flex; | ||
|  |   flex-direction: column; | ||
|  |   justify-content: space-between; | ||
|  |   align-items: center; | ||
|  |   padding: 6rem; | ||
|  |   min-height: 100vh; | ||
|  | } | ||
|  | 
 | ||
|  | .description { | ||
|  |   display: inherit; | ||
|  |   justify-content: inherit; | ||
|  |   align-items: inherit; | ||
|  |   font-size: 0.85rem; | ||
|  |   max-width: var(--max-width); | ||
|  |   width: 100%; | ||
|  |   z-index: 2; | ||
|  |   font-family: var(--font-mono); | ||
|  | } | ||
|  | 
 | ||
|  | .description a { | ||
|  |   display: flex; | ||
|  |   align-items: center; | ||
|  |   justify-content: center; | ||
|  |   gap: 0.5rem; | ||
|  | } | ||
|  | 
 | ||
|  | .description p { | ||
|  |   position: relative; | ||
|  |   margin: 0; | ||
|  |   padding: 1rem; | ||
|  |   background-color: rgba(var(--callout-rgb), 0.5); | ||
|  |   border: 1px solid rgba(var(--callout-border-rgb), 0.3); | ||
|  |   border-radius: var(--border-radius); | ||
|  | } | ||
|  | 
 | ||
|  | .code { | ||
|  |   font-weight: 700; | ||
|  |   font-family: var(--font-mono); | ||
|  | } | ||
|  | 
 | ||
|  | .grid { | ||
|  |   display: grid; | ||
|  |   grid-template-columns: repeat(3, minmax(33%, auto)); | ||
|  |   width: var(--max-width); | ||
|  |   max-width: 100%; | ||
|  | } | ||
|  | 
 | ||
|  | .card { | ||
|  |   padding: 1rem 1.2rem; | ||
|  |   border-radius: var(--border-radius); | ||
|  |   background: rgba(var(--card-rgb), 0); | ||
|  |   border: 1px solid rgba(var(--card-border-rgb), 0); | ||
|  |   transition: background 200ms, border 200ms; | ||
|  | } | ||
|  | 
 | ||
|  | .card span { | ||
|  |   display: inline-block; | ||
|  |   transition: transform 200ms; | ||
|  | } | ||
|  | 
 | ||
|  | .card h2 { | ||
|  |   font-weight: 600; | ||
|  |   margin-bottom: 0.7rem; | ||
|  | } | ||
|  | 
 | ||
|  | .card p { | ||
|  |   margin: 0; | ||
|  |   opacity: 0.6; | ||
|  |   font-size: 0.9rem; | ||
|  |   line-height: 1.5; | ||
|  |   max-width: 34ch; | ||
|  | } | ||
|  | 
 | ||
|  | .center { | ||
|  |   display: flex; | ||
|  |   justify-content: center; | ||
|  |   align-items: center; | ||
|  |   position: relative; | ||
|  |   padding: 4rem 0; | ||
|  | } | ||
|  | 
 | ||
|  | .center::before { | ||
|  |   background: var(--secondary-glow); | ||
|  |   border-radius: 50%; | ||
|  |   width: 480px; | ||
|  |   height: 360px; | ||
|  |   margin-left: -400px; | ||
|  | } | ||
|  | 
 | ||
|  | .center::after { | ||
|  |   background: var(--primary-glow); | ||
|  |   width: 240px; | ||
|  |   height: 180px; | ||
|  |   z-index: -1; | ||
|  | } | ||
|  | 
 | ||
|  | .center::before, | ||
|  | .center::after { | ||
|  |   content: ''; | ||
|  |   left: 50%; | ||
|  |   position: absolute; | ||
|  |   filter: blur(45px); | ||
|  |   transform: translateZ(0); | ||
|  | } | ||
|  | 
 | ||
|  | .logo, | ||
|  | .thirteen { | ||
|  |   position: relative; | ||
|  | } | ||
|  | 
 | ||
|  | .thirteen { | ||
|  |   display: flex; | ||
|  |   justify-content: center; | ||
|  |   align-items: center; | ||
|  |   width: 75px; | ||
|  |   height: 75px; | ||
|  |   padding: 25px 10px; | ||
|  |   margin-left: 16px; | ||
|  |   transform: translateZ(0); | ||
|  |   border-radius: var(--border-radius); | ||
|  |   overflow: hidden; | ||
|  |   box-shadow: 0px 2px 8px -1px #0000001a; | ||
|  | } | ||
|  | 
 | ||
|  | .thirteen::before, | ||
|  | .thirteen::after { | ||
|  |   content: ''; | ||
|  |   position: absolute; | ||
|  |   z-index: -1; | ||
|  | } | ||
|  | 
 | ||
|  | /* Conic Gradient Animation */ | ||
|  | .thirteen::before { | ||
|  |   animation: 6s rotate linear infinite; | ||
|  |   width: 200%; | ||
|  |   height: 200%; | ||
|  |   background: var(--tile-border); | ||
|  | } | ||
|  | 
 | ||
|  | /* Inner Square */ | ||
|  | .thirteen::after { | ||
|  |   inset: 0; | ||
|  |   padding: 1px; | ||
|  |   border-radius: var(--border-radius); | ||
|  |   background: linear-gradient(to bottom right, | ||
|  |       rgba(var(--tile-start-rgb), 1), | ||
|  |       rgba(var(--tile-end-rgb), 1)); | ||
|  |   background-clip: content-box; | ||
|  | } | ||
|  | 
 | ||
|  | /* Enable hover only on non-touch devices */ | ||
|  | @media (hover: hover) and (pointer: fine) { | ||
|  |   .card:hover { | ||
|  |     background: rgba(var(--card-rgb), 0.1); | ||
|  |     border: 1px solid rgba(var(--card-border-rgb), 0.15); | ||
|  |   } | ||
|  | 
 | ||
|  |   .card:hover span { | ||
|  |     transform: translateX(4px); | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | @media (prefers-reduced-motion) { | ||
|  |   .thirteen::before { | ||
|  |     animation: none; | ||
|  |   } | ||
|  | 
 | ||
|  |   .card:hover span { | ||
|  |     transform: none; | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | /* Mobile and Tablet */ | ||
|  | @media (max-width: 1023px) { | ||
|  |   .content { | ||
|  |     padding: 4rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .grid { | ||
|  |     grid-template-columns: 1fr; | ||
|  |     margin-bottom: 120px; | ||
|  |     max-width: 320px; | ||
|  |     text-align: center; | ||
|  |   } | ||
|  | 
 | ||
|  |   .card { | ||
|  |     padding: 1rem 2.5rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .card h2 { | ||
|  |     margin-bottom: 0.5rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .center { | ||
|  |     padding: 8rem 0 6rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .center::before { | ||
|  |     transform: none; | ||
|  |     height: 300px; | ||
|  |   } | ||
|  | 
 | ||
|  |   .description { | ||
|  |     font-size: 0.8rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .description a { | ||
|  |     padding: 1rem; | ||
|  |   } | ||
|  | 
 | ||
|  |   .description p, | ||
|  |   .description div { | ||
|  |     display: flex; | ||
|  |     justify-content: center; | ||
|  |     position: fixed; | ||
|  |     width: 100%; | ||
|  |   } | ||
|  | 
 | ||
|  |   .description p { | ||
|  |     align-items: center; | ||
|  |     inset: 0 0 auto; | ||
|  |     padding: 2rem 1rem 1.4rem; | ||
|  |     border-radius: 0; | ||
|  |     border: none; | ||
|  |     border-bottom: 1px solid rgba(var(--callout-border-rgb), 0.25); | ||
|  |     background: linear-gradient(to bottom, | ||
|  |         rgba(var(--background-start-rgb), 1), | ||
|  |         rgba(var(--callout-rgb), 0.5)); | ||
|  |     background-clip: padding-box; | ||
|  |     backdrop-filter: blur(24px); | ||
|  |   } | ||
|  | 
 | ||
|  |   .description div { | ||
|  |     align-items: flex-end; | ||
|  |     pointer-events: none; | ||
|  |     inset: auto 0 0; | ||
|  |     padding: 2rem; | ||
|  |     height: 200px; | ||
|  |     background: linear-gradient(to bottom, | ||
|  |         transparent 0%, | ||
|  |         rgb(var(--background-end-rgb)) 40%); | ||
|  |     z-index: 1; | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | @media (prefers-color-scheme: dark) { | ||
|  |   .vercelLogo { | ||
|  |     filter: invert(1); | ||
|  |   } | ||
|  | 
 | ||
|  |   .logo, | ||
|  |   .thirteen img { | ||
|  |     filter: invert(1) drop-shadow(0 0 0.3rem #ffffff70); | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | @keyframes rotate { | ||
|  |   from { | ||
|  |     transform: rotate(360deg); | ||
|  |   } | ||
|  | 
 | ||
|  |   to { | ||
|  |     transform: rotate(0deg); | ||
|  |   } | ||
|  | } |