:root{--primario: #4f46e5;--primario-oscuro: #4338ca;--fondo: #f4f5fb;--tarjeta: #ffffff;--texto: #1e2433;--texto-suave: #6b7280;--borde: #e3e6f0;--ok: #16a34a;--error: #dc2626;--radio: 12px;--sombra: 0 6px 24px rgba(30, 36, 51, .08)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,Arial,sans-serif;background:var(--fondo);color:var(--texto);min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.2rem;color:#fff;background:linear-gradient(135deg,#312e81,var(--primario));box-shadow:0 2px 12px #00000026;position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:.7rem}.brand-logo{width:40px;height:40px;border-radius:10px;background:#fff;color:var(--primario);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem}.brand div{display:flex;flex-direction:column;line-height:1.15}.brand small{opacity:.8;font-size:.72rem}.topbar-acciones{display:flex;align-items:center;gap:.8rem}.usuario{font-weight:600;font-size:.9rem}.contenido{flex:1;padding:1.5rem;max-width:1400px;width:100%;margin:0 auto}.cargando,.vacio{text-align:center;color:var(--texto-suave);padding:3rem 1rem}.lang-toggle{display:flex;background:#ffffff2e;border-radius:999px;padding:3px}.lang-toggle button{border:none;background:transparent;color:#fff;font-weight:700;padding:.3rem .8rem;border-radius:999px;cursor:pointer;font-size:.8rem}.lang-toggle button.active{background:#fff;color:var(--primario)}.btn{border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .08s ease,opacity .15s ease}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primario{background:var(--primario);color:#fff}.btn-primario:hover:not(:disabled){background:var(--primario-oscuro)}.btn-secundario{background:#eef0fa;color:var(--primario)}.btn-secundario:hover:not(:disabled){background:#e0e4f5}.btn-peligro{background:#fee2e2;color:var(--error)}.btn-peligro:hover:not(:disabled){background:#fecaca}.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.btn-sm{padding:.4rem .8rem;font-size:.85rem}.form{display:flex;flex-direction:column;gap:.9rem}.form label,.campo{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600}.form input,.form select,.form textarea,.campo input,.campo textarea,.campo select{padding:.6rem .75rem;border:1px solid var(--borde);border-radius:8px;font-size:.95rem;font-family:inherit;font-weight:400;background:#fff;color:var(--texto)}.form input:focus,.campo input:focus,.campo textarea:focus,.form select:focus{outline:2px solid var(--primario);border-color:var(--primario)}.alerta{padding:.7rem 1rem;border-radius:8px;font-size:.92rem;margin:.8rem 0}.alerta-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alerta-ok{background:#dcfce7;color:#166534;border:1px solid #86efac}.auth-wrap{display:flex;justify-content:center;padding:3rem 1rem}.auth-card{background:var(--tarjeta);border-radius:var(--radio);box-shadow:var(--sombra);padding:2rem;width:100%;max-width:440px}.auth-card h1{margin:0 0 .4rem;font-size:1.5rem}.auth-sub{color:var(--texto-suave);margin:0 0 1.4rem;font-size:.95rem}.tabs{display:flex;gap:.5rem;margin-bottom:1.4rem}.tabs button{flex:1;padding:.6rem;border:1px solid var(--borde);background:#f8f9fd;border-radius:8px;font-weight:600;cursor:pointer;color:var(--texto-suave)}.tabs button.active{background:var(--primario);color:#fff;border-color:var(--primario)}.dash-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.4rem;flex-wrap:wrap;gap:.8rem}.dash-head h1{margin:0;font-size:1.6rem}.sites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.1rem}.site-card{background:var(--tarjeta);border-radius:var(--radio);box-shadow:var(--sombra);padding:1.2rem;display:flex;flex-direction:column;gap:.6rem}.site-card h3{margin:0;font-size:1.15rem}.site-meta{color:var(--texto-suave);font-size:.85rem;margin:0}.site-card-plantilla{align-self:flex-start;font-size:.75rem;font-weight:700;color:#fff;padding:.25rem .7rem;border-radius:999px;background:var(--primario)}.site-card-acciones{display:flex;gap:.5rem;margin-top:auto;flex-wrap:wrap}.modal-fondo{position:fixed;top:0;right:0;bottom:0;left:0;background:#1418288c;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:#fff;border-radius:var(--radio);padding:1.8rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal h2{margin-top:0}.modal-acciones{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.5rem}.plantilla-opciones{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.6rem}.plantilla-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;border:2px solid var(--borde);border-radius:10px;padding:.8rem .5rem;background:#fff;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--texto)}.plantilla-card.seleccionada{border-color:var(--primario);box-shadow:0 0 0 3px #4f46e526}.plantilla-card-muestra{width:44px;height:44px;border-radius:10px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:800}.plantilla-negocio .plantilla-card-muestra{background:#2563eb}.plantilla-restaurante .plantilla-card-muestra{background:#ea580c}.plantilla-autodealer .plantilla-card-muestra{background:#111827}.plantilla-portafolio .plantilla-card-muestra{background:#7c3aed}.builder-barra{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:.8rem 1rem;margin-bottom:1rem;position:sticky;top:66px;z-index:40}.builder-nombre{flex:1;min-width:160px;font-size:1.05rem;font-weight:700;border:1px solid transparent;border-radius:8px;padding:.45rem .6rem}.builder-nombre:hover{border-color:var(--borde)}.builder-nombre:focus{outline:2px solid var(--primario);border-color:var(--primario)}.builder-controles{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.builder-idioma{display:flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--texto-suave)}.builder-controles select{padding:.45rem .6rem;border:1px solid var(--borde);border-radius:8px;font-size:.9rem}.builder-cuerpo{display:grid;grid-template-columns:minmax(360px,460px) 1fr;gap:1.2rem;align-items:start}.builder-editor,.builder-preview{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:1.2rem}.builder-editor h2,.builder-preview h2{margin:0 0 1rem;font-size:1.15rem}.acordeon{border:1px solid var(--borde);border-radius:10px;margin-bottom:.7rem;overflow:hidden}.acordeon-cabecera{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:#f8f9fd;border:none;cursor:pointer;font-size:1rem;font-weight:700;color:var(--texto)}.acordeon-cabecera:hover{background:#eef0fa}.acordeon-cuerpo{padding:1rem;display:flex;flex-direction:column;gap:.8rem}.lista-item{border:1px dashed var(--borde);border-radius:8px;padding:.8rem;display:flex;flex-direction:column;gap:.7rem}.lista-item .btn{align-self:flex-start}.ia-panel{border:2px solid #ddd6fe;border-radius:10px;padding:1rem;margin-top:1rem;background:#faf9ff}.ia-panel h2{margin:0 0 .8rem}.ia-form{display:flex;flex-direction:column;gap:.8rem}.ia-traducir{display:flex;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}.ia-nota{font-size:.8rem;color:var(--texto-suave);margin:.8rem 0 0}.preview-marco{border:1px solid var(--borde);border-radius:10px;overflow:hidden;min-height:300px}.tpl{font-family:inherit}.tpl-seccion{padding:2.5rem 2rem}.tpl-seccion h2{text-align:center;margin:0 0 1.6rem;font-size:1.6rem}.tpl-hero{padding:4rem 2rem;text-align:center}.tpl-hero h1{margin:0 0 .8rem;font-size:2.2rem}.tpl-sub{font-size:1.1rem;white-space:pre-line;max-width:640px;margin:0 auto 1.4rem}.tpl-btn{border:none;border-radius:999px;padding:.8rem 2rem;font-size:1rem;font-weight:700;cursor:pointer}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.1rem;max-width:1000px;margin:0 auto}.tpl-card{background:#fff;border-radius:12px;padding:1.3rem;box-shadow:0 4px 16px #0000000f}.tpl-card h3{margin:0 0 .5rem}.tpl-card p{margin:0;color:var(--texto-suave)}.tpl-testimonio p{font-style:italic;color:var(--texto);margin-bottom:.6rem}.tpl-testimonio cite{font-style:normal;font-weight:700;font-size:.9rem}.tpl-footer{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding:1.6rem;font-size:.9rem}.tpl-nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem}.tpl-nav-marca{font-weight:800;font-size:1.1rem}.tpl-thumb{height:90px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.4rem;margin-bottom:.8rem;color:#fff}.tpl-negocio .tpl-nav{background:#1e3a8a;color:#fff}.tpl-negocio .tpl-nav-cta{background:#fff;color:#1e3a8a;padding:.4rem 1rem;border-radius:999px;font-weight:700;font-size:.85rem}.tpl-negocio .tpl-hero{background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff}.tpl-negocio .tpl-hero .tpl-sub{color:#dbeafe}.tpl-negocio .tpl-btn{background:#fff;color:#1e40af}.tpl-negocio .tpl-alt{background:#eff6ff}.tpl-negocio .tpl-card{border-top:4px solid #3b82f6}.tpl-negocio .tpl-thumb{background:linear-gradient(135deg,#93c5fd,#3b82f6)}.tpl-negocio .tpl-footer{background:#1e3a8a;color:#dbeafe}.tpl-restaurante{background:#fffaf3}.tpl-restaurante .tpl-rest-banda{height:10px;background:linear-gradient(90deg,#c2410c,#ea580c,#f59e0b,#ea580c,#c2410c)}.tpl-restaurante .tpl-rest-hero{padding-top:3rem}.tpl-restaurante .tpl-rest-eyebrow{color:#ea580c;letter-spacing:.4rem;margin:0 0 .6rem}.tpl-restaurante .tpl-hero h1{color:#7c2d12;font-family:Georgia,serif}.tpl-restaurante .tpl-btn{background:#c2410c;color:#fff}.tpl-restaurante .tpl-rest-menu{background:#fff7ed}.tpl-restaurante .tpl-rest-menu h2{color:#7c2d12;font-family:Georgia,serif}.tpl-restaurante .tpl-rest-lista{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:1.2rem}.tpl-restaurante .tpl-rest-item-titulo{display:flex;align-items:baseline;gap:.8rem}.tpl-restaurante .tpl-rest-item h3{margin:0;color:#9a3412}.tpl-restaurante .tpl-rest-puntos{flex:1;border-bottom:2px dotted #fdba74}.tpl-restaurante .tpl-rest-item p{margin:.3rem 0 0;color:#78350f}.tpl-restaurante .tpl-rest-thumb{background:linear-gradient(135deg,#fdba74,#ea580c)}.tpl-restaurante .tpl-rest-testimonios{background:#7c2d12;color:#ffedd5}.tpl-restaurante .tpl-rest-testimonios h2{color:#ffedd5}.tpl-restaurante .tpl-rest-cita{max-width:640px;margin:0 auto 1.4rem;text-align:center}.tpl-restaurante .tpl-rest-cita p{font-style:italic;font-size:1.1rem}.tpl-restaurante .tpl-rest-cita cite{font-style:normal;font-weight:700;color:#fdba74}.tpl-restaurante .tpl-rest-footer{background:#431407;color:#fed7aa}.tpl-auto{background:#0b0f1a;color:#e5e7eb}.tpl-auto .tpl-auto-nav{background:#060913;border-bottom:1px solid #1f2937}.tpl-auto .tpl-auto-distintivo{font-size:.7rem;font-weight:800;letter-spacing:.25rem;color:#fbbf24;border:1px solid #fbbf24;padding:.3rem .7rem;border-radius:4px}.tpl-auto .tpl-auto-eyebrow{letter-spacing:.5rem;color:#9ca3af;font-size:.75rem;margin:0 0 .8rem}.tpl-auto .tpl-auto-hero{background:radial-gradient(ellipse at center,#1f2937,#0b0f1a 70%)}.tpl-auto .tpl-auto-hero h1{font-size:2.6rem;letter-spacing:.02em}.tpl-auto .tpl-auto-btn{background:#fbbf24;color:#111827}.tpl-auto .tpl-seccion h2{color:#fbbf24;text-transform:uppercase;letter-spacing:.15rem;font-size:1.2rem}.tpl-auto .tpl-auto-card{background:#141b2e;border:1px solid #243049;box-shadow:none}.tpl-auto .tpl-auto-card h3{color:#fff}.tpl-auto .tpl-auto-card p{color:#9ca3af}.tpl-auto .tpl-auto-num{color:#fbbf24;font-weight:800;font-size:1.4rem}.tpl-auto .tpl-auto-thumb{background:linear-gradient(135deg,#374151,#111827)}.tpl-auto .tpl-auto-footer{background:#060913;color:#9ca3af;border-top:1px solid #1f2937}.tpl-portafolio{background:linear-gradient(180deg,#faf5ff,#f5f3ff)}.tpl-portafolio .tpl-port-hero{padding:3.5rem 2rem}.tpl-portafolio .tpl-port-avatar{width:84px;height:84px;border-radius:50%;margin:0 auto 1rem;background:linear-gradient(135deg,#8b5cf6,#d946ef);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2.2rem;font-weight:800;box-shadow:0 8px 24px #8b5cf659}.tpl-portafolio .tpl-hero h1{background:linear-gradient(90deg,#7c3aed,#d946ef);-webkit-background-clip:text;background-clip:text;color:transparent}.tpl-portafolio .tpl-port-btn{background:linear-gradient(90deg,#7c3aed,#d946ef);color:#fff}.tpl-portafolio .tpl-port-card{border:1px solid #e9d5ff}.tpl-portafolio .tpl-port-thumb{background:linear-gradient(135deg,#c4b5fd,#e879f9)}.tpl-portafolio .tpl-port-tags{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;max-width:900px;margin:0 auto}.tpl-portafolio .tpl-port-tag{background:#fff;border:1px solid #e9d5ff;border-radius:999px;padding:.6rem 1.2rem;text-align:center}.tpl-portafolio .tpl-port-tag strong{color:#7c3aed;display:block}.tpl-portafolio .tpl-port-tag p{margin:.2rem 0 0;font-size:.85rem;color:var(--texto-suave)}.tpl-portafolio .tpl-port-footer{background:#2e1065;color:#e9d5ff}@media(max-width:960px){.builder-cuerpo{grid-template-columns:1fr}.builder-preview{order:2}}@media(max-width:640px){.contenido{padding:1rem}.topbar{padding:.6rem .8rem}.brand small,.usuario{display:none}.dash-head h1{font-size:1.3rem}.tpl-hero{padding:2.5rem 1.2rem}.tpl-hero h1{font-size:1.7rem}.tpl-seccion{padding:1.8rem 1.2rem}.builder-barra{top:58px}}
