linguabot/transcreation-frontend
0
1@tailwind base;2@tailwind components;3@tailwind utilities;4 5@layer base {6 html {7 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;8 }9 10 body {11 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;12 }13}14 15@layer components {16 .btn-primary {17 @apply bg-blue-600 hover:bg-blue-700 text-white font-medium py-2 px-4 rounded-lg transition-colors duration-200;18 }19 20 .btn-secondary {21 @apply bg-gray-200 hover:bg-gray-300 text-gray-800 font-medium py-2 px-4 rounded-lg transition-colors duration-200;22 }23 24 .btn-danger {25 @apply bg-red-600 hover:bg-red-700 text-white font-medium py-2 px-4 rounded-lg transition-colors duration-200;26 }27 28 .input-field {29 @apply w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent;30 }31 32 .card {33 @apply bg-white rounded-lg shadow-md border border-gray-200 p-6;34 }35 36 .highlight-cultural {37 @apply bg-yellow-100 border-b-2 border-yellow-400 px-1 rounded;38 }39 40 .text-gradient {41 @apply bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent;42 }43 44 .font-smiley {45 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;46 font-weight: 400; /* Regular for submissions and briefs */47 }48 49 .font-source-text {50 font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;51 font-weight: 500; /* Medium for source texts */52 }53}54 55@layer utilities {56 .line-clamp-1 {57 overflow: hidden;58 display: -webkit-box;59 -webkit-box-orient: vertical;60 -webkit-line-clamp: 1;61 }62 63 .line-clamp-2 {64 overflow: hidden;65 display: -webkit-box;66 -webkit-box-orient: vertical;67 -webkit-line-clamp: 2;68 }69 70 .line-clamp-3 {71 overflow: hidden;72 display: -webkit-box;73 -webkit-box-orient: vertical;74 -webkit-line-clamp: 3;75 }76}77 78/* Custom scrollbar */79::-webkit-scrollbar {80 width: 8px;81}82 83::-webkit-scrollbar-track {84 background: #f1f1f1;85}86 87::-webkit-scrollbar-thumb {88 background: #c1c1c1;89 border-radius: 4px;90}91 92::-webkit-scrollbar-thumb:hover {93 background: #a8a8a8;94}95 96/* Animation classes */97.fade-in {98 animation: fadeIn 0.3s ease-in-out;99}100 101@keyframes fadeIn {102 from {103 opacity: 0;104 transform: translateY(10px);105 }106 to {107 opacity: 1;108 transform: translateY(0);109 }110}111 112.slide-in {113 animation: slideIn 0.3s ease-out;114}115 116@keyframes slideIn {117 from {118 transform: translateX(-100%);119 }120 to {121 transform: translateX(0);122 }123}124 125/* Cultural element highlighting */126.cultural-element {127 position: relative;128 cursor: help;129}130 131.cultural-element:hover::after {132 content: attr(data-tooltip);133 position: absolute;134 bottom: 100%;135 left: 50%;136 transform: translateX(-50%);137 background: #1f2937;138 color: white;139 padding: 8px 12px;140 border-radius: 6px;141 font-size: 14px;142 white-space: nowrap;143 z-index: 1000;144 box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);145}146 147.cultural-element:hover::before {148 content: '';149 position: absolute;150 bottom: 100%;151 left: 50%;152 transform: translateX(-50%);153 border: 5px solid transparent;154 border-top-color: #1f2937;155 z-index: 1000;156} 