File: /var/www/laracopilot.stgviitor.com/laracopilot-wp/wp-content/themes/laracopilot/style.css
/*
Theme Name: LaraCopilot
Theme URI: https://laracopilot.com/
Author: LaraCopilot Team
Author URI: https://laracopilot.com/
Description: A modern, AI-powered Laravel development theme with dark design and red accents. Built for developers and agencies.
Version: 1.0.0
Text Domain: laracopilot
Tags: custom-background, custom-header, custom-menu, featured-images, flexible-header, full-width-template, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, two-columns
*/
@tailwind base;
@tailwind components;
@tailwind utilities;
/* Your custom CSS can go here too */
/* Import Google Fonts */
/* @import url('https://fonts.googleapis.com/css?family=Instrument+Sans&display=swap'); */
@font-face {
font-family: 'Instrument Sans';
src:
url('assets/fonts/InstrumentSans-Regular.woff2') format('woff2'),
url('assets/fonts/InstrumentSans-Regular.woff') format('woff');
font-weight: 400;
font-style: normal;
font-display: optional;
}
/* Custom CSS for animations and effects */
@keyframes float {
0%,
100% {
transform: translateY(0px) rotate(0deg);
}
33% {
transform: translateY(-20px) rotate(1deg);
}
66% {
transform: translateY(10px) rotate(-1deg);
}
}
@keyframes fade-in-up {
0% {
opacity: 0;
transform: translateY(30px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
@keyframes float-1 {
0%,
100% {
transform: translateY(0px) translateX(0px);
}
25% {
transform: translateY(-15px) translateX(10px);
}
50% {
transform: translateY(-30px) translateX(-5px);
}
75% {
transform: translateY(-10px) translateX(-15px);
}
}
@keyframes float-2 {
0%,
100% {
transform: translateY(0px) translateX(0px) rotate(0deg);
}
33% {
transform: translateY(-20px) translateX(15px) rotate(2deg);
}
66% {
transform: translateY(15px) translateX(-10px) rotate(-1deg);
}
}
@keyframes float-3 {
0%,
100% {
transform: translateY(0px) translateX(0px) scale(1);
}
50% {
transform: translateY(-25px) translateX(20px) scale(1.1);
}
}
@keyframes matrix-rain {
0% {
opacity: 0;
transform: translateY(-20px);
}
10% {
opacity: 1;
}
90% {
opacity: 1;
}
100% {
opacity: 0;
transform: translateY(20px);
}
}
@keyframes pulse-slow {
0%,
100% {
opacity: 0.05;
}
50% {
opacity: 0.1;
}
}
@keyframes bounce-slow {
0%,
100% {
transform: translateY(0px);
}
50% {
transform: translateY(-10px);
}
}
.animate-fade-in-up {
animation: fade-in-up 0.8s ease-out forwards;
opacity: 0;
}
.animate-float-1 {
animation: float-1 6s ease-in-out infinite;
}
.animate-float-2 {
animation: float-2 8s ease-in-out infinite;
}
.animate-float-3 {
animation: float-3 7s ease-in-out infinite;
}
.animate-matrix-rain {
animation: matrix-rain linear infinite;
}
.animate-pulse-slow {
animation: pulse-slow 4s ease-in-out infinite;
}
.animate-bounce-slow {
animation: bounce-slow 3s ease-in-out infinite;
}
@keyframes typing {
0% {
width: 0;
}
50% {
width: 100%;
}
100% {
width: 100%;
}
}
@keyframes fade-in-project {
0% {
opacity: 0;
transform: translateX(-20px);
}
100% {
opacity: 1;
transform: translateX(0);
}
}
@keyframes pulse-status {
0%,
100% {
opacity: 0.4;
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(1.2);
}
}
@keyframes status-text {
0%,
100% {
opacity: 0.7;
}
50% {
opacity: 1;
}
}
@keyframes counter-up {
0% {
opacity: 0;
transform: translateY(20px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
@keyframes tag-float {
0%,
100% {
opacity: 0.7;
transform: translateY(0px);
}
50% {
opacity: 1;
transform: translateY(-2px);
}
}
@keyframes link-pulse {
0%,
100% {
opacity: 0.8;
}
50% {
opacity: 1;
}
}
@keyframes pulse-button {
0%,
100% {
transform: scale(1);
}
50% {
transform: scale(1.02);
}
}
.animate-typing {
animation: typing 4s steps(40, end) infinite;
border-right: 2px solid #F53003;
}
.animate-fade-in-project {
animation: fade-in-project 1s ease-out forwards;
opacity: 0;
}
.animate-pulse-status {
animation: pulse-status 2s ease-in-out infinite;
}
.animate-status-text {
animation: status-text 3s ease-in-out infinite;
}
.animate-counter-up {
animation: counter-up 1s ease-out forwards;
opacity: 0;
}
.animate-tag-float {
animation: tag-float 3s ease-in-out infinite;
}
.animate-link-pulse {
animation: link-pulse 2s ease-in-out infinite;
}
.animate-pulse-button {
animation: pulse-button 2s ease-in-out infinite;
}
@keyframes sway {
0%,
100% {
transform: rotate(-2deg);
}
50% {
transform: rotate(2deg);
}
}
.sway {
animation: sway 1.5s ease-in-out infinite;
transform-origin: top center;
}
@keyframes spin {
from {
transform: translate(-50%, -50%) rotate(0);
}
to {
transform: translate(-50%, -50%) rotate(360deg);
}
}
.spin {
animation: spin 3s linear infinite;
}
/* Custom font styles */
.instrument-sans {
font-family: 'Instrument Sans', sans-serif;
font-weight: 700;
font-style: normal;
font-size: 40px;
line-height: 100%;
letter-spacing: 0px;
vertical-align: middle;
}
.instrument-sans-large {
font-family: 'Instrument Sans', sans-serif;
font-weight: 700;
font-style: normal;
font-size: 48px;
line-height: 100%;
letter-spacing: 0px;
vertical-align: middle;
}
.instrument-sans-medium {
font-weight: 700;
font-style: normal;
font-size: 40px;
line-height: 100%;
letter-spacing: 0px;
}
.instrument-sans-small {
font-family: 'Instrument Sans', sans-serif;
font-weight: 700;
font-style: normal;
font-size: 24px;
line-height: 100%;
letter-spacing: 0px;
vertical-align: middle;
}
/* Mobile menu styles */
.mobile-menu {
display: none;
}
.mobile-menu.open {
display: block;
}
/* Dropdown styles */
.dropdown {
position: relative;
display: inline-block;
}
.dropdown-content {
display: none;
position: absolute;
right: 0;
background-color: rgba(0, 0, 0, 0.95);
backdrop-filter: blur(16px);
border: 1px solid rgba(239, 68, 68, 0.3);
border-radius: 8px;
min-width: 200px;
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
z-index: 1000;
}
.dropdown-content.show {
display: block;
}
.dropdown-item {
display: flex;
align-items: center;
padding: 12px 16px;
color: white;
text-decoration: none;
transition: background-color 0.2s;
}
.dropdown-item:hover {
background-color: rgba(239, 68, 68, 0.1);
}
.dropdown-divider {
border-top: 1px solid rgba(239, 68, 68, 0.2);
margin: 4px 0;
}
/* Float particle animations (to match original design) */
@keyframes float-particle-1 {
0%,
100% {
transform: translateY(0px) translateX(0px);
opacity: 0.6;
}
25% {
transform: translateY(-10px) translateX(5px);
opacity: 1;
}
50% {
transform: translateY(-5px) translateX(10px);
opacity: 0.8;
}
75% {
transform: translateY(-15px) translateX(2px);
opacity: 0.9;
}
}
@keyframes float-particle-2 {
0%,
100% {
transform: translateY(0px) translateX(0px) rotate(0deg);
opacity: 0.7;
}
33% {
transform: translateY(8px) translateX(-3px) rotate(120deg);
opacity: 1;
}
66% {
transform: translateY(4px) translateX(-8px) rotate(240deg);
opacity: 0.5;
}
}
@keyframes float-particle-3 {
0%,
100% {
transform: translateY(0px) translateX(0px);
opacity: 0.5;
}
50% {
transform: translateY(12px) translateX(6px);
opacity: 1;
}
}
@keyframes float-particle-4 {
0%,
100% {
transform: translateY(0px) translateX(0px) scale(1);
opacity: 0.8;
}
25% {
transform: translateY(-6px) translateX(-4px) scale(1.2);
opacity: 0.4;
}
75% {
transform: translateY(3px) translateX(-2px) scale(0.8);
opacity: 1;
}
}
.animate-float-particle-1 {
animation: float-particle-1 4s ease-in-out infinite;
}
.animate-float-particle-2 {
animation: float-particle-2 3s ease-in-out infinite;
animation-delay: 0.5s;
}
.animate-float-particle-3 {
animation: float-particle-3 5s ease-in-out infinite;
animation-delay: 1s;
}
.animate-float-particle-4 {
animation: float-particle-4 3.5s ease-in-out infinite;
animation-delay: 1.5s;
}
/* Animated border button (from original design) */
.animated-border {
--border-radius: 1rem;
--border-size: 0.05rem;
--border-bg: conic-gradient(from 0deg, transparent, white, transparent, transparent);
position: relative;
overflow: hidden;
border-radius: var(--border-radius);
display: flex;
}
.animated-border::before {
content: '';
display: block;
background: var(--border-bg);
width: 100%;
padding-bottom: 100%;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
border-radius: 100%;
z-index: -2;
animation: spin 3s linear infinite;
}
.animated-border--reverse::before {
animation-direction: reverse;
}
.animated-border::after {
content: '';
position: absolute;
inset: var(--border-size);
background: black;
z-index: -1;
border-radius: calc(var(--border-radius) - var(--border-size));
}
/* WordPress specific styles */
body {
background-color: #000000;
font-family: 'Instrument Sans', sans-serif;
}
/* Ensure proper spacing for WordPress content */
.wp-content {
line-height: 1.6;
}
.wp-content h1,
.wp-content h2,
.wp-content h3,
.wp-content h4,
.wp-content h5,
.wp-content h6 {
font-family: 'Instrument Sans', sans-serif;
font-weight: 700;
color: #ffffff;
}
.wp-content p {
color: #e5e5e5;
margin-bottom: 1rem;
}
.wp-content a {
color: #F53003;
text-decoration: none;
transition: color 0.3s ease;
}
.wp-content a:hover {
color: #dc2626;
}
/* WordPress post styles */
.post {
background: rgba(0, 0, 0, 0.8);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 8px;
padding: 2rem;
margin-bottom: 2rem;
}
.post-title {
color: #ffffff;
font-size: 2rem;
margin-bottom: 1rem;
}
.post-meta {
color: #9ca3af;
font-size: 0.875rem;
margin-bottom: 1rem;
}
.post-content {
color: #e5e5e5;
line-height: 1.7;
}
.post-content a {
color: #f53003;
text-decoration: underline;
}
post-content a:hover {
color: #ff4d4d;
}
.post-content h2,
.post-content h3,
.post-content h4 {
color: #ffffff;
margin-top: 1.5rem;
margin-bottom: 1rem;
}
.post-content ul,
.post-content ol {
margin-left: 1.5rem;
margin-bottom: 1rem;
}
.post-content ul li,
.post-content ol li {
margin-bottom: 0.5rem;
}
.post-content ul {
list-style-type: disc;
}
.post-content h2 {
font-size: 1.5rem;
}
.post-content h3 {
font-size: 1.25rem;
}
.post-content h4 {
font-size: 1.125rem;
}
/* WordPress navigation styles */
.wp-nav-menu {
list-style: none;
padding: 0;
margin: 0;
}
.wp-nav-menu li {
display: inline-block;
margin-right: 2rem;
}
.wp-nav-menu a {
color: rgba(255, 255, 255, 0.8);
text-decoration: none;
transition: color 0.3s ease;
}
.wp-nav-menu a:hover {
color: #ffffff;
}
/* WordPress widget styles */
.widget {
background: rgba(0, 0, 0, 0.8);
border: 1px solid rgba(245, 48, 3, 0.2);
border-radius: 8px;
padding: 1.5rem;
margin-bottom: 2rem;
}
.widget-title {
color: #ffffff;
font-size: 1.25rem;
margin-bottom: 1rem;
border-bottom: 1px solid rgba(245, 48, 3, 0.3);
padding-bottom: 0.5rem;
}
/* WordPress comment styles */
.comment {
background: rgba(0, 0, 0, 0.6);
border: 1px solid rgba(245, 48, 3, 0.1);
border-radius: 8px;
padding: 1.5rem;
margin-bottom: 1rem;
}
.comment-author {
color: #F53003;
font-weight: 700;
}
.comment-date {
color: #9ca3af;
font-size: 0.875rem;
}
.comment-content {
color: #e5e5e5;
margin-top: 0.5rem;
}
/* WordPress form styles */
.wp-form input,
.wp-form textarea,
.wp-form select {
background: rgba(0, 0, 0, 0.8);
border: 1px solid rgba(245, 48, 3, 0.3);
border-radius: 4px;
color: #ffffff;
padding: 0.75rem;
width: 100%;
margin-bottom: 1rem;
}
.wp-form input:focus,
.wp-form textarea:focus,
.wp-form select:focus {
outline: none;
border-color: #F53003;
box-shadow: 0 0 0 2px rgba(245, 48, 3, 0.2);
}
.wp-form button,
.wp-form input[type="submit"] {
background: #F53003;
color: #ffffff;
border: none;
border-radius: 4px;
padding: 0.75rem 1.5rem;
cursor: pointer;
transition: background-color 0.3s ease;
}
.wp-form button:hover,
.wp-form input[type="submit"]:hover {
background: #dc2626;
}