Preview de mixed.css
/* MIXED CSS PACK */
/* Template: camisetasmania.com.ar/index.html */
/* Template mtime: 2025-08-18 16:46:11 */
/* external link (no embedded): https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css */
/* external link (no embedded): https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css */
/* external link (no embedded): https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css */
/* external link (no embedded): https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Montserrat:wght@700;800&display=swap */
/* external link (no embedded): https://cdn.jsdelivr.net/npm/[email protected]/animate.min.css */
/* external link (no embedded): https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css */
/* ===== INLINE <style> BLOCK #1 ===== */
:root {
--primary: #6a5acd; /* Violeta principal */
--primary-light: #8a7aff; /* Violeta claro */
--secondary: #1f8ef1; /* Azul acento */
--accent: #ff6b6b; /* Rojo coral */
--dark: #1a1a2e; /* Azul oscuro */
--text: #2d3748; /* Texto principal */
--text-light: #718096; /* Texto secundario */
--bg-light: #f8fafc; /* Fondo claro */
--bg-soft: #f0f4f8; /* Fondo suave */
--radius: 20px; /* Radio de bordes */
--shadow: 0 12px 24px rgba(0,0,0,0.08);
--shadow-lg: 0 20px 40px rgba(0,0,0,0.12);
--transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
html {
scroll-behavior: smooth;
overflow-x: hidden;
}
body {
font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
color: var(--text);
background: #fff;
line-height: 1.6;
overflow-x: hidden;
}
h1, h2, h3, h4, h5, h6 {
font-family: "Montserrat", sans-serif;
font-weight: 700;
line-height: 1.2;
}
/* Navbar moderna */
.navbar {
padding: 1rem 0;
background: rgba(255, 255, 255, 0.98) !important;
backdrop-filter: blur(10px);
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.05);
transition: var(--transition);
}
.navbar.scrolled {
padding: 0.5rem 0;
box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}
.navbar-brand {
font-weight: 800;
font-size: 1.5rem;
color: var(--primary) !important;
display: flex;
align-items: center;
gap: 0.5rem;
}
.navbar-brand i {
color: var(--secondary);
}
.nav-link {
font-weight: 500;
color: var(--text) !important;
padding: 0.5rem 1rem !important;
position: relative;
transition: var(--transition);
}
.nav-link:hover {
color: var(--primary) !important;
}
.nav-link::after {
content: '';
position: absolute;
bottom: 0;
left: 1rem;
width: 0;
height: 2px;
background: var(--primary);
transition: var(--transition);
}
.nav-link:hover::after {
width: calc(100% - 2rem);
}
.btn-whatsapp {
background: linear-gradient(135deg, #25D366, #128C7E);
color: white !important;
font-weight: 600;
border-radius: 50px;
padding: 0.5rem 1.5rem;
transition: var(--transition);
box-shadow: 0 4px 15px rgba(37, 211, 102, 0.3);
}
.btn-whatsapp:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(37, 211, 102, 0.4);
}
/* Hero section con gradiente moderno */
.hero {
background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(246,248,255,1) 100%);
padding: 120px 0 80px;
position: relative;
overflow: hidden;
}
.hero::before {
content: '';
position: absolute;
top: -50%;
right: -20%;
width: 80%;
height: 200%;
background: radial-gradient(circle, rgba(106,90,205,0.08) 0%, rgba(255,255,255,0) 70%);
z-index: 0;
}
.hero::after {
content: '';
position: absolute;
bottom: -50%;
left: -20%;
width: 80%;
height: 200%;
background: radial-gradient(circle, rgba(31,142,241,0.08) 0%, rgba(255,255,255,0) 70%);
z-index: 0;
}
.hero-content {
position: relative;
z-index: 1;
}
.hero h1 {
font-size: 3.5rem;
font-weight: 800;
margin-bottom: 1.5rem;
line-height: 1.1;
background: linear-gradient(90deg, var(--primary), var(--secondary));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-fill-color: transparent;
}
.hero .lead {
font-size: 1.25rem;
color: var(--text-light);
max-width: 600px;
}
.hero-badge {
background: rgba(106, 90, 205, 0.1);
color: var(--primary);
padding: 0.5rem 1rem;
border-radius: 50px;
font-weight: 600;
display: inline-block;
margin-bottom: 1.5rem;
backdrop-filter: blur(5px);
border: 1px solid rgba(106, 90, 205, 0.2);
}
.hero-cta .btn {
border-radius: 50px;
padding: 0.75rem 1.75rem;
font-weight: 600;
transition: var(--transition);
}
.hero-cta .btn-lg {
padding: 1rem 2rem;
}
.btn-primary {
background: linear-gradient(135deg, var(--primary), var(--primary-light));
border: none;
box-shadow: 0 4px 15px rgba(106, 90, 205, 0.3);
}
.btn-primary:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(106, 90, 205, 0.4);
}
.btn-outline-primary {
border: 2px solid var(--primary);
color: var(--primary);
background: transparent;
}
.btn-outline-primary:hover {
background: var(--primary);
color: white;
}
.hero-mockup {
border-radius: var(--radius);
box-shadow: var(--shadow-lg);
background: white;
overflow: hidden;
transform: perspective(1000px) rotateY(-10deg);
transition: var(--transition);
border: 1px solid rgba(255, 255, 255, 0.2);
position: relative;
z-index: 1;
}
.hero-mockup:hover {
transform: perspective(1000px) rotateY(-5deg);
box-shadow: var(--shadow-lg);
}
.hero-mockup::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(106,90,205,0.1), rgba(31,142,241,0.1));
z-index: -1;
border-radius: var(--radius);
}
/* Secciones */
.section {
padding: 6rem 0;
position: relative;
}
.section-title {
font-size: 2.5rem;
font-weight: 800;
margin-bottom: 1rem;
position: relative;
display: inline-block;
}
.section-title::after {
content: '';
position: absolute;
bottom: -10px;
left: 0;
width: 60px;
height: 4px;
background: linear-gradient(90deg, var(--primary), var(--secondary));
border-radius: 2px;
}
.section-subtitle {
font-size: 1.1rem;
color: var(--text-light);
margin-bottom: 3rem;
max-width: 700px;
}
.bg-light {
background-color: var(--bg-light) !important;
}
/* Tarjetas modernas */
.card-soft {
background: white;
border: none;
border-radius: var(--radius);
box-shadow: var(--shadow);
transition: var(--transition);
overflow: hidden;
position: relative;
z-index: 1;
}
.card-soft:hover {
transform: translateY(-10px);
box-shadow: var(--shadow-lg);
}
.card-soft::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, rgba(106,90,205,0.03), rgba(31,142,241,0.03));
z-index: -1;
}
.icon-box {
width: 60px;
height: 60px;
display: grid;
place-items: center;
border-radius: 16px;
background: linear-gradient(135deg, rgba(106,90,205,0.1), rgba(31,142,241,0.1));
color: var(--primary);
font-size: 1.5rem;
margin-bottom: 1.5rem;
transition: var(--transition);
}
.feature-card:hover .icon-box {
transform: rotate(10deg) scale(1.1);
background: linear-gradient(135deg, var(--primary), var(--primary-light));
color: white;
}
/* Productos grid */
.product-card {
border-radius: var(--radius);
padding: 1.5rem;
background: white;
border: 1px solid rgba(0,0,0,0.05);
transition: var(--transition);
display: flex;
flex-direction: column;
height: 100%;
}
.product-card:hover {
transform: translateY(-5px);
box-shadow: var(--shadow);
border-color: transparent;
}
.product-card h6 {
font-weight: 700;
margin-bottom: 0.5rem;
color: var(--dark);
}
.product-card .product-detail {
font-size: 0.85rem;
color: var(--text-light);
margin-bottom: 0;
}
/* Por qué elegirnos */
.feature-card {
height: 100%;
padding: 2rem;
background: white;
border-radius: var(--radius);
border: 1px solid rgba(0,0,0,0.05);
transition: var(--transition);
}
.feature-card:hover {
border-color: transparent;
box-shadow: var(--shadow);
}
.feature-card h5 {
margin-bottom: 1rem;
display: flex;
align-items: center;
gap: 0.75rem;
}
.feature-card h5 i {
font-size: 1.25rem;
}
/* Ticker de trabajos */
.ticker-section {
background: linear-gradient(135deg, var(--bg-light), white);
position: relative;
overflow: hidden;
}
.ticker-section::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100" fill="none" opacity="0.03"><path d="M0 0H100V100H0V0Z" fill="%236a5acd"/></svg>');
background-size: 100px 100px;
opacity: 0.05;
z-index: 0;
}
.ticker-wrap {
position: relative;
overflow: hidden;
padding: 1rem 0;
background: white;
border-radius: var(--radius);
box-shadow: var(--shadow);
}
.ticker-track {
display: flex;
align-items: center;
gap: 1.5rem;
will-change: transform;
}
.ticker-item {
flex: 0 0 auto;
width: 500px;
height: 500px;
border-radius: var(--radius);
overflow: hidden;
background: white;
box-shadow: var(--shadow);
transition: var(--transition);
position: relative;
}
.ticker-item:hover {
transform: scale(1.02);
}
.ticker-item img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.ticker-controls {
position: absolute;
inset: 0;
pointer-events: none;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 1rem;
}
.ticker-btn {
pointer-events: auto;
width: 50px;
height: 50px;
display: grid;
place-items: center;
border-radius: 50%;
border: none;
background: white;
box-shadow: var(--shadow);
transition: var(--transition);
color: var(--primary);
}
.ticker-btn:hover {
background: var(--primary);
color: white;
transform: scale(1.1);
}
.ticker-btn:active {
transform: scale(0.95);
}
/* Formulario de contacto */
.contact-form {
position: relative;
z-index: 0;
background: white;
border-radius: var(--radius);
box-shadow: var(--shadow);
overflow: hidden;
position: relative;
}
.contact-form::before {
pointer-events: none;
z-index: -1;
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, rgba(106,90,205,0.03), rgba(31,142,241,0.03));
z-index: 0;
}
.form-control, .form-select {
border: 1px solid rgba(0,0,0,0.1);
padding: 0.75rem 1rem;
border-radius: 12px;
transition: var(--transition);
}
.form-control:focus, .form-select:focus {
border-color: var(--primary);
box-shadow: 0 0 0 0.25rem rgba(106, 90, 205, 0.15);
}
.contact-info-card {
background: linear-gradient(135deg, var(--primary), var(--primary-light));
color: white;
border-radius: var(--radius);
padding: 2rem;
height: 100%;
box-shadow: var(--shadow);
}
.contact-info-card h5 {
color: white;
margin-bottom: 1.5rem;
position: relative;
padding-bottom: 1rem;
}
.contact-info-card h5::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 50px;
height: 3px;
background: white;
border-radius: 3px;
}
.contact-info-card p, .contact-info-card a {
color: rgba(255,255,255,0.9);
margin-bottom: 1rem;
display: flex;
align-items: center;
gap: 0.75rem;
transition: var(--transition);
}
.contact-info-card a:hover {
color: white;
text-decoration: none;
transform: translateX(5px);
}
/* FAQs */
.accordion-item {
border: none;
border-radius: 12px !important;
overflow: hidden;
margin-bottom: 1rem;
box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}
.accordion-button {
font-weight: 600;
padding: 1.25rem;
border-radius: 12px !important;
background: white;
color: var(--text);
}
.accordion-button:not(.collapsed) {
background: white;
color: var(--primary);
box-shadow: none;
}
.accordion-button:focus {
box-shadow: none;
border-color: transparent;
}
.accordion-button::after {
background-size: 1.2rem;
}
.accordion-body {
padding: 0 1.25rem 1.25rem;
}
/* Footer */
footer {
background: var(--dark);
color: rgba(255,255,255,0.7);
padding: 4rem 0 2rem;
position: relative;
}
footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100" fill="none" opacity="0.03"><path d="M0 0H100V100H0V0Z" fill="white"/></svg>');
background-size: 100px 100px;
opacity: 0.05;
z-index: 0;
}
.footer-content {
position: relative;
z-index: 1;
}
.footer-brand {
font-size: 1.75rem;
font-weight: 800;
color: white !important;
margin-bottom: 1.5rem;
display: inline-block;
}
.footer-links {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
.footer-links a {
color: rgba(255,255,255,0.7);
text-decoration: none;
transition: var(--transition);
display: inline-block;
}
.footer-links a:hover {
color: white;
transform: translateX(5px);
}
.footer-bottom {
border-top: 1px solid rgba(255,255,255,0.1);
padding-top: 2rem;
margin-top: 3rem;
}
/* Animaciones */
.animate-float {
animation: float 6s ease-in-out infinite;
}
@keyframes float {
0% { transform: translateY(0px); }
50% { transform: translateY(-20px); }
100% { transform: translateY(0px); }
}
.animate-pulse-slow {
animation: pulse 8s ease infinite;
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
/* Responsive */
@media (max-width: 1199.98px) {
.ticker-item {
width: 420px;
height: 420px;
}
}
@media (max-width: 991.98px) {
.hero {
padding: 100px 0 60px;
}
.hero h1 {
font-size: 2.8rem;
}
.section {
padding: 4rem 0;
}
}
@media (max-width: 767.98px) {
.hero {
padding: 80px 0 40px;
text-align: center;
}
.hero h1 {
font-size: 2.2rem;
}
.hero-cta {
justify-content: center;
}
.hero-mockup {
margin-top: 2rem;
transform: none !important;
}
.section-title {
font-size: 2rem;
}
.ticker-item {
width: 300px;
height: 300px;
}
.footer-content {
text-align: center;
}
.footer-links {
align-items: center;
}
}
@media (max-width: 575.98px) {
.hero h1 {
font-size: 1.8rem;
}
.hero .lead {
font-size: 1rem;
}
.section-title {
font-size: 1.75rem;
}
}
/* Tienda iframe */
.tienda-section {
padding: 4rem 0;
background: var(--bg-light);
}
.tienda-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 15px;
}
.tienda-header {
text-align: center;
margin-bottom: 2rem;
}
.tienda-header h2 {
font-size: 2.2rem;
color: var(--dark);
margin-bottom: 1rem;
}
.tienda-btn {
display: inline-block;
padding: 12px 30px;
background: linear-gradient(135deg, var(--primary), var(--primary-light));
color: white;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
box-shadow: 0 4px 15px rgba(106, 90, 205, 0.3);
transition: var(--transition);
}
.tienda-btn:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(106, 90, 205, 0.4);
color: white;
}
.iframe-container {
width: 100%;
border: 1px solid rgba(0,0,0,0.1);
border-radius: var(--radius);
overflow: hidden;
box-shadow: var(--shadow);
}
#iframe-container { /* agregado para JS */
height: auto;
}
#tienda-iframe {
width: 1px;
min-width: 100%;
border: none;
display: block;
}
/* ===== INLINE <style> BLOCK #2 ===== */
:root{
--hero-bg: #0f1020;
--hero-grad-1: rgba(15,16,32,0.85);
--hero-grad-2: rgba(32,20,60,0.85);
}
.hero{
position: relative;
padding: clamp(60px, 8vw, 120px) 0;
background: radial-gradient(1200px 600px at 10% 10%, #2a2450 0%, #181530 40%, #0f1020 100%);
color: #fff;
overflow: hidden;
isolation: isolate; /* crea nuevo stacking-context */
}
/* Overlay que NO tapa botones ni textos */
.hero::before{
content:"";
position:absolute; inset:0;
background: linear-gradient(135deg, var(--hero-grad-1), var(--hero-grad-2));
z-index: 0; /* debajo del contenido */
pointer-events: none;
}
.hero .container{ position: relative; z-index: 2; }
.hero-mockup{ position: relative; z-index: 1; }
.hero-badge{
display:inline-flex; align-items:center; gap:.5rem;
background: rgba(255,255,255,.08);
border: 1px solid rgba(255,255,255,.15);
padding:.5rem .75rem; border-radius: 999px;
font-weight:600; font-size:.95rem;
backdrop-filter: blur(4px);
}
.hero h1{
margin-top:1rem; margin-bottom:.75rem;
font-weight:800; line-height:1.1;
letter-spacing:.2px;
}
.hero p.lead{
color:#e9e9ff;
max-width: 48ch;
}
.hero-cta .btn{
padding:.85rem 1.25rem;
border-width:2px;
}
/* Animación suave de la maqueta/logo */
@keyframes floatY{ 0%{transform: translateY(0)} 50%{transform: translateY(-10px)} 100%{transform: translateY(0)} }
.animate-float{ animation: floatY 6s ease-in-out infinite; }
/* Responsive tweaks */
@media (max-width: 991.98px){
.hero{ padding: 70px 0; text-align:center; }
.hero p.lead{ margin-inline:auto; }
.hero-cta .d-flex{ justify-content:center; }
.hero-mockup{ margin-top:30px; }
}
/* ===== INLINE <style> BLOCK #3 ===== */
/* Efecto de gradiente personalizado */
.bg-gradient-primary {
background: linear-gradient(135deg, #3a7bd5 0%, #00d2ff 100%) !important;
}
.bg-gradient-secondary {
background: linear-gradient(135deg, #4776E6 0%, #8E54E9 100%) !important;
}
.bg-gradient-dark {
background: linear-gradient(135deg, #485563 0%, #29323c 100%) !important;
}
.text-gradient-primary {
background: -webkit-linear-gradient(45deg, #3a7bd5, #00d2ff);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
/* Tipografía y espaciado premium */
.letter-spacing-2 {
letter-spacing: 2px;
}
.tracking-wide {
letter-spacing: 0.05em;
}
/* Cards de productos */
.card-product {
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-product:hover {
transform: translateY(-8px);
box-shadow: 0 20px 40px rgba(0,0,0,0.12) !important;
}
.card-header-product {
border-bottom: none !important;
}
/* Items de producto */
.product-item a {
transition: all 0.25s ease;
}
.product-item:hover a {
background-color: #f8f9fa;
}
.hover-lift:hover {
transform: translateY(-2px);
}
/* Badges destacados */
.badge.bg-primary-soft {
background-color: rgba(58, 123, 213, 0.1) !important;
}
/* Efecto de botón */
.btn.lift {
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.btn.lift:hover {
transform: translateY(-3px);
box-shadow: 0 8px 20px rgba(58, 123, 213, 0.3) !important;
}
/* ===== INLINE <style> BLOCK #4 ===== */
/* Estilos generales */
:root {
--whatsapp-green: #25D366;
--whatsapp-dark: #075E54;
--whatsapp-light: #DCF8C6;
--whatsapp-blue: #34B7F1;
--text-dark: #4A4A4A;
--text-light: #757575;
--bg-white: #FFFFFF;
--bg-gray: #F0F0F0;
}
/* Contenedor principal */
.whatsapp-chat-container {
position: fixed;
bottom: 30px;
right: 30px;
z-index: 9999;
font-family: 'Segoe UI', Helvetica, Arial, sans-serif;
}
/* Estado cerrado (botón flotante) */
.whatsapp-closed {
position: relative;
transition: all 0.3s ease;
}
.chat-button {
display: flex;
align-items: center;
justify-content: center;
width: 70px;
height: 70px;
border-radius: 50%;
background: var(--whatsapp-green);
box-shadow: 0 5px 15px rgba(37, 211, 102, 0.4);
color: white;
font-size: 36px;
position: relative;
cursor: pointer;
transition: all 0.3s ease;
animation: float 3s ease-in-out infinite;
}
.chat-button:hover {
transform: scale(1.1);
box-shadow: 0 8px 25px rgba(37, 211, 102, 0.6);
}
.notification-badge {
position: absolute;
top: -5px;
right: -5px;
background: #FF3B30;
color: white;
border-radius: 50%;
width: 25px;
height: 25px;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
font-weight: bold;
animation: pulse 1.5s infinite;
}
.chat-pulse {
position: absolute;
width: 100%;
height: 100%;
border-radius: 50%;
background: rgba(37, 211, 102, 0.4);
animation: pulse 2s infinite;
z-index: -1;
}
/* Tooltip del chat cerrado */
.chat-tooltip {
position: absolute;
right: 90px;
top: 50%;
transform: translateY(-50%);
background: var(--bg-white);
color: var(--text-dark);
width: 250px;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
overflow: hidden;
}
.chat-header {
display: flex;
align-items: center;
padding: 12px;
background: var(--whatsapp-dark);
color: white;
position: relative;
}
.chat-avatar {
width: 40px;
height: 40px;
border-radius: 50%;
margin-right: 10px;
object-fit: cover;
}
.chat-info {
flex: 1;
}
.chat-info strong {
display: block;
font-size: 14px;
}
.chat-info small {
font-size: 11px;
opacity: 0.8;
}
.chat-time {
font-size: 11px;
opacity: 0.8;
}
.chat-preview {
padding: 12px;
font-size: 13px;
border-bottom: 1px solid var(--bg-gray);
}
.tooltip-arrow {
position: absolute;
right: -10px;
top: 50%;
transform: translateY(-50%);
width: 0;
height: 0;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
border-left: 10px solid var(--bg-white);
}
.whatsapp-closed:hover .chat-tooltip {
opacity: 1;
visibility: visible;
right: 80px;
}
/* Estado abierto (chat completo) */
.whatsapp-open {
width: 300px;
background: var(--bg-white);
border-radius: 10px;
box-shadow: 0 5px 30px rgba(0, 0, 0, 0.2);
overflow: hidden;
display: none;
flex-direction: column;
height: 450px;
}
.whatsapp-open .chat-header {
background: var(--whatsapp-dark);
}
.close-chat {
background: none;
border: none;
color: white;
cursor: pointer;
font-size: 16px;
opacity: 0.8;
transition: opacity 0.2s;
}
.close-chat:hover {
opacity: 1;
}
.chat-messages {
flex: 1;
padding: 10px;
overflow-y: auto;
background: #e5ddd5;
background-image: url('https://web.whatsapp.com/img/bg-chat-tile-light_a4be512e7195b6b733d9110b408f075d.png');
background-repeat: repeat;
}
.message {
display: flex;
margin-bottom: 10px;
max-width: 80%;
}
.message-content {
padding: 8px 12px;
border-radius: 7.5px;
position: relative;
word-wrap: break-word;
font-size: 14px;
}
.message-time {
font-size: 11px;
color: var(--text-light);
align-self: flex-end;
margin: 0 5px;
white-space: nowrap;
}
.message.received {
align-self: flex-start;
}
.message.received .message-content {
background: var(--bg-white);
color: var(--text-dark);
border-top-left-radius: 0;
}
.message.sent {
align-self: flex-end;
flex-direction: row-reverse;
}
.message.sent .message-content {
background: var(--whatsapp-light);
color: var(--text-dark);
border-top-right-radius: 0;
}
.chat-input {
display: flex;
padding: 10px;
background: var(--bg-gray);
border-top: 1px solid #ddd;
}
.chat-input input {
flex: 1;
border: none;
border-radius: 20px;
padding: 10px 15px;
font-size: 14px;
outline: none;
}
.send-button {
width: 40px;
height: 40px;
border-radius: 50%;
background: var(--whatsapp-green);
color: white;
border: none;
margin-left: 10px;
cursor: pointer;
transition: background 0.2s;
}
.send-button:hover {
background: var(--whatsapp-dark);
}
/* Animaciones */
@keyframes float {
0% { transform: translateY(0px); }
50% { transform: translateY(-5px); }
100% { transform: translateY(0px); }
}
@keyframes pulse {
0% { transform: scale(0.95); opacity: 0.8; }
70% { transform: scale(1.05); opacity: 0.4; }
100% { transform: scale(1.1); opacity: 0; }
}
/* Mostrar/ocultar chat */
.chat-visible .whatsapp-closed {
display: none;
}
.chat-visible .whatsapp-open {
display: flex;
}
/* Responsive */
@media (max-width: 480px) {
.whatsapp-chat-container {
bottom: 20px;
right: 20px;
}
.whatsapp-open {
width: calc(100vw - 40px);
height: 70vh;
right: 20px;
bottom: 20px;
}
.chat-tooltip {
display: none;
}
}